home *** CD-ROM | disk | FTP | other *** search
- <<
- /* parser.dlg -- DLG Description of scanner
- *
- * Generated from: GdbValue.g
- *
- * Terence Parr, Will Cohen, and Hank Dietz: 1989-1994
- * Purdue University Electrical Engineering
- * With AHPCRC, University of Minnesota
- * ANTLR Version 1.33
- */
-
- #include <stdio.h>
- #define ANTLR_VERSION 133
-
- #import <Foundation/NSString.h>
-
- #ifndef __Attrib_def__
- #define __Attrib_def__
- typedef id Attrib;
- #endif
-
- #define USER_ZZSYN
- void zzcr_attr(Attrib* attr, int token, char* text);
- #define LL_K 2
- #include "antlr.h"
- #include "tokens.h"
- #include "dlgdef.h"
- LOOKAHEAD
- void zzerraction()
- {
- (*zzerr)("invalid token");
- zzadvance();
- zzskip();
- }
- >>
-
- <<
-
- >>
-
- %%START
-
- @
- <<
- NLA = Eof;
- >>
-
- [\t\ ]+
- <<
- NLA = 9;
- zzskip();
- >>
-
- \n
- <<
- NLA = 10;
- zzline++; zzskip();
- >>
-
- \"
- <<
- NLA = 11;
- {zzmore(); zzmode(STRING_CLASS);}
- >>
-
- \<
- <<
- NLA = 12;
- zzmore(); zzmode(FUNCTION_NAME_CLASS);
- >>
-
- \{
- <<
- NLA = LCURLYBRACE;
- >>
-
- \}
- <<
- NLA = RCURLYBRACE;
- >>
-
- \[
- <<
- NLA = LSQUAREBRACKET;
- >>
-
- \]
- <<
- NLA = RSQUAREBRACKET;
- >>
-
- \(
- <<
- NLA = LPARENTHESIS;
- >>
-
- \)
- <<
- NLA = RPARENTHESIS;
- >>
-
- ::
- <<
- NLA = DOUBLECOLON;
- >>
-
- ;
- <<
- NLA = SEMICOLON;
- >>
-
- =
- <<
- NLA = EQUAL;
- >>
-
- \*
- <<
- NLA = STAR;
- >>
-
- &
- <<
- NLA = AMPERSAND;
- >>
-
- ,
- <<
- NLA = COMMA;
- >>
-
- <
- <<
- NLA = LESSTHAN;
- >>
-
- \>
- <<
- NLA = GREATERTHAN;
- >>
-
- ...
- <<
- NLA = DOTS;
- >>
-
- const
- <<
- NLA = CONST;
- >>
-
- volatile
- <<
- NLA = VOLATILE;
- >>
-
- unsigned
- <<
- NLA = UNSIGNED;
- >>
-
- char
- <<
- NLA = CHAR;
- >>
-
- short
- <<
- NLA = SHORT;
- >>
-
- int
- <<
- NLA = INT;
- >>
-
- long
- <<
- NLA = LONG;
- >>
-
- float
- <<
- NLA = FLOAT;
- >>
-
- double
- <<
- NLA = DOUBLE;
- >>
-
- struct
- <<
- NLA = STRUCT;
- >>
-
- union
- <<
- NLA = UNION;
- >>
-
- enum
- <<
- NLA = ENUM;
- >>
-
- class
- <<
- NLA = CLASS;
- >>
-
- void
- <<
- NLA = VOID;
- >>
-
- No\ arguments\.
- <<
- NLA = NO_ARGUMENTS;
- >>
-
- No\ locals\.
- <<
- NLA = NO_LOCALS;
- >>
-
- No\ symbol\ table\ info\ available\.
- <<
- NLA = NO_SYMBOL_TABLE;
- >>
-
- [a-zA-Z_$]([a-zA-Z0-9_$])*
- <<
- NLA = IDENTIFIER;
- >>
-
- \'~[\']*\'
- <<
- NLA = CHARACTER;
- >>
-
- {[\+\-]}0[0-7]*{[uUlL]}
- <<
- NLA = OCTALINT;
- >>
-
- {[\+\-]}[1-9][0-9]*{[uUlL]}
- <<
- NLA = DECIMALINT;
- >>
-
- {[\+\-]}(0x|0X)[0-9a-fA-F]+{[uUlL]}
- <<
- NLA = HEXADECIMALINT;
- >>
-
- {[\+\-]}([0-9]+.[0-9]* | [0-9]*.[0-9]+) {[eE]{[\-\+]}[0-9]+}
- <<
- NLA = FLOATONE;
- >>
-
- {[\+\-]}[0-9]+ [eE]{[\-\+]}[0-9]+
- <<
- NLA = FLOATTWO;
- >>
-
- {[\+\-]}[nN]a[nN]\((0x|0X)[0-9a-fA-F]+\)
- <<
- NLA = FLOATTHREE;
- >>
-
-
- %%STRING_CLASS
-
- @
- <<
- NLA = Eof;
- >>
-
- \"
- <<
- NLA = STRING;
- zzmode(START); zzreplstr("\"");
- >>
-
- \\\"
- <<
- NLA = 3;
- zzmode(START); zzreplstr("\\\"");
- >>
-
- [\1-\31]
- <<
- NLA = 4;
- zzmore();
- >>
-
- [\128-\254]
- <<
- NLA = 5;
- zzmore();
- >>
-
- ~[\"]+
- <<
- NLA = 6;
- zzmore();
- >>
-
-
- %%FUNCTION_NAME_CLASS
-
- @
- <<
- NLA = Eof;
- >>
-
- \>
- <<
- NLA = FUNCTION_NAME;
- zzmode(START); zzreplstr(">");
- >>
-
- ~[\>]+
- <<
- NLA = 8;
- zzmore();
- >>
-
- %%
-