#include "registry.h"
#include "code.h"
#include "opcodes.h"
+#include "expr.h"
DECLARE(token);
DECLARE_LIST(token);
DECLARE(param);
DECLARE_LIST(param);
DECLARE(params);
-DECLARE(typedcode);
+DECLARE(modifiers);
+DECLARE(namespace_decl);
+DECLARE_LIST(namespace_decl);
DECLARE_LIST(typedcode);
struct _param {
char varargs;
};
-struct _typedcode {
- code_t*c;
- classinfo_t*t;
+struct _modifiers {
+ int flags;
+ char*ns;
+};
+struct _namespace_decl {
+ const char*name;
+ const char*url;
};
/* small helper structs: */
typedef struct _codeandnumber {
code_t*cc;
- int len;
+ int number;
} codeandnumber_t;
typedef struct _for_start {
char*name;
typedef token_t*tokenptr_t;
+extern trie_t*active_namespaces;
+
#include "parser.tab.h"
-void syntaxerror(const char*format, ...);
-void warning(const char*format, ...);
+extern unsigned int as3_tokencount;
+
+void as3_buffer_input(void*buffer, int len);
+void as3_file_input(FILE*fi);
+
+void tokenizer_begin_xml();
+void tokenizer_begin_xmltext();
+void tokenizer_end_xmltext();
+void tokenizer_end_xml();
#define T_EOF 0
+extern int avm2_lex();
+extern int avm2_lex_destroy();
+
#endif