Skip to content

Commit 2f7e138

Browse files
authored
refactor: don't inline is_func_moddable (#423)
1 parent 4852565 commit 2f7e138

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

addons/mod_loader/internal/mod_hook_preprocessor.gd

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,18 +53,7 @@ func process_script(path: String) -> String:
5353
var getters_setters := collect_getters_and_setters(source_code, regex_getter_setter)
5454

5555
var moddable_methods := current_script.get_script_method_list().filter(
56-
func is_func_moddable(method: Dictionary):
57-
if getters_setters.has(method.name):
58-
return false
59-
60-
var method_first_line_start := _ModLoaderModHookPreProcessor.get_index_at_method_start(method.name, source_code)
61-
if method_first_line_start == -1:
62-
return false
63-
64-
if not _ModLoaderModHookPreProcessor.is_func_marked_moddable(method_first_line_start, source_code):
65-
return false
66-
67-
return true
56+
is_func_moddable.bind(source_code, getters_setters)
6857
)
6958

7059
for method in moddable_methods:
@@ -125,6 +114,20 @@ func process_script(path: String) -> String:
125114
return source_code
126115

127116

117+
static func is_func_moddable(method: Dictionary, source_code: String, getters_setters := {}) -> bool:
118+
if getters_setters.has(method.name):
119+
return false
120+
121+
var method_first_line_start := _ModLoaderModHookPreProcessor.get_index_at_method_start(method.name, source_code)
122+
if method_first_line_start == -1:
123+
return false
124+
125+
if not _ModLoaderModHookPreProcessor.is_func_marked_moddable(method_first_line_start, source_code):
126+
return false
127+
128+
return true
129+
130+
128131
static func get_function_arg_name_string(args: Array) -> String:
129132
var arg_string := ""
130133
for x in args.size():

0 commit comments

Comments
 (0)