]> granicus.if.org Git - re2c/commitdiff
Regenerated documentation (changed by previous commit).
authorUlya Trofimovich <skvadrik@gmail.com>
Wed, 20 May 2015 09:45:31 +0000 (10:45 +0100)
committerUlya Trofimovich <skvadrik@gmail.com>
Wed, 20 May 2015 09:45:31 +0000 (10:45 +0100)
re2c/bootstrap/manual.html
re2c/bootstrap/re2c.1

index 9e5767587e08460fbaedb0e4308b28fb67f0f254..06c03be5689b9bb0ad7396250b0c10e530403997 100644 (file)
@@ -1967,10 +1967,6 @@ scanners that work in a &#8220;push&#8221; model, i.e. where data is fed to the
 chunk by chunk. When the scanner runs out of data to consume, it just stores\r
 its state, and return to the caller. When more input data is fed to the scanner,\r
 it resumes operations exactly where it left off.</p></div>\r
-<div class="paragraph"><p>When using the <strong>-f</strong> option <strong>re2c</strong> does not accept stdin because it has to do the\r
-full generation process twice which means it has to read the input twice. That\r
-means <strong>re2c</strong> would fail in case it cannot open the input twice or reading the\r
-input for the first time influences the second read attempt.</p></div>\r
 <div class="paragraph"><p>Changes needed compared to the &#8220;pull&#8221; model:</p></div>\r
 <div class="olist arabic"><ol class="arabic">\r
 <li>\r
@@ -1982,7 +1978,7 @@ User has to supply macros <strong>YYSETSTATE ()</strong> and <strong>YYGETSTATE
 <p>\r
 The <strong>-f</strong> option inhibits declaration of <strong>yych</strong> and\r
 <strong>yyaccept</strong>. So the user has to declare these. Also the user has\r
-to save and restore these. In the example <strong>examples/push.re</strong> these\r
+to save and restore these. In the example <strong>examples/push_model/push.re</strong> these\r
 are declared as fields of the (C\++) class of which the scanner is a\r
 method, so they do not need to be saved/restored explicitly. For C\r
 they could e.g. be made macros that select fields from a structure\r
@@ -2016,7 +2012,7 @@ the scanner code should be wrapped inside a loop.
 </p>\r
 </li>\r
 </ol></div>\r
-<div class="paragraph"><p>Please see <strong>examples/push.re</strong> for push-model scanner. The generated code can be\r
+<div class="paragraph"><p>Please see <strong>examples/push_model/push.re</strong> for push-model scanner. The generated code can be\r
 tweaked using inplace configurations <strong>state:abort</strong> and <strong>state:nextlabel</strong>.</p></div>\r
 </div>\r
 </div>\r
@@ -2028,7 +2024,8 @@ switch. In this case <strong>re2c</strong> generates scanner blocks for each con
 generated blocks has its own precondition. The precondition is given by the\r
 interface define <strong>YYGETCONDITON()</strong> and must be of type <strong>YYCONDTYPE</strong>.</p></div>\r
 <div class="paragraph"><p>There are two special rule types. First, the rules of the condition <strong>*</strong> are\r
-merged to all  conditions. And second the empty condition list allows to\r
+merged to all conditions (note that they have lower priority than other rules\r
+of that condition). And second the empty condition list allows to\r
 provide a code block that does not have a scanner part. Meaning it does not\r
 allow any regular expression. The condition value referring to this special\r
 block is always the one with the enumeration value 0. This way the code of this\r
@@ -2282,14 +2279,14 @@ Ulya Trofimovich <a href="mailto:skvadrik@gmail.com">skvadrik@gmail.com</a>
 <div class="sect1">\r
 <h2 id="_version_information">VERSION INFORMATION</h2>\r
 <div class="sectionbody">\r
-<div class="paragraph"><p>This manpage describes <strong>re2c</strong>, version 0.14.1.dev, package date 08 May 2015.</p></div>\r
+<div class="paragraph"><p>This manpage describes <strong>re2c</strong>, version 0.14.1.dev, package date 20 May 2015.</p></div>\r
 </div>\r
 </div>\r
 </div>\r
 <div id="footnotes"><hr /></div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 2015-05-08 22:17:12 BST\r
+Last updated 2015-05-20 10:44:30 BST\r
 </div>\r
 </div>\r
 </body>\r
index 89e92a5236a7da456203d015aa398cc52a4b43c6..7c235f2a90145eaaa162e055c3c2df5d5f593c65 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: re2c
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\"      Date: 05/08/2015
+.\"      Date: 05/20/2015
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
-.TH "RE2C" "1" "05/08/2015" "\ \&" "\ \&"
+.TH "RE2C" "1" "05/20/2015" "\ \&" "\ \&"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -1104,8 +1104,6 @@ Typically, if there is a preprocessor ahead of the scanner in the stream, or for
 .sp
 The \fB\-f\fR flag is useful for just this situation: it lets users design scanners that work in a \(lqpush\(rq model, i\&.e\&. where data is fed to the scanner chunk by chunk\&. When the scanner runs out of data to consume, it just stores its state, and return to the caller\&. When more input data is fed to the scanner, it resumes operations exactly where it left off\&.
 .sp
-When using the \fB\-f\fR option \fBre2c\fR does not accept stdin because it has to do the full generation process twice which means it has to read the input twice\&. That means \fBre2c\fR would fail in case it cannot open the input twice or reading the input for the first time influences the second read attempt\&.
-.sp
 Changes needed compared to the \(lqpull\(rq model:
 .sp
 .RS 4
@@ -1136,7 +1134,7 @@ option inhibits declaration of
 \fByych\fR
 and
 \fByyaccept\fR\&. So the user has to declare these\&. Also the user has to save and restore these\&. In the example
-\fBexamples/push\&.re\fR
+\fBexamples/push_model/push\&.re\fR
 these are declared as fields of the (C\e++) class of which the scanner is a method, so they do not need to be saved/restored explicitly\&. For C they could e\&.g\&. be made macros that select fields from a structure passed in as parameter\&. Alternatively, they could be declared as local variables, saved with
 \fBYYFILL (n)\fR
 when it decides to return and restored at entry to the function\&. Also, it could be more efficient to save the state from
@@ -1194,12 +1192,12 @@ block earlier by placing a
 comment\&. This is especially useful when the scanner code should be wrapped inside a loop\&.
 .RE
 .sp
-Please see \fBexamples/push\&.re\fR for push\-model scanner\&. The generated code can be tweaked using inplace configurations \fBstate:abort\fR and \fBstate:nextlabel\fR\&.
+Please see \fBexamples/push_model/push\&.re\fR for push\-model scanner\&. The generated code can be tweaked using inplace configurations \fBstate:abort\fR and \fBstate:nextlabel\fR\&.
 .SH "SCANNER WITH CONDITION SUPPORT"
 .sp
 You can preceed regular expressions with a list of condition names when using the \fB\-c\fR switch\&. In this case \fBre2c\fR generates scanner blocks for each conditon\&. Where each of the generated blocks has its own precondition\&. The precondition is given by the interface define \fBYYGETCONDITON()\fR and must be of type \fBYYCONDTYPE\fR\&.
 .sp
-There are two special rule types\&. First, the rules of the condition \fB*\fR are merged to all conditions\&. And second the empty condition list allows to provide a code block that does not have a scanner part\&. Meaning it does not allow any regular expression\&. The condition value referring to this special block is always the one with the enumeration value 0\&. This way the code of this special rule can be used to initialize a scanner\&. It is in no way necessary to have these rules: but sometimes it is helpful to have a dedicated uninitialized condition state\&.
+There are two special rule types\&. First, the rules of the condition \fB*\fR are merged to all conditions (note that they have lower priority than other rules of that condition)\&. And second the empty condition list allows to provide a code block that does not have a scanner part\&. Meaning it does not allow any regular expression\&. The condition value referring to this special block is always the one with the enumeration value 0\&. This way the code of this special rule can be used to initialize a scanner\&. It is in no way necessary to have these rules: but sometimes it is helpful to have a dedicated uninitialized condition state\&.
 .sp
 Non empty rules allow to specify the new condition, which makes them transition rules\&. Besides generating calls for the define \fBYYSETCONDTITION\fR no other special code is generated\&.
 .sp
@@ -1514,4 +1512,4 @@ skvadrik@gmail\&.com
 .RE
 .SH "VERSION INFORMATION"
 .sp
-This manpage describes \fBre2c\fR, version 0\&.14\&.1\&.dev, package date 08 May 2015\&.
+This manpage describes \fBre2c\fR, version 0\&.14\&.1\&.dev, package date 20 May 2015\&.