Merge pull request #1591 from dsnopek/variant-object-instance-id

Directly get object instance ID from `Variant` and implement `Variant::get_validated_object()`
This commit is contained in:
David Snopek
2024-10-29 13:10:12 -05:00
committed by GitHub
8 changed files with 34 additions and 6 deletions

View File

@@ -217,6 +217,7 @@ void Example::_bind_methods() {
ClassDB::bind_method(D_METHOD("test_variant_vector2i_conversion", "variant"), &Example::test_variant_vector2i_conversion);
ClassDB::bind_method(D_METHOD("test_variant_int_conversion", "variant"), &Example::test_variant_int_conversion);
ClassDB::bind_method(D_METHOD("test_variant_float_conversion", "variant"), &Example::test_variant_float_conversion);
ClassDB::bind_method(D_METHOD("test_object_is_valid", "variant"), &Example::test_object_is_valid);
ClassDB::bind_method(D_METHOD("test_add_child", "node"), &Example::test_add_child);
ClassDB::bind_method(D_METHOD("test_set_tileset", "tilemap", "tileset"), &Example::test_set_tileset);
@@ -598,6 +599,10 @@ float Example::test_variant_float_conversion(const Variant &p_variant) const {
return p_variant;
}
bool Example::test_object_is_valid(const Variant &p_variant) const {
return static_cast<bool>(p_variant.get_validated_object());
}
void Example::test_add_child(Node *p_node) {
add_child(p_node);
}