You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-11 13:10:58 +00:00
Add core types enums description to extension api json
This commit is contained in:
@@ -473,6 +473,38 @@ Dictionary NativeExtensionAPIDump::generate_extension_api() {
|
||||
d["constants"] = constants;
|
||||
}
|
||||
}
|
||||
{
|
||||
//enums
|
||||
Array enums;
|
||||
|
||||
List<StringName> enum_names;
|
||||
Variant::get_enums_for_type(type, &enum_names);
|
||||
for (const StringName &enum_name : enum_names) {
|
||||
Dictionary enum_dict;
|
||||
enum_dict["name"] = String(enum_name);
|
||||
|
||||
List<StringName> enumeration_names;
|
||||
Variant::get_enumerations_for_enum(type, enum_name, &enumeration_names);
|
||||
|
||||
Array values;
|
||||
|
||||
for (const StringName &enumeration : enumeration_names) {
|
||||
Dictionary values_dict;
|
||||
values_dict["name"] = String(enumeration);
|
||||
values_dict["value"] = Variant::get_enum_value(type, enum_name, enumeration);
|
||||
values.push_back(values_dict);
|
||||
}
|
||||
|
||||
if (values.size()) {
|
||||
enum_dict["values"] = values;
|
||||
}
|
||||
enums.push_back(enum_dict);
|
||||
}
|
||||
|
||||
if (enums.size()) {
|
||||
d["enums"] = enums;
|
||||
}
|
||||
}
|
||||
{
|
||||
//operators
|
||||
Array operators;
|
||||
|
||||
Reference in New Issue
Block a user