diff options
author | Adrian Thurston <thurston@complang.org> | 2007-02-06 21:09:33 +0000 |
---|---|---|
committer | Adrian Thurston <thurston@complang.org> | 2007-02-06 21:09:33 +0000 |
commit | 8194b62b5f22df7c5e574b9dbbe5db1f5a669d61 (patch) | |
tree | c2077dfd3c6b0721368af20472231fc2b0f8425f /examples | |
parent | a5d1e087dcaf6d45905c12669bb23710488b3cc8 (diff) | |
download | ragel-8194b62b5f22df7c5e574b9dbbe5db1f5a669d61.tar.gz |
Added missing write init.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/pullscan.rl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/examples/pullscan.rl b/examples/pullscan.rl index 79e3c499..110a72c1 100644 --- a/examples/pullscan.rl +++ b/examples/pullscan.rl @@ -26,11 +26,17 @@ typedef struct _Scanner { } Scanner; +%%{ + machine Scanner; + write data; +}%% + void scan_init( Scanner *s, FILE *file ) { memset (s, '\0', sizeof(Scanner)); s->curline = 1; s->file = file; + %% write init; } #define TK_NO_TOKEN (-1) @@ -39,12 +45,6 @@ void scan_init( Scanner *s, FILE *file ) #define TK_Identifier 130 #define TK_Number 131 - -%%{ - machine Scanner; - write data; -}%% - #define ret_tok( _tok ) token = _tok; s->data = s->tokstart int scan( Scanner *s ) @@ -105,6 +105,8 @@ int scan( Scanner *s ) # Whitespace [ \t\n]; + '"' ( [^\\"] | '\\' any ) * '"'; + # Number digit+ => { ret_tok( TK_Number ); fbreak; }; |