git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't generate align zones for unused fonts. fixed some mem leaks.
[swftools.git]
/
lib
/
as3
/
tokenizer.h
diff --git
a/lib/as3/tokenizer.h
b/lib/as3/tokenizer.h
index
a07ab51
..
6d6e147
100644
(file)
--- a/
lib/as3/tokenizer.h
+++ b/
lib/as3/tokenizer.h
@@
-20,31
+20,80
@@
#define __parser_h__
#include "../q.h"
#define __parser_h__
#include "../q.h"
+#include "abc.h"
#include "pool.h"
#include "pool.h"
+#include "files.h"
+#include "tokenizer.h"
+#include "registry.h"
#include "code.h"
#include "code.h"
+#include "opcodes.h"
+#include "expr.h"
DECLARE(token);
DECLARE_LIST(token);
DECLARE(token);
DECLARE_LIST(token);
+DECLARE(param);
+DECLARE_LIST(param);
+DECLARE(params);
+DECLARE(modifiers);
+DECLARE(namespace_decl);
+DECLARE_LIST(namespace_decl);
+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;
-} writeable_t;
+struct _params {
+ param_list_t*list;
+ char varargs;
+};
+
+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 number;
+} codeandnumber_t;
+typedef struct _for_start {
+ char*name;
+ char each;
+} for_start_t;
+typedef struct _regexp {
+ char*pattern;
+ char*options;
+} regexp_t;
extern char start_of_expression;
typedef token_t*tokenptr_t;
extern char start_of_expression;
typedef token_t*tokenptr_t;
+extern trie_t*active_namespaces;
+
#include "parser.tab.h"
#include "parser.tab.h"
-void syntaxerror(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
#define T_EOF 0
+extern int avm2_lex();
+extern int avm2_lex_destroy();
+
#endif
#endif