implemented switch
[swftools.git] / lib / as3 / tokenizer.h
index b080ded..b8e5be3 100644 (file)
@@ -32,31 +32,39 @@ 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;
-};
-
-typedef struct _writeable {
-    code_t*write;
-    code_t*read;
-    classinfo_t*type;
-} writeable_t;
-
 struct _param {
     char*name;
     classinfo_t*type;
+    constant_t*value;
+};
+
+struct _params {
+    param_list_t*list;
+    char varargs;
 };
 
 struct _typedcode {
     code_t*c;
     classinfo_t*t;
+    
+    /* if t == TYPE_FUNCTION */
+    memberinfo_t*f;
 };
 
+#define FLAG_PUBLIC 1
+#define FLAG_PRIVATE 2
+#define FLAG_PROTECTED 4
+#define FLAG_STATIC 8
+#define FLAG_DYNAMIC 16
+#define FLAG_FINAL 32
+#define FLAG_OVERRIDE 64
+#define FLAG_NATIVE 128
+#define FLAG_INTERNAL 256
+
 extern char start_of_expression;
 
 typedef token_t*tokenptr_t;
@@ -64,6 +72,7 @@ typedef token_t*tokenptr_t;
 #include "parser.tab.h"
 
 void syntaxerror(const char*format, ...);
+void warning(const char*format, ...);
 
 #define T_EOF 0