Merge pull request #35812 from touilleMan/gdnative-uses-godot_string_name-where-possible
Use StringName in pluginscript's set/get_prop and add_global_constant
This commit is contained in:
commit
10de9978b8
3 changed files with 6 additions and 10 deletions
|
@ -44,13 +44,12 @@ typedef void godot_pluginscript_language_data;
|
|||
|
||||
// --- Instance ---
|
||||
|
||||
// TODO: use godot_string_name for faster lookup ?
|
||||
typedef struct {
|
||||
godot_pluginscript_instance_data *(*init)(godot_pluginscript_script_data *p_data, godot_object *p_owner);
|
||||
void (*finish)(godot_pluginscript_instance_data *p_data);
|
||||
|
||||
godot_bool (*set_prop)(godot_pluginscript_instance_data *p_data, const godot_string *p_name, const godot_variant *p_value);
|
||||
godot_bool (*get_prop)(godot_pluginscript_instance_data *p_data, const godot_string *p_name, godot_variant *r_ret);
|
||||
godot_bool (*set_prop)(godot_pluginscript_instance_data *p_data, const godot_string_name *p_name, const godot_variant *p_value);
|
||||
godot_bool (*get_prop)(godot_pluginscript_instance_data *p_data, const godot_string_name *p_name, godot_variant *r_ret);
|
||||
|
||||
godot_variant (*call_method)(godot_pluginscript_instance_data *p_data,
|
||||
const godot_string_name *p_method, const godot_variant **p_args,
|
||||
|
@ -136,7 +135,7 @@ typedef struct {
|
|||
godot_error (*complete_code)(godot_pluginscript_language_data *p_data, const godot_string *p_code, const godot_string *p_path, godot_object *p_owner, godot_array *r_options, godot_bool *r_force, godot_string *r_call_hint);
|
||||
void (*auto_indent_code)(godot_pluginscript_language_data *p_data, godot_string *p_code, int p_from_line, int p_to_line);
|
||||
|
||||
void (*add_global_constant)(godot_pluginscript_language_data *p_data, const godot_string *p_variable, const godot_variant *p_value);
|
||||
void (*add_global_constant)(godot_pluginscript_language_data *p_data, const godot_string_name *p_variable, const godot_variant *p_value);
|
||||
godot_string (*debug_get_error)(godot_pluginscript_language_data *p_data);
|
||||
int (*debug_get_stack_level_count)(godot_pluginscript_language_data *p_data);
|
||||
int (*debug_get_stack_level_line)(godot_pluginscript_language_data *p_data, int p_level);
|
||||
|
|
|
@ -39,13 +39,11 @@
|
|||
#include "pluginscript_script.h"
|
||||
|
||||
bool PluginScriptInstance::set(const StringName &p_name, const Variant &p_value) {
|
||||
String name = String(p_name);
|
||||
return _desc->set_prop(_data, (const godot_string *)&name, (const godot_variant *)&p_value);
|
||||
return _desc->set_prop(_data, (const godot_string_name *)&p_name, (const godot_variant *)&p_value);
|
||||
}
|
||||
|
||||
bool PluginScriptInstance::get(const StringName &p_name, Variant &r_ret) const {
|
||||
String name = String(p_name);
|
||||
return _desc->get_prop(_data, (const godot_string *)&name, (godot_variant *)&r_ret);
|
||||
return _desc->get_prop(_data, (const godot_string_name *)&p_name, (godot_variant *)&r_ret);
|
||||
}
|
||||
|
||||
Ref<Script> PluginScriptInstance::get_script() const {
|
||||
|
|
|
@ -187,8 +187,7 @@ void PluginScriptLanguage::auto_indent_code(String &p_code, int p_from_line, int
|
|||
}
|
||||
|
||||
void PluginScriptLanguage::add_global_constant(const StringName &p_variable, const Variant &p_value) {
|
||||
const String variable = String(p_variable);
|
||||
_desc.add_global_constant(_data, (godot_string *)&variable, (godot_variant *)&p_value);
|
||||
_desc.add_global_constant(_data, (godot_string_name *)&p_variable, (godot_variant *)&p_value);
|
||||
}
|
||||
|
||||
/* LOADER FUNCTIONS */
|
||||
|
|
Loading…
Reference in a new issue