Merge pull request #86079 from dsnopek/required-args

Add `RequiredParam<T>` and `RequiredResult<T>` to mark `Object *` arguments and return values as required
This commit is contained in:
Thaddeus Crews
2025-11-24 16:00:13 -06:00
19 changed files with 444 additions and 69 deletions

View File

@ -88,7 +88,7 @@ static String get_property_info_type_name(const PropertyInfo &p_info) {
}
static String get_type_meta_name(const GodotTypeInfo::Metadata metadata) {
static const char *argmeta[13] = { "none", "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "float", "double", "char16", "char32" };
static const char *argmeta[14] = { "none", "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "float", "double", "char16", "char32", "required" };
return argmeta[metadata];
}

View File

@ -1942,6 +1942,10 @@
{
"name": "GDEXTENSION_METHOD_ARGUMENT_METADATA_INT_IS_CHAR32",
"value": 12
},
{
"name": "GDEXTENSION_METHOD_ARGUMENT_METADATA_OBJECT_IS_REQUIRED",
"value": 13
}
]
},