X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Ftokenizer.h;h=44ffd1790a4c7c92294579b7edce686028b2a343;hb=49e07c7d7adac5b5b9d5fa012e75de3a0e2ec51e;hp=4b4b5aa55172bfe56eb9b437a61b71be0eab8f5e;hpb=d1892062a688b7a0d808711cb25b9a21241d73b7;p=swftools.git diff --git a/lib/as3/tokenizer.h b/lib/as3/tokenizer.h index 4b4b5aa..44ffd17 100644 --- a/lib/as3/tokenizer.h +++ b/lib/as3/tokenizer.h @@ -20,36 +20,48 @@ #define __parser_h__ #include "../q.h" +#include "abc.h" #include "pool.h" -#include "code.h" +#include "files.h" +#include "tokenizer.h" #include "registry.h" +#include "code.h" +#include "opcodes.h" DECLARE(token); DECLARE_LIST(token); +DECLARE(param); +DECLARE_LIST(param); +DECLARE(params); DECLARE(typedcode); -DECLARE(typedcode_list); +DECLARE_LIST(typedcode); -struct _token { - int type; - char*text; - token_list_t*tokens; +struct _param { + char*name; + classinfo_t*type; + constant_t*value; }; -typedef struct _writeable { - code_t*write; - code_t*read; - class_signature_t*type; -} writeable_t; +struct _params { + param_list_t*list; + char varargs; +}; struct _typedcode { code_t*c; - class_signature_t*t; -}; -struct _typedcode_list { - struct _typedcode typedcode; - struct _typedcode_list*nxt; + 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; + extern char start_of_expression; typedef token_t*tokenptr_t; @@ -57,6 +69,7 @@ typedef token_t*tokenptr_t; #include "parser.tab.h" void syntaxerror(const char*format, ...); +void warning(const char*format, ...); #define T_EOF 0