]> granicus.if.org Git - re2c/commitdiff
- Update docu
authorhelly <helly@642ea486-5414-0410-9d7f-a0204ed87703>
Sun, 13 Jan 2008 18:08:23 +0000 (18:08 +0000)
committerhelly <helly@642ea486-5414-0410-9d7f-a0204ed87703>
Sun, 13 Jan 2008 18:08:23 +0000 (18:08 +0000)
re2c/CHANGELOG
re2c/htdocs/index.html
re2c/htdocs/manual.html
re2c/re2c.1.in

index 8a27789c217c2e7de7bfec9a68317305d51c1350..91cfefee319d496943a153aa75ee65d4867639fa 100644 (file)
@@ -1,5 +1,6 @@
 Version 0.13.2 (2007-??-??)
 ---------------------------
+- Add support for ':=' style rules
 
 Version 0.13.1 (2007-08-24)
 ---------------------------
index 2395678a567bb6a7695038ad738c5fc463ae3bcd..2df5a5463cf4e06c350454852943e0237e7d3822 100755 (executable)
@@ -81,6 +81,7 @@ fixes which were incorporated. <a href=
 <hr />
 <h1>Changelog</h1>
 <h2>2007-??-??: 0.13.2</h2>
+<li>Added support for ':=' style rules.</li>
 <ul>
 </ul>
 <h2>2007-08-24: 0.13.1</h2>
index c71f1eb814d7abc318321d93e4e070430e4e9f94..720d2af1e5e62e319f05cb9a0ff03c3039205899 100755 (executable)
@@ -292,9 +292,14 @@ no other special code is generated.
 definitions</i> and <i>configurations</i>.</p>
 <p><i>Rules</i> consist of a regular expression along with a block of C/C++
 code that is to be executed when the associated <i>regular expression</i> is
-matched.</p>
+matched. You can either
+start the code with an opening curly brace or the sequence '<b>:=</b>'. When
+the code with a curly brace then <b>re2c</b> counts the brace depth and stops looking
+for code automatically. Otherwise curly braces are not allowed and <b>re2c</b> stops
+looking for code at the first line that does not begin with whitespace.</p>
 <dl compact="compact">
 <dd><i>regular-expression</i> { <i>C/C++ code</i> }</dd>
+<dd><i>regular-expression</i> := <i>C/C++ code</i></dd>
 </dl>
 <p>
 If <b>-c</b> is active then each regular expression is preceeded by a list of 
@@ -302,7 +307,8 @@ comma separated condition names. Besides normal naming rules there are two
 special cases. A rule may contain the single condition name '*' and no contition 
 name at all. In the latter case the rule cannot have a regular expression. Non 
 empty rules may further more specify the new condition. In that case re2c will
-generated the necessary code to chnage the condition automatically.
+generated the necessary code to chnage the condition automatically. Just as above
+code can be started with a curly brace of the sequence '<b>:=</b>'.
 </p>
 <dl compact="compact">
 <dd>&lt;<i>condition-list</i>&gt; <i>regular-expression</i> =&gt; <i>condition</i> { <i>C/C++ code</i> }</dd>
index 657e6a24643256a6e07f148c5a798a2275b5b53f..9d6eb031d69b7401939845329399eeabecbd1994 100644 (file)
@@ -332,10 +332,16 @@ Each scanner specification consists of a set of \fIrules\fP, \fInamed
 definitions\fP and \fIconfigurations\fP.
 .LP
 \fIRules\fP consist of a \*(rx along with a block of C/C++ code that
-is to be executed when the associated \fI\*(rx\fP is matched.
+is to be executed when the associated \fI\*(rx\fP is matched. You can either
+start the code with an opening curly brace or the sequence '\fB:=\fP'. When
+the code with a curly brace then \*(re counts the brace depth and stops looking
+for code automatically. Otherwise curly braces are not allowed and \*(re stops
+looking for code at the first line that does not begin with whitespace.
 .P
 .RS
 \fI\*(rx\fP \fC{\fP \fIC/C++ code\fP \fC}\fP
+.P
+\fI\*(rx\fP \fC:=\fP \fIC/C++ code\fP
 .RE
 .P
 If \fB-c\fP is active then each \*(rx is preceeded by a list of 
@@ -343,7 +349,8 @@ comma separated condition names. Besides normal naming rules there are two
 special cases. A rule may contain the single condition name '*' and no contition 
 name at all. In the latter case the rule cannot have a \*(rx. Non 
 empty rules may further more specify the new condition. In that case \*(re will
-generated the necessary code to chnage the condition automatically.
+generated the necessary code to chnage the condition automatically. Just as above
+code can be started with a curly brace of the sequence '\fB:=\fP'.
 .P
 .RS
 \fC<\fP\fIcondition-list\fP\fC>\fP \fI\*(rx\fP \fC=>\fP \fP\fIcondition\fP \fC{\fP \fIC/C++ code\fP \fC}\fP