mirror of
https://github.com/Relintai/gdnative.git
synced 2024-11-14 04:57:22 +01:00
Implemented most new apis to Variant.
This commit is contained in:
parent
2346bba159
commit
83fab63cf2
@ -62,6 +62,44 @@ pandemonium_variant_type GDAPI pandemonium_variant_get_type(const pandemonium_va
|
|||||||
return (pandemonium_variant_type)self->get_type();
|
return (pandemonium_variant_type)self->get_type();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_ref(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_ref();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_num(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_num();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_array(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_array();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_null(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_null();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_shared(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_shared();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_zero(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_zero();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_one(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_one();
|
||||||
|
}
|
||||||
|
|
||||||
|
pandemonium_int GDAPI pandemonium_variant_get_object_instance_id(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->get_object_instance_id();
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_is_invalid_object(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->is_invalid_object();
|
||||||
|
}
|
||||||
|
|
||||||
void GDAPI pandemonium_variant_new_copy(pandemonium_variant *p_dest, const pandemonium_variant *p_src) {
|
void GDAPI pandemonium_variant_new_copy(pandemonium_variant *p_dest, const pandemonium_variant *p_src) {
|
||||||
Variant *dest = (Variant *)p_dest;
|
Variant *dest = (Variant *)p_dest;
|
||||||
Variant *src = (Variant *)p_src;
|
Variant *src = (Variant *)p_src;
|
||||||
@ -477,6 +515,17 @@ pandemonium_bool GDAPI pandemonium_variant_has_method(const pandemonium_variant
|
|||||||
return self->has_method(*method);
|
return self->has_method(*method);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_deep_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_variant) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
const Variant *variant = (const Variant *)p_variant;
|
||||||
|
return self->deep_equal(*variant);
|
||||||
|
}
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_deep_equal_recursion_count(const pandemonium_variant *p_self, const pandemonium_variant *p_variant, pandemonium_int p_recursion_count) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
const Variant *variant = (const Variant *)p_variant;
|
||||||
|
return self->deep_equal(*variant, p_recursion_count);
|
||||||
|
}
|
||||||
|
|
||||||
pandemonium_bool GDAPI pandemonium_variant_operator_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_other) {
|
pandemonium_bool GDAPI pandemonium_variant_operator_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_other) {
|
||||||
const Variant *self = (const Variant *)p_self;
|
const Variant *self = (const Variant *)p_self;
|
||||||
const Variant *other = (const Variant *)p_other;
|
const Variant *other = (const Variant *)p_other;
|
||||||
@ -489,6 +538,11 @@ pandemonium_bool GDAPI pandemonium_variant_operator_less(const pandemonium_varia
|
|||||||
return self->operator<(*other);
|
return self->operator<(*other);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pandemonium_int GDAPI pandemonium_variant_hash(const pandemonium_variant *p_self) {
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
return self->hash();
|
||||||
|
}
|
||||||
|
|
||||||
pandemonium_bool GDAPI pandemonium_variant_hash_compare(const pandemonium_variant *p_self, const pandemonium_variant *p_other) {
|
pandemonium_bool GDAPI pandemonium_variant_hash_compare(const pandemonium_variant *p_self, const pandemonium_variant *p_other) {
|
||||||
const Variant *self = (const Variant *)p_self;
|
const Variant *self = (const Variant *)p_self;
|
||||||
const Variant *other = (const Variant *)p_other;
|
const Variant *other = (const Variant *)p_other;
|
||||||
@ -523,6 +577,23 @@ void GDAPI pandemonium_variant_evaluate(pandemonium_variant_operator p_op, const
|
|||||||
Variant::evaluate(op, *a, *b, *ret, *r_valid);
|
Variant::evaluate(op, *a, *b, *ret, *r_valid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GDAPI pandemonium_variant_zero(pandemonium_variant *p_self) {
|
||||||
|
Variant *self = (Variant *)p_self;
|
||||||
|
self->zero();
|
||||||
|
}
|
||||||
|
pandemonium_variant GDAPI pandemonium_variant_duplicate(const pandemonium_variant *p_self) {
|
||||||
|
pandemonium_variant dest;
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
*((Variant *)&dest) = self->duplicate();
|
||||||
|
return dest;
|
||||||
|
}
|
||||||
|
pandemonium_variant GDAPI pandemonium_variant_duplicate_deep(const pandemonium_variant *p_self, pandemonium_bool deep) {
|
||||||
|
pandemonium_variant dest;
|
||||||
|
const Variant *self = (const Variant *)p_self;
|
||||||
|
*((Variant *)&dest) = self->duplicate(deep);
|
||||||
|
return dest;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -191,23 +191,25 @@ pandemonium_variant_type GDAPI pandemonium_variant_get_type(const pandemonium_va
|
|||||||
//static bool can_convert(Type p_type_from, Type p_type_to);
|
//static bool can_convert(Type p_type_from, Type p_type_to);
|
||||||
//static bool can_convert_strict(Type p_type_from, Type p_type_to);
|
//static bool can_convert_strict(Type p_type_from, Type p_type_to);
|
||||||
|
|
||||||
//bool is_ref() const;
|
pandemonium_bool GDAPI pandemonium_variant_is_ref(const pandemonium_variant *p_self);
|
||||||
//_FORCE_INLINE_ bool is_num() const { return type == INT || type == REAL; };
|
pandemonium_bool GDAPI pandemonium_variant_is_num(const pandemonium_variant *p_self);
|
||||||
//_FORCE_INLINE_ bool is_array() const { return type >= ARRAY; };
|
pandemonium_bool GDAPI pandemonium_variant_is_array(const pandemonium_variant *p_self);
|
||||||
//_FORCE_INLINE_ bool is_null() const { return type == NIL; };
|
pandemonium_bool GDAPI pandemonium_variant_is_null(const pandemonium_variant *p_self);
|
||||||
//bool is_shared() const;
|
pandemonium_bool GDAPI pandemonium_variant_is_shared(const pandemonium_variant *p_self);
|
||||||
//bool is_zero() const;
|
pandemonium_bool GDAPI pandemonium_variant_is_zero(const pandemonium_variant *p_self);
|
||||||
//bool is_one() const;
|
pandemonium_bool GDAPI pandemonium_variant_is_one(const pandemonium_variant *p_self);
|
||||||
|
|
||||||
//ObjectID get_object_instance_id() const;
|
pandemonium_int GDAPI pandemonium_variant_get_object_instance_id(const pandemonium_variant *p_self);
|
||||||
//bool is_invalid_object() const;
|
pandemonium_bool GDAPI pandemonium_variant_is_invalid_object(const pandemonium_variant *p_self);
|
||||||
|
|
||||||
pandemonium_string GDAPI pandemonium_variant_get_operator_name(pandemonium_variant_operator p_op);
|
pandemonium_string GDAPI pandemonium_variant_get_operator_name(pandemonium_variant_operator p_op);
|
||||||
void GDAPI pandemonium_variant_evaluate(pandemonium_variant_operator p_op, const pandemonium_variant *p_a, const pandemonium_variant *p_b, pandemonium_variant *r_ret, pandemonium_bool *r_valid);
|
void GDAPI pandemonium_variant_evaluate(pandemonium_variant_operator p_op, const pandemonium_variant *p_a, const pandemonium_variant *p_b, pandemonium_variant *r_ret, pandemonium_bool *r_valid);
|
||||||
//static _FORCE_INLINE_ Variant evaluate(const Operator &p_op, const Variant &p_a, const Variant &p_b) {
|
//static _FORCE_INLINE_ Variant evaluate(const Operator &p_op, const Variant &p_a, const Variant &p_b);
|
||||||
|
|
||||||
|
void GDAPI pandemonium_variant_zero(pandemonium_variant *p_self);
|
||||||
|
pandemonium_variant GDAPI pandemonium_variant_duplicate(const pandemonium_variant *p_self);
|
||||||
|
pandemonium_variant GDAPI pandemonium_variant_duplicate_deep(const pandemonium_variant *p_self, pandemonium_bool deep);
|
||||||
|
|
||||||
//void zero();
|
|
||||||
//Variant duplicate(bool deep = false) const;
|
|
||||||
//static void blend(const Variant &a, const Variant &b, float c, Variant &r_dst);
|
//static void blend(const Variant &a, const Variant &b, float c, Variant &r_dst);
|
||||||
//static void interpolate(const Variant &a, const Variant &b, float c, Variant &r_dst);
|
//static void interpolate(const Variant &a, const Variant &b, float c, Variant &r_dst);
|
||||||
//static void sub(const Variant &a, const Variant &b, Variant &r_dst);
|
//static void sub(const Variant &a, const Variant &b, Variant &r_dst);
|
||||||
@ -241,10 +243,11 @@ pandemonium_bool GDAPI pandemonium_variant_has_method(const pandemonium_variant
|
|||||||
|
|
||||||
//void get_property_list(List<PropertyInfo> *p_list) const;
|
//void get_property_list(List<PropertyInfo> *p_list) const;
|
||||||
|
|
||||||
//bool deep_equal(const Variant &p_variant, int p_recursion_count = 0) const;
|
pandemonium_bool GDAPI pandemonium_variant_deep_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_variant);
|
||||||
|
pandemonium_bool GDAPI pandemonium_variant_deep_equal_recursion_count(const pandemonium_variant *p_self, const pandemonium_variant *p_variant, pandemonium_int p_recursion_count);
|
||||||
pandemonium_bool GDAPI pandemonium_variant_operator_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
pandemonium_bool GDAPI pandemonium_variant_operator_equal(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
||||||
pandemonium_bool GDAPI pandemonium_variant_operator_less(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
pandemonium_bool GDAPI pandemonium_variant_operator_less(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
||||||
//uint32_t hash() const;
|
pandemonium_int GDAPI pandemonium_variant_hash(const pandemonium_variant *p_self);
|
||||||
|
|
||||||
pandemonium_bool GDAPI pandemonium_variant_hash_compare(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
pandemonium_bool GDAPI pandemonium_variant_hash_compare(const pandemonium_variant *p_self, const pandemonium_variant *p_other);
|
||||||
pandemonium_bool GDAPI pandemonium_variant_booleanize(const pandemonium_variant *p_self);
|
pandemonium_bool GDAPI pandemonium_variant_booleanize(const pandemonium_variant *p_self);
|
||||||
|
Loading…
Reference in New Issue
Block a user