X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Ftokenizer.h;h=2d00ae43329bcaf820586fde8012f74f666a98e2;hb=434d5040b814eae784d080c695fe8c3d370a166b;hp=6acc38ec2c6e79efd18748cf11fcd0e3ecd920a6;hpb=0a73f53788124cf7f0c59af8aed0d6795861d1f5;p=swftools.git diff --git a/lib/as3/tokenizer.h b/lib/as3/tokenizer.h index 6acc38e..2d00ae4 100644 --- a/lib/as3/tokenizer.h +++ b/lib/as3/tokenizer.h @@ -34,14 +34,9 @@ DECLARE(param); DECLARE_LIST(param); DECLARE(params); DECLARE(typedcode); +DECLARE(modifiers); DECLARE_LIST(typedcode); -struct _token { - int type; - char*text; - token_list_t*tokens; -}; - struct _param { char*name; classinfo_t*type; @@ -56,10 +51,25 @@ struct _params { struct _typedcode { code_t*c; classinfo_t*t; - - /* if t == TYPE_FUNCTION */ - memberinfo_t*f; }; +struct _modifiers { + int flags; + char*ns; +}; + +/* 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; @@ -67,9 +77,22 @@ 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; +extern unsigned int as3_tokencount; +#define syntaxerror as3_error +void as3_error(const char*format, ...); +void as3_warning(const char*format, ...); +void as3_softwarning(const char*format, ...); + +void as3_buffer_input(void*buffer, int len); +void as3_file_input(FILE*fi); + +void tokenizer_register_namespace(const char*id); #define T_EOF 0 +extern int avm2_lex(); +extern int avm2_lex_destroy(); + #endif