diff options
| author | Juan Linietsky | 2015-11-28 20:56:14 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2015-11-28 20:56:14 -0300 |
| commit | 7aa39b7cae364347cf379bb8f216adf0a79f37c7 (patch) | |
| tree | 8c57c6b917299d3fc24cce12dff6a189b67d9dc6 /core/variant_parser.h | |
| parent | bd10df93ec1c19405659ed82e6c7116921ba5e0c (diff) | |
| download | godot-7aa39b7cae364347cf379bb8f216adf0a79f37c7.tar.gz godot-7aa39b7cae364347cf379bb8f216adf0a79f37c7.tar.zst godot-7aa39b7cae364347cf379bb8f216adf0a79f37c7.zip | |
Diffstat (limited to 'core/variant_parser.h')
| -rw-r--r-- | core/variant_parser.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/core/variant_parser.h b/core/variant_parser.h index d4ec6c6cf..e1d25f751 100644 --- a/core/variant_parser.h +++ b/core/variant_parser.h @@ -38,6 +38,8 @@ public: void *userdata; ParseResourceFunc func; + ParseResourceFunc ext_func; + ParseResourceFunc sub_func; }; @@ -82,15 +84,16 @@ public: private: static const char * tk_name[TK_MAX]; - static Error _parse_construct(Stream *p_stream, Vector<float>& r_construct, int &line, String &r_err_str); + template<class T> + static Error _parse_construct(Stream *p_stream, Vector<T>& r_construct, int &line, String &r_err_str); static Error _parse_dictionary(Dictionary &object, Stream *p_stream, int &line, String &r_err_str,ResourceParser *p_res_parser=NULL); static Error _parse_array(Array &array, Stream *p_stream, int &line, String &r_err_str,ResourceParser *p_res_parser=NULL); - static Error _parse_tag(Token& token,Stream *p_stream, int &line, String &r_err_str,Tag& r_tag); + static Error _parse_tag(Token& token,Stream *p_stream, int &line, String &r_err_str,Tag& r_tag,ResourceParser *p_res_parser=NULL); public: - static Error parse_tag(Stream *p_stream, int &line, String &r_err_str,Tag& r_tag); - static Error parse_tag_assign_eof(Stream *p_stream, int &line, String &r_err_str,Tag& r_tag,String &r_assign); + static Error parse_tag(Stream *p_stream, int &line, String &r_err_str,Tag& r_tag,ResourceParser *p_res_parser=NULL); + static Error parse_tag_assign_eof(Stream *p_stream, int &line, String &r_err_str, Tag& r_tag, String &r_assign, Variant &r_value,ResourceParser *p_res_parser=NULL); static Error parse_value(Token& token,Variant &value, Stream *p_stream, int &line, String &r_err_str,ResourceParser *p_res_parser=NULL); static Error get_token(Stream *p_stream,Token& r_token,int &line,String &r_err_str); |
