diff options
author | George Marques <george@gmarqu.es> | 2018-05-29 23:16:52 -0300 |
---|---|---|
committer | George Marques <george@gmarqu.es> | 2018-07-20 21:55:16 -0300 |
commit | b7a00aead039a988f9e224ef5ad19688a17c971c (patch) | |
tree | 7adf2665a56e241cf1fdb84693145f5102f4ed0d /modules/gdscript/gdscript_parser.h | |
parent | 8aab9a06d4db1106dc733022f951db979e39f97b (diff) | |
download | redot-engine-b7a00aead039a988f9e224ef5ad19688a17c971c.tar.gz |
Move inheritance resolution to the parser
Diffstat (limited to 'modules/gdscript/gdscript_parser.h')
-rw-r--r-- | modules/gdscript/gdscript_parser.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_parser.h b/modules/gdscript/gdscript_parser.h index a71bd96ded..5330d82133 100644 --- a/modules/gdscript/gdscript_parser.h +++ b/modules/gdscript/gdscript_parser.h @@ -107,6 +107,7 @@ public: struct FunctionNode; struct BlockNode; + struct ConstantNode; struct ClassNode : public Node { @@ -115,6 +116,7 @@ public: bool extends_used; StringName extends_file; Vector<StringName> extends_class; + DataType base_type; struct Member { PropertyInfo _export; @@ -446,6 +448,7 @@ private: ClassNode *current_class; FunctionNode *current_function; BlockNode *current_block; + Map<StringName, ClassNode *> class_map; bool _get_completable_identifier(CompletionType p_type, StringName &identifier); void _make_completable_call(int p_arg); @@ -487,6 +490,7 @@ private: void _parse_class(ClassNode *p_class); bool _end_statement(); + void _determine_inheritance(ClassNode *p_class); bool _parse_type(DataType &r_type, bool p_can_be_void = false); Error _parse(const String &p_base_path); |