From a6df08f6b00fd1a5e41ffba3755bf81ed14e4088 Mon Sep 17 00:00:00 2001 From: thurston Date: Sun, 10 Jun 2007 18:37:09 +0000 Subject: [PATCH] Documentation updates. git-svn-id: http://svn.complang.org/ragel/trunk@240 052ea7fc-9027-0410-9066-f65837a77df0 --- ChangeLog | 12 ++++++++++++ TODO | 5 +---- doc/ragel-guide.tex | 9 ++------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index d7894aa..8df3b93 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +For Next Release +================ + -The p varialbe is now set up at the beginning of a scanner action, rather + than at the end. This leaves scanner actions free to manipulate p and + removes the need for the special holdTE and execTE (TE for tokend) versions + of hold and exec. It also removes the need to set p = tokend-1 immediately + before any control flow. We loose the ability to determine where in the + input stream a scanner action is executed, however this information is of + little use because it is primarily an artifact of the scanner implementation + (sometimes the last char, other times later on). The gains of of this change + are consistency and simplicity. + Ragel 5.21 - May 9, 2007 ======================== -Fixed an inconsistency in the value of p following an error. In the C diff --git a/TODO b/TODO index fead229..d2f7fcb 100644 --- a/TODO +++ b/TODO @@ -31,10 +31,7 @@ backtrack if necessary. The tokstart/tokend variable should be shortened to ts/te. -Adjust p before executing token actions, eliminating the transfer from tokend -to p following an action. Loose the ability to determine where in the input -stream a scanner action is executed. Gain consistency, simplicity. Eliminate -tokend, replace it with the marker variable and add ftokend/ftoklen. +Eliminate tokend, replace it with the marker variable and add ftokend/ftoklen. ================ END 6.0 Features diff --git a/doc/ragel-guide.tex b/doc/ragel-guide.tex index 3cdd544..2699138 100644 --- a/doc/ragel-guide.tex +++ b/doc/ragel-guide.tex @@ -1908,10 +1908,8 @@ label represents. data in multiple buffer blocks, the \verb|fhold| statement should only be used once in the set of actions executed on a character. Multiple calls may result in backing up over the beginning of the buffer block. The \verb|fhold| -statement does not imply any transfer of control. In actions embedded into -transitions, it is equivalent to the \verb|p--;| statement. In scanner pattern -actions any changes made to \verb|p| are lost. In this context, \verb|fhold| is -equivalent to \verb|tokend--;|. +statement does not imply any transfer of control. It is equivalent to the +\verb|p--;| statement. \item \verb|fexec ;| -- Set the next character to process. This can be used to backtrack to previous input or advance ahead. @@ -1923,9 +1921,6 @@ it. The machine will continue iterating forward until \verb|pe| is arrived at, embedded into transitions, the \verb|fexec| statement is equivalent to setting \verb|p| to one position ahead of the next character to process. If the user also modifies \verb|pe|, it is possible to change the buffer block entirely. -In scanner pattern actions any changes made to \verb|p| are lost. In this -context, \verb|fexec| is equivalent to setting \verb|tokend| to the next -character to process. \item \verb|fgoto