From 07bc4e2f96f8f47991339654ff4ab16acc19d44f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Thu, 14 May 2020 14:29:06 +0200 Subject: Style: Enforce separation line between function definitions I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027. --- modules/visual_script/visual_script.cpp | 41 +++++++++++++ .../visual_script/visual_script_builtin_funcs.cpp | 2 + modules/visual_script/visual_script_editor.cpp | 1 + modules/visual_script/visual_script_expression.cpp | 5 ++ .../visual_script/visual_script_flow_control.cpp | 18 ++++++ modules/visual_script/visual_script_func_nodes.cpp | 15 +++++ modules/visual_script/visual_script_nodes.cpp | 67 ++++++++++++++++++++++ .../visual_script/visual_script_yield_nodes.cpp | 4 ++ 8 files changed, 153 insertions(+) (limited to 'modules/visual_script') diff --git a/modules/visual_script/visual_script.cpp b/modules/visual_script/visual_script.cpp index 79516fa1ba..4d5e5200b6 100644 --- a/modules/visual_script/visual_script.cpp +++ b/modules/visual_script/visual_script.cpp @@ -178,6 +178,7 @@ void VisualScript::add_function(const StringName &p_name) { bool VisualScript::has_function(const StringName &p_name) const { return functions.has(p_name); } + void VisualScript::remove_function(const StringName &p_name) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!functions.has(p_name)); @@ -581,10 +582,12 @@ void VisualScript::set_variable_default_value(const StringName &p_name, const Va _update_placeholders(); #endif } + Variant VisualScript::get_variable_default_value(const StringName &p_name) const { ERR_FAIL_COND_V(!variables.has(p_name), Variant()); return variables[p_name].default_value; } + void VisualScript::set_variable_info(const StringName &p_name, const PropertyInfo &p_info) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!variables.has(p_name)); @@ -595,6 +598,7 @@ void VisualScript::set_variable_info(const StringName &p_name, const PropertyInf _update_placeholders(); #endif } + PropertyInfo VisualScript::get_variable_info(const StringName &p_name) const { ERR_FAIL_COND_V(!variables.has(p_name), PropertyInfo()); return variables[p_name].info; @@ -702,6 +706,7 @@ void VisualScript::add_custom_signal(const StringName &p_name) { bool VisualScript::has_custom_signal(const StringName &p_name) const { return custom_signals.has(p_name); } + void VisualScript::custom_signal_add_argument(const StringName &p_func, Variant::Type p_type, const String &p_name, int p_index) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_func)); @@ -713,28 +718,33 @@ void VisualScript::custom_signal_add_argument(const StringName &p_func, Variant: else custom_signals[p_func].insert(0, arg); } + void VisualScript::custom_signal_set_argument_type(const StringName &p_func, int p_argidx, Variant::Type p_type) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_func)); ERR_FAIL_INDEX(p_argidx, custom_signals[p_func].size()); custom_signals[p_func].write[p_argidx].type = p_type; } + Variant::Type VisualScript::custom_signal_get_argument_type(const StringName &p_func, int p_argidx) const { ERR_FAIL_COND_V(!custom_signals.has(p_func), Variant::NIL); ERR_FAIL_INDEX_V(p_argidx, custom_signals[p_func].size(), Variant::NIL); return custom_signals[p_func][p_argidx].type; } + void VisualScript::custom_signal_set_argument_name(const StringName &p_func, int p_argidx, const String &p_name) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_func)); ERR_FAIL_INDEX(p_argidx, custom_signals[p_func].size()); custom_signals[p_func].write[p_argidx].name = p_name; } + String VisualScript::custom_signal_get_argument_name(const StringName &p_func, int p_argidx) const { ERR_FAIL_COND_V(!custom_signals.has(p_func), String()); ERR_FAIL_INDEX_V(p_argidx, custom_signals[p_func].size(), String()); return custom_signals[p_func][p_argidx].name; } + void VisualScript::custom_signal_remove_argument(const StringName &p_func, int p_argidx) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_func)); @@ -746,6 +756,7 @@ int VisualScript::custom_signal_get_argument_count(const StringName &p_func) con ERR_FAIL_COND_V(!custom_signals.has(p_func), 0); return custom_signals[p_func].size(); } + void VisualScript::custom_signal_swap_argument(const StringName &p_func, int p_argidx, int p_with_argidx) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_func)); @@ -754,6 +765,7 @@ void VisualScript::custom_signal_swap_argument(const StringName &p_func, int p_a SWAP(custom_signals[p_func].write[p_argidx], custom_signals[p_func].write[p_with_argidx]); } + void VisualScript::remove_custom_signal(const StringName &p_name) { ERR_FAIL_COND(instances.size()); ERR_FAIL_COND(!custom_signals.has(p_name)); @@ -934,6 +946,7 @@ bool VisualScript::get_property_default_value(const StringName &p_property, Vari r_value = variables[p_property].default_value; return true; } + void VisualScript::get_script_method_list(List *p_list) const { for (Map::Element *E = functions.front(); E; E = E->next()) { MethodInfo mi; @@ -957,6 +970,7 @@ void VisualScript::get_script_method_list(List *p_list) const { bool VisualScript::has_method(const StringName &p_method) const { return functions.has(p_method); } + MethodInfo VisualScript::get_method_info(const StringName &p_method) const { const Map::Element *E = functions.find(p_method); if (!E) @@ -1392,6 +1406,7 @@ bool VisualScriptInstance::get(const StringName &p_name, Variant &r_ret) const { r_ret = E->get(); return true; } + void VisualScriptInstance::get_property_list(List *p_properties) const { for (const Map::Element *E = script->variables.front(); E; E = E->next()) { if (!E->get()._export) @@ -1402,6 +1417,7 @@ void VisualScriptInstance::get_property_list(List *p_properties) c p_properties->push_back(p); } } + Variant::Type VisualScriptInstance::get_property_type(const StringName &p_name, bool *r_is_valid) const { const Map::Element *E = script->variables.find(p_name); if (!E) { @@ -1444,6 +1460,7 @@ void VisualScriptInstance::get_method_list(List *p_list) const { p_list->push_back(mi); } } + bool VisualScriptInstance::has_method(const StringName &p_method) const { if (p_method == script->get_default_func()) return false; @@ -2369,25 +2386,32 @@ String VisualScriptLanguage::get_name() const { /* LANGUAGE FUNCTIONS */ void VisualScriptLanguage::init() { } + String VisualScriptLanguage::get_type() const { return "VisualScript"; } + String VisualScriptLanguage::get_extension() const { return "vs"; } + Error VisualScriptLanguage::execute_file(const String &p_path) { return OK; } + void VisualScriptLanguage::finish() { } /* EDITOR FUNCTIONS */ void VisualScriptLanguage::get_reserved_words(List *p_words) const { } + void VisualScriptLanguage::get_comment_delimiters(List *p_delimiters) const { } + void VisualScriptLanguage::get_string_delimiters(List *p_delimiters) const { } + Ref