X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Ftokenizer.h;h=632c14970b7d2a076954cfd598fbf846ee67d10f;hb=dda015a93554448a1cd1ae157d183c521e1c0d03;hp=5e9452e2749801798430ece1ec5b6de8a9e38b18;hpb=68828879f2c470d02873bb456161e10dd1476c92;p=swftools.git diff --git a/lib/as3/tokenizer.h b/lib/as3/tokenizer.h index 5e9452e..632c149 100644 --- a/lib/as3/tokenizer.h +++ b/lib/as3/tokenizer.h @@ -32,18 +32,19 @@ DECLARE(token); DECLARE_LIST(token); DECLARE(param); DECLARE_LIST(param); +DECLARE(params); DECLARE(typedcode); DECLARE_LIST(typedcode); -struct _token { - int type; - char*text; - token_list_t*tokens; -}; - struct _param { char*name; classinfo_t*type; + constant_t*value; +}; + +struct _params { + param_list_t*list; + char varargs; }; struct _typedcode { @@ -51,15 +52,36 @@ struct _typedcode { classinfo_t*t; }; +/* small helper structs: */ +typedef struct _codeandnumber { + code_t*cc; + int len; +} codeandnumber_t; +typedef struct _for_start { + char*name; + char each; +} for_start_t; +typedef struct _regexp { + char*pattern; + char*options; +} regexp_t; + extern char start_of_expression; typedef token_t*tokenptr_t; #include "parser.tab.h" -void syntaxerror(const char*format, ...); -void warning(const char*format, ...); +extern int as3_verbosity; +extern int as3_pass; +#define syntaxerror as3_error +void as3_error(const char*format, ...); +void as3_warning(const char*format, ...); +void as3_softwarning(const char*format, ...); #define T_EOF 0 +extern int avm2_lex(); +extern int avm2_lex_destroy(); + #endif