diff --git a/godot-editor-plugin/addons/rider-plugin/cpp/_scons_stubs/SCons/Script.pyi b/godot-editor-plugin/addons/rider-plugin/cpp/_scons_stubs/SCons/Script.pyi new file mode 100644 index 00000000..55047454 --- /dev/null +++ b/godot-editor-plugin/addons/rider-plugin/cpp/_scons_stubs/SCons/Script.pyi @@ -0,0 +1,430 @@ +# Auto-generated SCons stubs +# Simplified for IDE code completion +from typing import Any + +# +% Stack boTTom %: Any = ... + +# +ARGLIST: Any = ... + +# +ARGUMENTS: Any = ... + +# SCons.Action +def Action(*args, **kwargs): ... + +# SCons.Util.envs +def AddMethod(*args, **kwargs): ... + +# SCons.Script.Main +def AddOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def AddPostAction(*args, **kwargs): ... + +# SCons.Script.SConscript +def AddPreAction(*args, **kwargs): ... + +# SCons.Script.SConscript +def Alias(*args, **kwargs): ... + +# SCons.Subst +def AllowSubstExceptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def AlwaysBuild(*args, **kwargs): ... + +# SCons.Script +BUILD_TARGETS: Any = ... + +# SCons.Variables.BoolVariable +def BoolVariable(*args, **kwargs): ... + +# SCons.Script.Main +BuildTask: Any = ... + +# SCons.Builder +def Builder(*args, **kwargs): ... + +# SCons.Script.SConscript +def CFile(*args, **kwargs): ... + +# +COMMAND_LINE_TARGETS: Any = ... + +# SCons.Scanner +def CScan(*args, **kwargs): ... + +# SCons.Scanner +def CScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def CXXFile(*args, **kwargs): ... + +# SCons.Script.SConscript +def CacheDir(*args, **kwargs): ... + +# SCons.Action +def Chmod(*args, **kwargs): ... + +# SCons.Script.SConscript +def Clean(*args, **kwargs): ... + +# SCons.Script.Main +CleanTask: Any = ... + +# SCons.Script.SConscript +def Command(*args, **kwargs): ... + +# SCons.Script.SConscript +def Configure(*args, **kwargs): ... + +# SCons.Action +def Copy(*args, **kwargs): ... + +# +DEFAULT_TARGETS: Any = ... + +# SCons.Scanner.D +def DScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def DVI(*args, **kwargs): ... + +# SCons.Script.Main +def DebugOptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def Decider(*args, **kwargs): ... + +# SCons.Script.SConscript +def Default(*args, **kwargs): ... + +# SCons.Defaults +def DefaultEnvironment(*args, **kwargs): ... + +# SCons.Action +def Delete(*args, **kwargs): ... + +# SCons.Script.SConscript +def Depends(*args, **kwargs): ... + +# SCons.Script.SConscript +def Dir(*args, **kwargs): ... + +# SCons.Scanner +def DirScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def EnsurePythonVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def EnsureSConsVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def Entry(*args, **kwargs): ... + +# SCons.Variables.EnumVariable +def EnumVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +Environment: Any = ... + +# SCons.Script.SConscript +def Execute(*args, **kwargs): ... + +# SCons.Script.SConscript +def Exit(*args, **kwargs): ... + +# SCons.Script.SConscript +def Export(*args, **kwargs): ... + +# SCons.Script.SConscript +def File(*args, **kwargs): ... + +# SCons.Script.SConscript +def FindFile(*args, **kwargs): ... + +# SCons.Script.SConscript +def FindInstalledFiles(*args, **kwargs): ... + +# SCons.Scanner +FindPathDirs: Any = ... + +# SCons.Script.SConscript +def FindSourceFiles(*args, **kwargs): ... + +# SCons.Script.SConscript +def Flatten(*args, **kwargs): ... + +# SCons.Script.Main +def GetBuildFailures(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetBuildPath(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetLaunchDir(*args, **kwargs): ... + +# SCons.Script.Main +def GetOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetSConsVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def Glob(*args, **kwargs): ... + +# +GlobalDefaultBuilders: Any = ... + +# +GlobalDefaultEnvironmentFunctions: Any = ... + +# SCons.Script.SConscript +def Help(*args, **kwargs): ... + +# SCons.Script +def HelpFunction(*args, **kwargs): ... + +# SCons.Script.SConscript +def Ignore(*args, **kwargs): ... + +# SCons.Script.SConscript +def Import(*args, **kwargs): ... + +# SCons.Script.SConscript +def Install(*args, **kwargs): ... + +# SCons.Script.SConscript +def InstallAs(*args, **kwargs): ... + +# SCons.Script.SConscript +def InstallVersionedLib(*args, **kwargs): ... + +# SCons.Script.SConscript +def Jar(*args, **kwargs): ... + +# SCons.Script.SConscript +def Java(*args, **kwargs): ... + +# SCons.Script.SConscript +def JavaH(*args, **kwargs): ... + +# SCons.Script.SConscript +def Library(*args, **kwargs): ... + +# SCons.Variables.ListVariable +def ListVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +def Literal(*args, **kwargs): ... + +# SCons.Script.SConscript +def LoadableModule(*args, **kwargs): ... + +# SCons.Script.SConscript +def Local(*args, **kwargs): ... + +# SCons.Script.SConscript +def M4(*args, **kwargs): ... + +# SCons.Script.SConscript +def MSVSProject(*args, **kwargs): ... + +# SCons.Action +def Mkdir(*args, **kwargs): ... + +# SCons.Action +def Move(*args, **kwargs): ... + +# SCons.Script.SConscript +def NoCache(*args, **kwargs): ... + +# SCons.Script.SConscript +def NoClean(*args, **kwargs): ... + +# SCons.Script.SConscript +def Object(*args, **kwargs): ... + +# SCons.Script.SConscript +def PCH(*args, **kwargs): ... + +# SCons.Script.SConscript +def PDF(*args, **kwargs): ... + +# SCons.Script.SConscript +def Package(*args, **kwargs): ... + +# SCons.Variables.PackageVariable +def PackageVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +def ParseDepends(*args, **kwargs): ... + +# SCons.Variables.PathVariable +def PathVariable(*args, **kwargs): ... + +# SCons.Platform +def Platform(*args, **kwargs): ... + +# SCons.Script.SConscript +def PostScript(*args, **kwargs): ... + +# SCons.Script.SConscript +def Precious(*args, **kwargs): ... + +# SCons.Script.Main +def PrintHelp(*args, **kwargs): ... + +# SCons.Script.SConscript +def Program(*args, **kwargs): ... + +# SCons.Scanner +def ProgramScanner(*args, **kwargs): ... + +# SCons.Script.Main +def Progress(*args, **kwargs): ... + +# SCons.Script.SConscript +def Pseudo(*args, **kwargs): ... + +# SCons.Script.SConscript +def PyPackageDir(*args, **kwargs): ... + +# SCons.Script.Main +QuestionTask: Any = ... + +# SCons.Script.SConscript +def RES(*args, **kwargs): ... + +# SCons.Script.SConscript +def RMIC(*args, **kwargs): ... + +# SCons.Script.SConscript +def Repository(*args, **kwargs): ... + +# SCons.Script.SConscript +def Requires(*args, **kwargs): ... + +# SCons.Script.SConscript +def Return(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConscript(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConscriptChdir(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConsignFile(*args, **kwargs): ... + +# SCons.Scanner +Scanner: Any = ... + +# SCons.Script.Main +def SetOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def SharedLibrary(*args, **kwargs): ... + +# SCons.Script.SConscript +def SharedObject(*args, **kwargs): ... + +# SCons.Script.SConscript +def SideEffect(*args, **kwargs): ... + +# SCons.Scanner +def SourceFileScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def Split(*args, **kwargs): ... + +# SCons.Script.SConscript +def StaticLibrary(*args, **kwargs): ... + +# SCons.Script.SConscript +def StaticObject(*args, **kwargs): ... + +# _io +StringIO: Any = ... + +# SCons.Script.SConscript +def Substfile(*args, **kwargs): ... + +# +TYPE_CHECKING: Any = ... + +# SCons.Script.SConscript +def Tag(*args, **kwargs): ... + +# SCons.Script.SConscript +def Tar(*args, **kwargs): ... + +# SCons.Script +TargetList: Any = ... + +# SCons.Script.SConscript +def Textfile(*args, **kwargs): ... + +# SCons.Tool +Tool: Any = ... + +# SCons.Action +def Touch(*args, **kwargs): ... + +# SCons.Script.SConscript +def TypeLibrary(*args, **kwargs): ... + +# SCons.Script.Main +def ValidateOptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def Value(*args, **kwargs): ... + +# SCons.Script +def Variables(*args, **kwargs): ... + +# SCons.Script.SConscript +def VariantDir(*args, **kwargs): ... + +# SCons.Platform.virtualenv +def Virtualenv(*args, **kwargs): ... + +# SCons.Util +def WhereIs(*args, **kwargs): ... + +# SCons.Script.SConscript +def Zip(*args, **kwargs): ... + +# +call_stack: Any = ... + +# +help_text: Any = ... + +# +json: Any = ... + +# SCons.Script.Main +def main(*args, **kwargs): ... + +# +os: Any = ... + +# +sconscript_reading: Any = ... + +# SCons.Script +def set_missing_sconscript_error(*args, **kwargs): ... + +# +snapshot: Any = ... + +# +start_time: Any = ... + +# +sys: Any = ... + diff --git a/scons-support/.idea/libraries/_scons_stubs.xml b/scons-support/.idea/libraries/_scons_stubs.xml new file mode 100644 index 00000000..4b081090 --- /dev/null +++ b/scons-support/.idea/libraries/_scons_stubs.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/scons-support/SConstruct b/scons-support/SConstruct new file mode 100644 index 00000000..95b6f946 --- /dev/null +++ b/scons-support/SConstruct @@ -0,0 +1,55 @@ +#!/usr/bin/env python +import os +from typing import TYPE_CHECKING + +if TYPE_CHECKING: + from _scons_stubs.SCons.Stubs import * # noqa: F401,F403 — used only for IDE/type checking + +# Capture rich runtime info so we can generate stubs for both functions and variables +snapshot = {} +for k, v in list(globals().items()): + try: + module_name = getattr(v, "__module__", str(type(v))) + except Exception: + module_name = str(type(v)) + try: + is_callable = callable(v) + except Exception: + is_callable = False + try: + is_class = isinstance(v, type) + except Exception: + is_class = False + snapshot[k] = { + "module": module_name, + "callable": bool(is_callable), + "is_class": bool(is_class), + "type_name": type(v).__name__, + } + +stub_path = "_scons_stubs/SCons/Stubs.pyi" +os.makedirs(os.path.dirname(stub_path), exist_ok=True) + +with open(stub_path, "w") as f: + f.write("# Auto-generated SCons stubs\n") + f.write("# Simplified for IDE code completion\n") + f.write("from typing import Any\n\n") + for name, meta in sorted(snapshot.items()): + # Skip private names + if name.startswith("_"): + continue + module = meta.get("module", "") if isinstance(meta, dict) else str(meta) + is_callable = bool(meta.get("callable", False)) if isinstance(meta, dict) else False + is_class = bool(meta.get("is_class", False)) if isinstance(meta, dict) else False + + f.write(f"# {module}\n") + if is_callable and not is_class: + # Functions and callables + f.write(f"def {name}(*args, **kwargs): ...\n\n") + else: + # Variables/constants (e.g., ARGUMENTS) and classes we don't model explicitly + f.write(f"{name}: Any = ...\n\n") + + +default_args = [] +Default(*default_args) diff --git a/scons-support/_scons_stubs/SCons/Stubs.pyi b/scons-support/_scons_stubs/SCons/Stubs.pyi new file mode 100644 index 00000000..42eb11d7 --- /dev/null +++ b/scons-support/_scons_stubs/SCons/Stubs.pyi @@ -0,0 +1,426 @@ +# Auto-generated SCons stubs +# Simplified for IDE code completion +from typing import Any + +# + +# +ARGLIST: Any = ... + +# +ARGUMENTS: Any = ... + +# SCons.Action +def Action(*args, **kwargs): ... + +# SCons.Util.envs +def AddMethod(*args, **kwargs): ... + +# SCons.Script.Main +def AddOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def AddPostAction(*args, **kwargs): ... + +# SCons.Script.SConscript +def AddPreAction(*args, **kwargs): ... + +# SCons.Script.SConscript +def Alias(*args, **kwargs): ... + +# SCons.Subst +def AllowSubstExceptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def AlwaysBuild(*args, **kwargs): ... + +# SCons.Script +BUILD_TARGETS: Any = ... + +# SCons.Variables.BoolVariable +def BoolVariable(*args, **kwargs): ... + +# SCons.Script.Main +BuildTask: Any = ... + +# SCons.Builder +def Builder(*args, **kwargs): ... + +# SCons.Script.SConscript +def CFile(*args, **kwargs): ... + +# +COMMAND_LINE_TARGETS: Any = ... + +# SCons.Scanner +def CScan(*args, **kwargs): ... + +# SCons.Scanner +def CScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def CXXFile(*args, **kwargs): ... + +# SCons.Script.SConscript +def CacheDir(*args, **kwargs): ... + +# SCons.Action +def Chmod(*args, **kwargs): ... + +# SCons.Script.SConscript +def Clean(*args, **kwargs): ... + +# SCons.Script.Main +CleanTask: Any = ... + +# SCons.Script.SConscript +def Command(*args, **kwargs): ... + +# SCons.Script.SConscript +def Configure(*args, **kwargs): ... + +# SCons.Action +def Copy(*args, **kwargs): ... + +# +DEFAULT_TARGETS: Any = ... + +# SCons.Scanner.D +def DScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def DVI(*args, **kwargs): ... + +# SCons.Script.Main +def DebugOptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def Decider(*args, **kwargs): ... + +# SCons.Script.SConscript +def Default(*args, **kwargs): ... + +# SCons.Defaults +def DefaultEnvironment(*args, **kwargs): ... + +# SCons.Action +def Delete(*args, **kwargs): ... + +# SCons.Script.SConscript +def Depends(*args, **kwargs): ... + +# SCons.Script.SConscript +def Dir(*args, **kwargs): ... + +# SCons.Scanner +def DirScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def EnsurePythonVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def EnsureSConsVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def Entry(*args, **kwargs): ... + +# SCons.Variables.EnumVariable +def EnumVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +Environment: Any = ... + +# SCons.Script.SConscript +def Execute(*args, **kwargs): ... + +# SCons.Script.SConscript +def Exit(*args, **kwargs): ... + +# SCons.Script.SConscript +def Export(*args, **kwargs): ... + +# SCons.Script.SConscript +def File(*args, **kwargs): ... + +# SCons.Script.SConscript +def FindFile(*args, **kwargs): ... + +# SCons.Script.SConscript +def FindInstalledFiles(*args, **kwargs): ... + +# SCons.Scanner +FindPathDirs: Any = ... + +# SCons.Script.SConscript +def FindSourceFiles(*args, **kwargs): ... + +# SCons.Script.SConscript +def Flatten(*args, **kwargs): ... + +# SCons.Script.Main +def GetBuildFailures(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetBuildPath(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetLaunchDir(*args, **kwargs): ... + +# SCons.Script.Main +def GetOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def GetSConsVersion(*args, **kwargs): ... + +# SCons.Script.SConscript +def Glob(*args, **kwargs): ... + +# +GlobalDefaultBuilders: Any = ... + +# +GlobalDefaultEnvironmentFunctions: Any = ... + +# SCons.Script.SConscript +def Help(*args, **kwargs): ... + +# SCons.Script +def HelpFunction(*args, **kwargs): ... + +# SCons.Script.SConscript +def Ignore(*args, **kwargs): ... + +# SCons.Script.SConscript +def Import(*args, **kwargs): ... + +# SCons.Script.SConscript +def Install(*args, **kwargs): ... + +# SCons.Script.SConscript +def InstallAs(*args, **kwargs): ... + +# SCons.Script.SConscript +def InstallVersionedLib(*args, **kwargs): ... + +# SCons.Script.SConscript +def Jar(*args, **kwargs): ... + +# SCons.Script.SConscript +def Java(*args, **kwargs): ... + +# SCons.Script.SConscript +def JavaH(*args, **kwargs): ... + +# SCons.Script.SConscript +def Library(*args, **kwargs): ... + +# SCons.Variables.ListVariable +def ListVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +def Literal(*args, **kwargs): ... + +# SCons.Script.SConscript +def LoadableModule(*args, **kwargs): ... + +# SCons.Script.SConscript +def Local(*args, **kwargs): ... + +# SCons.Script.SConscript +def M4(*args, **kwargs): ... + +# SCons.Script.SConscript +def MSVSProject(*args, **kwargs): ... + +# SCons.Action +def Mkdir(*args, **kwargs): ... + +# SCons.Action +def Move(*args, **kwargs): ... + +# SCons.Script.SConscript +def NoCache(*args, **kwargs): ... + +# SCons.Script.SConscript +def NoClean(*args, **kwargs): ... + +# SCons.Script.SConscript +def Object(*args, **kwargs): ... + +# SCons.Script.SConscript +def PCH(*args, **kwargs): ... + +# SCons.Script.SConscript +def PDF(*args, **kwargs): ... + +# SCons.Script.SConscript +def Package(*args, **kwargs): ... + +# SCons.Variables.PackageVariable +def PackageVariable(*args, **kwargs): ... + +# SCons.Script.SConscript +def ParseDepends(*args, **kwargs): ... + +# SCons.Variables.PathVariable +def PathVariable(*args, **kwargs): ... + +# SCons.Platform +def Platform(*args, **kwargs): ... + +# SCons.Script.SConscript +def PostScript(*args, **kwargs): ... + +# SCons.Script.SConscript +def Precious(*args, **kwargs): ... + +# SCons.Script.Main +def PrintHelp(*args, **kwargs): ... + +# SCons.Script.SConscript +def Program(*args, **kwargs): ... + +# SCons.Scanner +def ProgramScanner(*args, **kwargs): ... + +# SCons.Script.Main +def Progress(*args, **kwargs): ... + +# SCons.Script.SConscript +def Pseudo(*args, **kwargs): ... + +# SCons.Script.SConscript +def PyPackageDir(*args, **kwargs): ... + +# SCons.Script.Main +QuestionTask: Any = ... + +# SCons.Script.SConscript +def RES(*args, **kwargs): ... + +# SCons.Script.SConscript +def RMIC(*args, **kwargs): ... + +# SCons.Script.SConscript +def Repository(*args, **kwargs): ... + +# SCons.Script.SConscript +def Requires(*args, **kwargs): ... + +# SCons.Script.SConscript +def Return(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConscript(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConscriptChdir(*args, **kwargs): ... + +# SCons.Script.SConscript +def SConsignFile(*args, **kwargs): ... + +# SCons.Scanner +Scanner: Any = ... + +# SCons.Script.Main +def SetOption(*args, **kwargs): ... + +# SCons.Script.SConscript +def SharedLibrary(*args, **kwargs): ... + +# SCons.Script.SConscript +def SharedObject(*args, **kwargs): ... + +# SCons.Script.SConscript +def SideEffect(*args, **kwargs): ... + +# SCons.Scanner +def SourceFileScanner(*args, **kwargs): ... + +# SCons.Script.SConscript +def Split(*args, **kwargs): ... + +# SCons.Script.SConscript +def StaticLibrary(*args, **kwargs): ... + +# SCons.Script.SConscript +def StaticObject(*args, **kwargs): ... + +# _io +StringIO: Any = ... + +# SCons.Script.SConscript +def Substfile(*args, **kwargs): ... + +# +TYPE_CHECKING: Any = ... + +# SCons.Script.SConscript +def Tag(*args, **kwargs): ... + +# SCons.Script.SConscript +def Tar(*args, **kwargs): ... + +# SCons.Script +TargetList: Any = ... + +# SCons.Script.SConscript +def Textfile(*args, **kwargs): ... + +# SCons.Tool +Tool: Any = ... + +# SCons.Action +def Touch(*args, **kwargs): ... + +# SCons.Script.SConscript +def TypeLibrary(*args, **kwargs): ... + +# SCons.Script.Main +def ValidateOptions(*args, **kwargs): ... + +# SCons.Script.SConscript +def Value(*args, **kwargs): ... + +# SCons.Script +def Variables(*args, **kwargs): ... + +# SCons.Script.SConscript +def VariantDir(*args, **kwargs): ... + +# SCons.Platform.virtualenv +def Virtualenv(*args, **kwargs): ... + +# SCons.Util +def WhereIs(*args, **kwargs): ... + +# SCons.Script.SConscript +def Zip(*args, **kwargs): ... + +# __future__ +annotations: Any = ... + +# +call_stack: Any = ... + +# +help_text: Any = ... + +# SCons.Script.Main +def main(*args, **kwargs): ... + +# +os: Any = ... + +# +sconscript_reading: Any = ... + +# SCons.Script +def set_missing_sconscript_error(*args, **kwargs): ... + +# +snapshot: Any = ... + +# +start_time: Any = ... +