summaryrefslogtreecommitdiffstats
path: root/core/variant.h
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2015-02-15 01:19:46 -0300
committerJuan Linietsky <reduzio@gmail.com>2015-02-15 01:21:26 -0300
commit2185c018f6593e6d64b2beb62202d2291e2e008e (patch)
treeb6f57e0a20ff3d0432e6ac6eb809bc34ca8eefa0 /core/variant.h
parent7ebb224ec1d81ccd62b77f21f01f5267220aee09 (diff)
downloadredot-engine-2185c018f6593e6d64b2beb62202d2291e2e008e.tar.gz
begin new serialization framework
also got rid of STL dependency on triangulator
Diffstat (limited to 'core/variant.h')
-rw-r--r--core/variant.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/variant.h b/core/variant.h
index 47fc3f43ac..d5d4792422 100644
--- a/core/variant.h
+++ b/core/variant.h
@@ -419,7 +419,11 @@ public:
static bool has_numeric_constant(Variant::Type p_type, const StringName& p_value);
static int get_numeric_constant_value(Variant::Type p_type, const StringName& p_value);
- String get_construct_string() const;
+ typedef String (*ObjectDeConstruct)(const Variant& p_object,void *ud);
+ typedef void (*ObjectConstruct)(const String& p_text,void *ud,Variant& r_value);
+
+ String get_construct_string(ObjectDeConstruct p_obj_deconstruct=NULL,void *p_deconstruct_ud=NULL) const;
+ static void construct_from_string(const String& p_string,Variant& r_value,ObjectConstruct p_obj_construct=NULL,void *p_construct_ud=NULL);
void operator=(const Variant& p_variant); // only this is enough for all the other types
Variant(const Variant& p_variant);