summaryrefslogtreecommitdiffstats
path: root/servers/extensions/make_wrappers.py
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2022-03-28 13:35:21 +0200
committerGitHub <noreply@github.com>2022-03-28 13:35:21 +0200
commit143d13717bcedd00b457958c563f0ab5d7c93896 (patch)
treed22b48fbffbf7bcbc2b66da3ae689ae0809d4aed /servers/extensions/make_wrappers.py
parent31f26f5c58f46c464653070fd1df4b57d0cd6d36 (diff)
parent360dea5348652d8806d33598e111651afb3d193a (diff)
downloadredot-engine-143d13717bcedd00b457958c563f0ab5d7c93896.tar.gz
Merge pull request #59553 from reduz/script-extension-support
Diffstat (limited to 'servers/extensions/make_wrappers.py')
-rw-r--r--servers/extensions/make_wrappers.py93
1 files changed, 0 insertions, 93 deletions
diff --git a/servers/extensions/make_wrappers.py b/servers/extensions/make_wrappers.py
deleted file mode 100644
index 862d313fba..0000000000
--- a/servers/extensions/make_wrappers.py
+++ /dev/null
@@ -1,93 +0,0 @@
-proto = """
-#define EXBIND$VER($RETTYPE m_name$ARG) \\
-GDVIRTUAL$VER($RETTYPE_##m_name$ARG)\\
-virtual $RETVAL m_name($FUNCARGS) $CONST override { \\
- $RETPRE\\
- GDVIRTUAL_REQUIRED_CALL(_##m_name$CALLARGS$RETREF);\\
- $RETPOST\\
-}
-"""
-
-
-def generate_version(argcount, const=False, returns=False):
- s = proto
- sproto = str(argcount)
- method_info = ""
- if returns:
- sproto += "R"
- s = s.replace("$RETTYPE", "m_ret, ")
- s = s.replace("$RETVAL", "m_ret")
- s = s.replace("$RETPRE", "m_ret ret; ZeroInitializer<m_ret>::initialize(ret);\\\n")
- s = s.replace("$RETPOST", "return ret;\\\n")
-
- else:
- s = s.replace("$RETTYPE", "")
- s = s.replace("$RETVAL", "void")
- s = s.replace("$RETPRE", "")
- s = s.replace("$RETPOST", "return;")
-
- if const:
- sproto += "C"
- s = s.replace("$CONST", "const")
- else:
- s = s.replace("$CONST", "")
-
- s = s.replace("$VER", sproto)
- argtext = ""
- funcargs = ""
- callargs = ""
-
- for i in range(argcount):
- if i > 0:
- funcargs += ", "
-
- argtext += ", m_type" + str(i + 1)
- funcargs += "m_type" + str(i + 1) + " arg" + str(i + 1)
- callargs += ", arg" + str(i + 1)
-
- if argcount:
- s = s.replace("$ARG", argtext)
- s = s.replace("$FUNCARGS", funcargs)
- s = s.replace("$CALLARGS", callargs)
- else:
- s = s.replace("$ARG", "")
- s = s.replace("$FUNCARGS", funcargs)
- s = s.replace("$CALLARGS", callargs)
-
- if returns:
- s = s.replace("$RETREF", ", ret")
- else:
- s = s.replace("$RETREF", "")
-
- return s
-
-
-def run(target, source, env):
-
- max_versions = 12
-
- txt = """
-#ifndef GDEXTENSION_WRAPPERS_GEN_H
-#define GDEXTENSION_WRAPPERS_GEN_H
-
-
-"""
-
- for i in range(max_versions + 1):
-
- txt += "/* " + str(i) + " Arguments */\n\n"
- txt += generate_version(i, False, False)
- txt += generate_version(i, False, True)
- txt += generate_version(i, True, False)
- txt += generate_version(i, True, True)
-
- txt += "#endif"
-
- with open(target[0], "w") as f:
- f.write(txt)
-
-
-if __name__ == "__main__":
- from platform_methods import subprocess_main
-
- subprocess_main(globals())