diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-04-06 20:57:34 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-06 20:57:34 +0200 |
commit | 4d0fdf2e98be631e90b8320d10d842a042e31c8a (patch) | |
tree | 8221e3e892cb5eacda6d4b3ab6623bb4825b78c4 /modules/gdscript/gdscript_disassembler.cpp | |
parent | ac591d9904e4e5cf7841b3e79caabf558d37db0e (diff) | |
parent | 4710e2b278bfaa60cfcd3158e2d23e8e9a901e1f (diff) | |
download | redot-engine-4d0fdf2e98be631e90b8320d10d842a042e31c8a.tar.gz |
Merge pull request #59947 from vnen/gdscript-static-methods-classdb
Diffstat (limited to 'modules/gdscript/gdscript_disassembler.cpp')
-rw-r--r-- | modules/gdscript/gdscript_disassembler.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_disassembler.cpp b/modules/gdscript/gdscript_disassembler.cpp index cc0be94a9e..e5fbbfa0c1 100644 --- a/modules/gdscript/gdscript_disassembler.cpp +++ b/modules/gdscript/gdscript_disassembler.cpp @@ -564,6 +564,28 @@ void GDScriptFunction::disassemble(const Vector<String> &p_code_lines) const { incr += 5 + argc; } break; + case OPCODE_CALL_NATIVE_STATIC: { + MethodBind *method = _methods_ptr[_code_ptr[ip + 1 + instr_var_args]]; + int argc = _code_ptr[ip + 2 + instr_var_args]; + + text += "call native method static "; + text += DADDR(1 + argc); + text += " = "; + text += method->get_instance_class(); + text += "."; + text += method->get_name(); + text += "("; + + for (int i = 0; i < argc; i++) { + if (i > 0) { + text += ", "; + } + text += DADDR(1 + i); + } + text += ")"; + + incr += 4 + argc; + } break; case OPCODE_CALL_PTRCALL_NO_RETURN: { text += "call-ptrcall (no return) "; |