params now have a value, too
[swftools.git] / lib / as3 / tokenizer.h
index 57026ca..6acc38e 100644 (file)
 
 DECLARE(token);
 DECLARE_LIST(token);
+DECLARE(param);
+DECLARE_LIST(param);
+DECLARE(params);
 DECLARE(typedcode);
-DECLARE(typedcode_list);
+DECLARE_LIST(typedcode);
 
 struct _token {
     int type;
@@ -39,19 +42,23 @@ struct _token {
     token_list_t*tokens;
 };
 
-typedef struct _writeable {
-    code_t*write;
-    code_t*read;
-    class_signature_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;
-    class_signature_t*t;
-};
-struct _typedcode_list {
-    struct _typedcode typedcode;
-    struct _typedcode_list*nxt;
+    classinfo_t*t;
+    
+    /* if t == TYPE_FUNCTION */
+    memberinfo_t*f;
 };
 
 extern char start_of_expression;
@@ -61,6 +68,7 @@ typedef token_t*tokenptr_t;
 #include "parser.tab.h"
 
 void syntaxerror(const char*format, ...);
+void warning(const char*format, ...);
 
 #define T_EOF 0