X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Fabc.h;h=57a5c9b3c52f197ce0f52d69afa6460629a97153;hb=c68811fbe7f54b25f683753c94659bf6e1c83999;hp=50b02fbf34e08b45769ae33a8c941328d737822b;hpb=9bd08484bd337a7e89750ad3080db8491eff69e3;p=swftools.git diff --git a/lib/as3/abc.h b/lib/as3/abc.h index 50b02fb..57a5c9b 100644 --- a/lib/as3/abc.h +++ b/lib/as3/abc.h @@ -59,10 +59,12 @@ struct _abc_method { int index; //filled in during writing }; +#define ABCFILE_LAZY 1 struct _abc_file { // abc_file const char*name; + U32 flags; array_t*metadata; array_t*methods; array_t*classes; @@ -116,6 +118,8 @@ struct _abc_class { trait_list_t*static_constructor_traits; trait_list_t*traits; + + int init_scope_depth; // volatile, might be increased during code verification int index; //filled in during writing }; @@ -146,10 +150,15 @@ struct _abc_method_body { abc_method_t*method; code_t*code; - int max_stack; - int local_count; - int init_scope_depth; - int max_scope_depth; + struct { + //for dumping: filled in during parsing + int max_stack; + int local_count; + int max_scope_depth; + int init_scope_depth; + } old; + + int init_scope_depth; // volatile, might be increased during code verification exception_list_t* exceptions;