[brlcad-commits] SF.net SVN: brlcad:[47559] brlcad/trunk/src/other/perplex
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <n_...@us...> - 2011-11-18 21:17:55
|
Revision: 47559 http://brlcad.svn.sourceforge.net/brlcad/?rev=47559&view=rev Author: n_reed Date: 2011-11-18 21:17:48 +0000 (Fri, 18 Nov 2011) Log Message: ----------- use re2c syntax for setting conditions Modified Paths: -------------- brlcad/trunk/src/other/perplex/scanner.re brlcad/trunk/src/other/perplex/template.c Modified: brlcad/trunk/src/other/perplex/scanner.re =================================================================== --- brlcad/trunk/src/other/perplex/scanner.re 2011-11-18 21:10:11 UTC (rev 47558) +++ brlcad/trunk/src/other/perplex/scanner.re 2011-11-18 21:17:48 UTC (rev 47559) @@ -466,8 +466,9 @@ free(scanner); } -#define YYGETCONDITION getCondition(scanner) -#define YYFILL(n) bufferFill(scanner, n) +#define YYGETCONDITION getCondition(scanner) +#define YYSETCONDITION(c) setCondition(scanner, c) +#define YYFILL(n) bufferFill(scanner, n) #define UPDATE_START scanner->tokenStart = scanner->cursor; #define yytext getTokenText(scanner, _perplex_token_string) @@ -515,8 +516,7 @@ scanner->appData->tokenData.string = copyString(yytext); RETURN(TOKEN_DEFINITIONS); } -<DEFINITIONS>SEPARATOR { - setCondition(scanner, RULES); +<DEFINITIONS>SEPARATOR => RULES { RETURN(TOKEN_SEPARATOR); } <DEFINITIONS>ANY { @@ -527,24 +527,21 @@ <RULES>FAUX_SEPARATOR { CONTINUE; } -<RULES>SEPARATOR { - setCondition(scanner, CODE); +<RULES>SEPARATOR => CODE { RETURN(TOKEN_SEPARATOR); } <RULES>[^\000\n\t {]+ { scanner->appData->tokenData.string = copyString(yytext); RETURN(TOKEN_PATTERN); } -<RULES>'{' { - setCondition(scanner, ACTION); +<RULES>'{' => ACTION { RETURN(TOKEN_LBRACE); } <RULES>ANY { CONTINUE; } -<ACTION>'}' { - setCondition(scanner, RULES); +<ACTION>'}' => RULES { RETURN(TOKEN_RBRACE); } <ACTION>[^}\000]+ { Modified: brlcad/trunk/src/other/perplex/template.c =================================================================== --- brlcad/trunk/src/other/perplex/template.c 2011-11-18 21:10:11 UTC (rev 47558) +++ brlcad/trunk/src/other/perplex/template.c 2011-11-18 21:17:48 UTC (rev 47559) @@ -447,8 +447,9 @@ free(scanner); } -#define YYGETCONDITION getCondition(scanner) -#define YYFILL(n) bufferFill(scanner, n) +#define YYGETCONDITION getCondition(scanner) +#define YYSETCONDITION(c) setCondition(scanner, c) +#define YYFILL(n) bufferFill(scanner, n) #define UPDATE_START scanner->tokenStart = scanner->cursor; #define yytext getTokenText(scanner, _perplex_token_string) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |