Nuitka-winsvc 2.7.7__cp313-cp313-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of Nuitka-winsvc might be problematic. Click here for more details.
- nuitka/Builtins.py +259 -0
- nuitka/BytecodeCaching.py +184 -0
- nuitka/Bytecodes.py +109 -0
- nuitka/CacheCleanup.py +54 -0
- nuitka/Constants.py +425 -0
- nuitka/Errors.py +93 -0
- nuitka/HardImportRegistry.py +408 -0
- nuitka/MainControl.py +1201 -0
- nuitka/ModuleRegistry.py +364 -0
- nuitka/OptionParsing.py +2473 -0
- nuitka/Options.py +2948 -0
- nuitka/OutputDirectories.py +201 -0
- nuitka/PostProcessing.py +551 -0
- nuitka/Progress.py +252 -0
- nuitka/PythonFlavors.py +426 -0
- nuitka/PythonOperators.py +146 -0
- nuitka/PythonVersions.py +513 -0
- nuitka/Serialization.py +291 -0
- nuitka/SourceCodeReferences.py +176 -0
- nuitka/Tracing.py +579 -0
- nuitka/TreeXML.py +141 -0
- nuitka/Variables.py +515 -0
- nuitka/Version.py +88 -0
- nuitka/__init__.py +19 -0
- nuitka/__main__.py +224 -0
- nuitka/__past__.py +217 -0
- nuitka/build/Backend.scons +1111 -0
- nuitka/build/CCompilerVersion.scons +281 -0
- nuitka/build/DataComposerInterface.py +116 -0
- nuitka/build/Offsets.scons +626 -0
- nuitka/build/Onefile.scons +564 -0
- nuitka/build/SconsCaching.py +451 -0
- nuitka/build/SconsCompilerSettings.py +1133 -0
- nuitka/build/SconsHacks.py +215 -0
- nuitka/build/SconsInterface.py +664 -0
- nuitka/build/SconsProgress.py +100 -0
- nuitka/build/SconsSpawn.py +436 -0
- nuitka/build/SconsUtils.py +939 -0
- nuitka/build/__init__.py +19 -0
- nuitka/build/include/nuitka/allocator.h +450 -0
- nuitka/build/include/nuitka/builtins.h +97 -0
- nuitka/build/include/nuitka/calling.h +123 -0
- nuitka/build/include/nuitka/checkers.h +39 -0
- nuitka/build/include/nuitka/checksum_tools.h +28 -0
- nuitka/build/include/nuitka/compiled_asyncgen.h +281 -0
- nuitka/build/include/nuitka/compiled_cell.h +64 -0
- nuitka/build/include/nuitka/compiled_coroutine.h +271 -0
- nuitka/build/include/nuitka/compiled_frame.h +502 -0
- nuitka/build/include/nuitka/compiled_function.h +170 -0
- nuitka/build/include/nuitka/compiled_generator.h +287 -0
- nuitka/build/include/nuitka/compiled_method.h +54 -0
- nuitka/build/include/nuitka/constants.h +251 -0
- nuitka/build/include/nuitka/constants_blob.h +34 -0
- nuitka/build/include/nuitka/debug_settings.h +60 -0
- nuitka/build/include/nuitka/environment_variables.h +30 -0
- nuitka/build/include/nuitka/environment_variables_system.h +51 -0
- nuitka/build/include/nuitka/exception_groups.h +167 -0
- nuitka/build/include/nuitka/exceptions.h +1458 -0
- nuitka/build/include/nuitka/filesystem_paths.h +117 -0
- nuitka/build/include/nuitka/freelists.h +92 -0
- nuitka/build/include/nuitka/hedley.h +1774 -0
- nuitka/build/include/nuitka/helper/attributes.h +90 -0
- nuitka/build/include/nuitka/helper/boolean.h +86 -0
- nuitka/build/include/nuitka/helper/bytearrays.h +34 -0
- nuitka/build/include/nuitka/helper/bytes.h +28 -0
- nuitka/build/include/nuitka/helper/calling_generated.h +132 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_eq.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ge.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_gt.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_le.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_lt.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ne.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_eq.h +247 -0
- nuitka/build/include/nuitka/helper/comparisons_ge.h +197 -0
- nuitka/build/include/nuitka/helper/comparisons_gt.h +197 -0
- nuitka/build/include/nuitka/helper/comparisons_le.h +247 -0
- nuitka/build/include/nuitka/helper/comparisons_lt.h +247 -0
- nuitka/build/include/nuitka/helper/comparisons_ne.h +197 -0
- nuitka/build/include/nuitka/helper/complex.h +46 -0
- nuitka/build/include/nuitka/helper/dictionaries.h +481 -0
- nuitka/build/include/nuitka/helper/floats.h +32 -0
- nuitka/build/include/nuitka/helper/import_hard.h +121 -0
- nuitka/build/include/nuitka/helper/indexes.h +47 -0
- nuitka/build/include/nuitka/helper/ints.h +165 -0
- nuitka/build/include/nuitka/helper/iterators.h +376 -0
- nuitka/build/include/nuitka/helper/lists.h +94 -0
- nuitka/build/include/nuitka/helper/lists_generated.h +36 -0
- nuitka/build/include/nuitka/helper/mappings.h +39 -0
- nuitka/build/include/nuitka/helper/operations.h +114 -0
- nuitka/build/include/nuitka/helper/operations_binary_add.h +240 -0
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +108 -0
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +108 -0
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +108 -0
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +103 -0
- nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +34 -0
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +103 -0
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +99 -0
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +60 -0
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +304 -0
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +247 -0
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +125 -0
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +90 -0
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +99 -0
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +117 -0
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +103 -0
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +247 -0
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +173 -0
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +76 -0
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +76 -0
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +76 -0
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +95 -0
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +62 -0
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +60 -0
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +218 -0
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +184 -0
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +115 -0
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +87 -0
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +62 -0
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +102 -0
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +95 -0
- nuitka/build/include/nuitka/helper/raising.h +114 -0
- nuitka/build/include/nuitka/helper/rangeobjects.h +66 -0
- nuitka/build/include/nuitka/helper/richcomparisons.h +35 -0
- nuitka/build/include/nuitka/helper/sequences.h +33 -0
- nuitka/build/include/nuitka/helper/sets.h +25 -0
- nuitka/build/include/nuitka/helper/slices.h +314 -0
- nuitka/build/include/nuitka/helper/strings.h +30 -0
- nuitka/build/include/nuitka/helper/subscripts.h +390 -0
- nuitka/build/include/nuitka/helper/tuples.h +187 -0
- nuitka/build/include/nuitka/helpers.h +417 -0
- nuitka/build/include/nuitka/importing.h +149 -0
- nuitka/build/include/nuitka/incbin.h +402 -0
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +626 -0
- nuitka/build/include/nuitka/printing.h +84 -0
- nuitka/build/include/nuitka/python_pgo.h +57 -0
- nuitka/build/include/nuitka/safe_string_ops.h +57 -0
- nuitka/build/include/nuitka/threading.h +142 -0
- nuitka/build/include/nuitka/tracing.h +82 -0
- nuitka/build/include/nuitka/type_aliases.h +30 -0
- nuitka/build/include/nuitka/unfreezing.h +91 -0
- nuitka/build/inline_copy/appdirs/LICENSE.txt +23 -0
- nuitka/build/inline_copy/appdirs/appdirs.py +611 -0
- nuitka/build/inline_copy/atomicwrites/LICENSE +19 -0
- nuitka/build/inline_copy/atomicwrites/atomicwrites.py +226 -0
- nuitka/build/inline_copy/bin/scons.py +58 -0
- nuitka/build/inline_copy/clcache/clcache/LICENSE +30 -0
- nuitka/build/inline_copy/clcache/clcache/__init__.py +4 -0
- nuitka/build/inline_copy/clcache/clcache/caching.py +2008 -0
- nuitka/build/inline_copy/colorama/LICENSE.txt +27 -0
- nuitka/build/inline_copy/colorama/colorama/__init__.py +6 -0
- nuitka/build/inline_copy/colorama/colorama/ansi.py +102 -0
- nuitka/build/inline_copy/colorama/colorama/ansitowin32.py +258 -0
- nuitka/build/inline_copy/colorama/colorama/initialise.py +80 -0
- nuitka/build/inline_copy/colorama/colorama/win32.py +152 -0
- nuitka/build/inline_copy/colorama/colorama/winterm.py +169 -0
- nuitka/build/inline_copy/glob2/LICENSE +27 -0
- nuitka/build/inline_copy/glob2/glob2/__init__.py +5 -0
- nuitka/build/inline_copy/glob2/glob2/compat.py +167 -0
- nuitka/build/inline_copy/glob2/glob2/fnmatch.py +141 -0
- nuitka/build/inline_copy/glob2/glob2/impl.py +216 -0
- nuitka/build/inline_copy/jinja2/LICENSE.rst +28 -0
- nuitka/build/inline_copy/jinja2/README.rst +2 -0
- nuitka/build/inline_copy/jinja2/jinja2/__init__.py +72 -0
- nuitka/build/inline_copy/jinja2/jinja2/_compat.py +105 -0
- nuitka/build/inline_copy/jinja2/jinja2/_identifier.py +2 -0
- nuitka/build/inline_copy/jinja2/jinja2/bccache.py +361 -0
- nuitka/build/inline_copy/jinja2/jinja2/compiler.py +1721 -0
- nuitka/build/inline_copy/jinja2/jinja2/constants.py +32 -0
- nuitka/build/inline_copy/jinja2/jinja2/debug.py +378 -0
- nuitka/build/inline_copy/jinja2/jinja2/defaults.py +56 -0
- nuitka/build/inline_copy/jinja2/jinja2/environment.py +1276 -0
- nuitka/build/inline_copy/jinja2/jinja2/exceptions.py +146 -0
- nuitka/build/inline_copy/jinja2/jinja2/ext.py +627 -0
- nuitka/build/inline_copy/jinja2/jinja2/filters.py +1190 -0
- nuitka/build/inline_copy/jinja2/jinja2/idtracking.py +286 -0
- nuitka/build/inline_copy/jinja2/jinja2/lexer.py +739 -0
- nuitka/build/inline_copy/jinja2/jinja2/loaders.py +483 -0
- nuitka/build/inline_copy/jinja2/jinja2/meta.py +106 -0
- nuitka/build/inline_copy/jinja2/jinja2/nativetypes.py +220 -0
- nuitka/build/inline_copy/jinja2/jinja2/nodes.py +999 -0
- nuitka/build/inline_copy/jinja2/jinja2/optimizer.py +49 -0
- nuitka/build/inline_copy/jinja2/jinja2/parser.py +903 -0
- nuitka/build/inline_copy/jinja2/jinja2/runtime.py +808 -0
- nuitka/build/inline_copy/jinja2/jinja2/sandbox.py +488 -0
- nuitka/build/inline_copy/jinja2/jinja2/tests.py +174 -0
- nuitka/build/inline_copy/jinja2/jinja2/utils.py +642 -0
- nuitka/build/inline_copy/jinja2/jinja2/visitor.py +87 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Action.py +1475 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Builder.py +905 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/CacheDir.py +314 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Conftest.py +805 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Debug.py +251 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Defaults.py +646 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Environment.py +2561 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/EnvironmentValues.py +119 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Errors.py +222 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Executor.py +660 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Job.py +439 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Memoize.py +242 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Node/Alias.py +176 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Node/FS.py +3861 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Node/Python.py +195 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Node/__init__.py +1784 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/PathList.py +224 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/__init__.py +341 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/aix.py +81 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/cygwin.py +61 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/darwin.py +70 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/hpux.py +45 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/irix.py +41 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/mingw.py +33 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/os2.py +55 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/posix.py +124 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/sunos.py +47 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/virtualenv.py +115 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Platform/win32.py +429 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/SConf.py +1119 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/SConsign.py +453 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Scanner/C.py +226 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Scanner/Dir.py +131 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Scanner/Prog.py +114 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Scanner/RC.py +57 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Scanner/__init__.py +436 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Script/Interactive.py +372 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Script/Main.py +1469 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Script/SConsOptions.py +1071 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Script/SConscript.py +686 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Script/__init__.py +425 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Subst.py +979 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Taskmaster.py +1062 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/386asm.py +61 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/GettextCommon.py +429 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/__init__.py +52 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/arch.py +66 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/common.py +371 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/netframework.py +83 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/sdk.py +411 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/vc.py +994 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/MSCommon/vs.py +608 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/PharLapCommon.py +116 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/__init__.py +882 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/aixc++.py +43 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/aixcc.py +74 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/aixcxx.py +77 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/aixlink.py +78 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/applelink.py +209 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/ar.py +63 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/as.py +49 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/asm.py +78 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/bcc32.py +81 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/c++.py +44 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/cc.py +105 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/clang.py +91 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/clangCommon/__init__.py +18 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/clangxx.py +99 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/cxx.py +95 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/cyglink.py +212 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/default.py +50 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/filesystem.py +98 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/g++.py +45 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/gas.py +56 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/gcc.py +110 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/gettext_tool.py +69 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/gnulink.py +70 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/gxx.py +78 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/hpc++.py +45 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/hpcc.py +53 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/hpcxx.py +88 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/hplink.py +72 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/icc.py +59 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/icl.py +52 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/ilink.py +55 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/ilink32.py +60 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/install.py +510 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/intelc.py +617 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/link.py +72 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/linkCommon/LoadableModule.py +131 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/linkCommon/SharedLibrary.py +218 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/linkCommon/__init__.py +171 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/linkloc.py +112 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/m4.py +63 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/masm.py +77 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mingw.py +232 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/msgfmt.py +132 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/msginit.py +137 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/msgmerge.py +125 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mslib.py +73 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mslink.py +339 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mssdk.py +50 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/msvc.py +325 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/msvs.py +2116 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mwcc.py +207 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/mwld.py +108 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/nasm.py +72 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/rmic.py +139 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/rpcgen.py +70 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sgiar.py +68 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sgic++.py +43 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sgicc.py +53 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sgicxx.py +61 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sgilink.py +59 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sunar.py +64 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sunc++.py +45 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/suncc.py +58 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/suncxx.py +153 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/sunlink.py +79 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/tar.py +73 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/textfile.py +198 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/tlib.py +53 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/wix.py +104 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/xgettext.py +337 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Tool/zip.py +120 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Util.py +2134 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Utilities/ConfigureCache.py +171 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Utilities/__init__.py +0 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Utilities/sconsign.py +494 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/BoolVariable.py +96 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/EnumVariable.py +110 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/ListVariable.py +152 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/PackageVariable.py +107 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/PathVariable.py +158 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/__init__.py +334 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Warnings.py +238 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/__init__.py +9 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/compat/__init__.py +104 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/compat/_scons_dbm.py +42 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/compat/win32.py +101 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/cpp.py +640 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/dblite.py +295 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/exitfuncs.py +59 -0
- nuitka/build/inline_copy/markupsafe/LICENSE.rst +28 -0
- nuitka/build/inline_copy/markupsafe/markupsafe/__init__.py +327 -0
- nuitka/build/inline_copy/markupsafe/markupsafe/_compat.py +33 -0
- nuitka/build/inline_copy/markupsafe/markupsafe/_constants.py +264 -0
- nuitka/build/inline_copy/markupsafe/markupsafe/_native.py +69 -0
- nuitka/build/inline_copy/pefile/LICENSE.txt +21 -0
- nuitka/build/inline_copy/pefile/ordlookup/__init__.py +41 -0
- nuitka/build/inline_copy/pefile/ordlookup/oleaut32.py +400 -0
- nuitka/build/inline_copy/pefile/ordlookup/ws2_32.py +120 -0
- nuitka/build/inline_copy/pefile/pefile.py +8034 -0
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +3272 -0
- nuitka/build/inline_copy/pkg_resources/pkg_resources/py31compat.py +21 -0
- nuitka/build/inline_copy/python_hacl/LICENSE.txt +201 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.c +1430 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.c +463 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.c +1273 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.h +204 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.c +734 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.h +131 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Streaming_Types.h +83 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt128_Verified.h +346 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt_8_16_32_64.h +107 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/fstar_uint128_struct_endianness.h +68 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/internal/target.h +293 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/lowstar_endianness.h +231 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/types.h +14 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_MD5.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA1.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA2.h +164 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA3.h +65 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/python_hacl_namespaces.h +89 -0
- nuitka/build/inline_copy/stubgen/astunparse.py +938 -0
- nuitka/build/inline_copy/stubgen/six.py +998 -0
- nuitka/build/inline_copy/stubgen/stubgen.py +484 -0
- nuitka/build/inline_copy/tqdm/tqdm/__init__.py +40 -0
- nuitka/build/inline_copy/tqdm/tqdm/_main.py +9 -0
- nuitka/build/inline_copy/tqdm/tqdm/_monitor.py +97 -0
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm.py +9 -0
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_notebook.py +9 -0
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_pandas.py +24 -0
- nuitka/build/inline_copy/tqdm/tqdm/_utils.py +12 -0
- nuitka/build/inline_copy/tqdm/tqdm/auto.py +44 -0
- nuitka/build/inline_copy/tqdm/tqdm/autonotebook.py +28 -0
- nuitka/build/inline_copy/tqdm/tqdm/dask.py +46 -0
- nuitka/build/inline_copy/tqdm/tqdm/notebook.py +316 -0
- nuitka/build/inline_copy/tqdm/tqdm/std.py +1524 -0
- nuitka/build/inline_copy/tqdm/tqdm/tk.py +207 -0
- nuitka/build/inline_copy/tqdm/tqdm/utils.py +351 -0
- nuitka/build/inline_copy/tqdm/tqdm/version.py +2 -0
- nuitka/build/inline_copy/yaml/LICENSE +20 -0
- nuitka/build/inline_copy/yaml/yaml/__init__.py +427 -0
- nuitka/build/inline_copy/yaml/yaml/composer.py +139 -0
- nuitka/build/inline_copy/yaml/yaml/constructor.py +748 -0
- nuitka/build/inline_copy/yaml/yaml/cyaml.py +101 -0
- nuitka/build/inline_copy/yaml/yaml/dumper.py +62 -0
- nuitka/build/inline_copy/yaml/yaml/emitter.py +1137 -0
- nuitka/build/inline_copy/yaml/yaml/error.py +75 -0
- nuitka/build/inline_copy/yaml/yaml/events.py +86 -0
- nuitka/build/inline_copy/yaml/yaml/loader.py +63 -0
- nuitka/build/inline_copy/yaml/yaml/nodes.py +49 -0
- nuitka/build/inline_copy/yaml/yaml/parser.py +589 -0
- nuitka/build/inline_copy/yaml/yaml/reader.py +185 -0
- nuitka/build/inline_copy/yaml/yaml/representer.py +389 -0
- nuitka/build/inline_copy/yaml/yaml/resolver.py +227 -0
- nuitka/build/inline_copy/yaml/yaml/scanner.py +1435 -0
- nuitka/build/inline_copy/yaml/yaml/serializer.py +111 -0
- nuitka/build/inline_copy/yaml/yaml/tokens.py +104 -0
- nuitka/build/inline_copy/zlib/LICENSE +22 -0
- nuitka/build/inline_copy/zlib/crc32.c +1049 -0
- nuitka/build/inline_copy/zlib/crc32.h +9446 -0
- nuitka/build/inline_copy/zlib/zconf.h +551 -0
- nuitka/build/inline_copy/zlib/zlib.h +1938 -0
- nuitka/build/inline_copy/zlib/zutil.h +275 -0
- nuitka/build/inline_copy/zstd/LICENSE.txt +30 -0
- nuitka/build/inline_copy/zstd/common/bitstream.h +463 -0
- nuitka/build/inline_copy/zstd/common/compiler.h +288 -0
- nuitka/build/inline_copy/zstd/common/cpu.h +213 -0
- nuitka/build/inline_copy/zstd/common/debug.h +107 -0
- nuitka/build/inline_copy/zstd/common/entropy_common.c +360 -0
- nuitka/build/inline_copy/zstd/common/error_private.c +56 -0
- nuitka/build/inline_copy/zstd/common/error_private.h +80 -0
- nuitka/build/inline_copy/zstd/common/fse.h +715 -0
- nuitka/build/inline_copy/zstd/common/fse_decompress.c +393 -0
- nuitka/build/inline_copy/zstd/common/huf.h +361 -0
- nuitka/build/inline_copy/zstd/common/mem.h +426 -0
- nuitka/build/inline_copy/zstd/common/xxhash.c +826 -0
- nuitka/build/inline_copy/zstd/common/xxhash.h +285 -0
- nuitka/build/inline_copy/zstd/common/zstd_common.c +83 -0
- nuitka/build/inline_copy/zstd/common/zstd_deps.h +111 -0
- nuitka/build/inline_copy/zstd/common/zstd_errors.h +95 -0
- nuitka/build/inline_copy/zstd/common/zstd_internal.h +478 -0
- nuitka/build/inline_copy/zstd/decompress/huf_decompress.c +1350 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_ddict.c +244 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_ddict.h +44 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_decompress.c +1930 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_decompress_block.c +1540 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_decompress_block.h +62 -0
- nuitka/build/inline_copy/zstd/decompress/zstd_decompress_internal.h +190 -0
- nuitka/build/inline_copy/zstd/zstd.h +2391 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +2211 -0
- nuitka/build/static_src/CompiledCellType.c +300 -0
- nuitka/build/static_src/CompiledCodeHelpers.c +2160 -0
- nuitka/build/static_src/CompiledCoroutineType.c +1946 -0
- nuitka/build/static_src/CompiledFrameType.c +1337 -0
- nuitka/build/static_src/CompiledFunctionType.c +3320 -0
- nuitka/build/static_src/CompiledGeneratorType.c +1997 -0
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +2117 -0
- nuitka/build/static_src/CompiledMethodType.c +614 -0
- nuitka/build/static_src/GenerateHeadersMain.c +30 -0
- nuitka/build/static_src/HelpersAllocator.c +939 -0
- nuitka/build/static_src/HelpersAttributes.c +1241 -0
- nuitka/build/static_src/HelpersBuiltin.c +901 -0
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +3594 -0
- nuitka/build/static_src/HelpersBytes.c +107 -0
- nuitka/build/static_src/HelpersCalling.c +397 -0
- nuitka/build/static_src/HelpersCallingGenerated.c +14361 -0
- nuitka/build/static_src/HelpersChecksumTools.c +59 -0
- nuitka/build/static_src/HelpersClasses.c +91 -0
- nuitka/build/static_src/HelpersComparisonDualEq.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualGe.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualGt.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualLe.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualLt.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualNe.c +121 -0
- nuitka/build/static_src/HelpersComparisonEq.c +12070 -0
- nuitka/build/static_src/HelpersComparisonEqUtils.c +169 -0
- nuitka/build/static_src/HelpersComparisonGe.c +11871 -0
- nuitka/build/static_src/HelpersComparisonGt.c +11855 -0
- nuitka/build/static_src/HelpersComparisonLe.c +11957 -0
- nuitka/build/static_src/HelpersComparisonLt.c +11941 -0
- nuitka/build/static_src/HelpersComparisonNe.c +11979 -0
- nuitka/build/static_src/HelpersConsole.c +124 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +1487 -0
- nuitka/build/static_src/HelpersDeepcopy.c +636 -0
- nuitka/build/static_src/HelpersDictionaries.c +1739 -0
- nuitka/build/static_src/HelpersDictionariesGenerated.c +738 -0
- nuitka/build/static_src/HelpersDumpBacktraces.c +63 -0
- nuitka/build/static_src/HelpersEnvironmentVariables.c +65 -0
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +97 -0
- nuitka/build/static_src/HelpersExceptions.c +298 -0
- nuitka/build/static_src/HelpersFiles.c +353 -0
- nuitka/build/static_src/HelpersFilesystemPaths.c +1322 -0
- nuitka/build/static_src/HelpersFloats.c +92 -0
- nuitka/build/static_src/HelpersHeapStorage.c +68 -0
- nuitka/build/static_src/HelpersImport.c +506 -0
- nuitka/build/static_src/HelpersImportHard.c +526 -0
- nuitka/build/static_src/HelpersJitSources.c +48 -0
- nuitka/build/static_src/HelpersLists.c +899 -0
- nuitka/build/static_src/HelpersListsGenerated.c +564 -0
- nuitka/build/static_src/HelpersMappings.c +46 -0
- nuitka/build/static_src/HelpersMatching.c +192 -0
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +6477 -0
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +703 -0
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +2738 -0
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +2738 -0
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +2738 -0
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +2406 -0
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +33 -0
- nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +172 -0
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +2422 -0
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +220 -0
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +2846 -0
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +453 -0
- nuitka/build/static_src/HelpersOperationBinaryMod.c +6549 -0
- nuitka/build/static_src/HelpersOperationBinaryMult.c +6438 -0
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +125 -0
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +2355 -0
- nuitka/build/static_src/HelpersOperationBinaryPow.c +2743 -0
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +26 -0
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +2706 -0
- nuitka/build/static_src/HelpersOperationBinarySub.c +2649 -0
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +2415 -0
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +5211 -0
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +144 -0
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +1826 -0
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +1826 -0
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +1826 -0
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +2605 -0
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +1594 -0
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +603 -0
- nuitka/build/static_src/HelpersOperationInplaceMod.c +4762 -0
- nuitka/build/static_src/HelpersOperationInplaceMult.c +4689 -0
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +2553 -0
- nuitka/build/static_src/HelpersOperationInplacePow.c +2807 -0
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +1534 -0
- nuitka/build/static_src/HelpersOperationInplaceSub.c +2894 -0
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +2612 -0
- nuitka/build/static_src/HelpersProfiling.c +104 -0
- nuitka/build/static_src/HelpersPythonPgo.c +113 -0
- nuitka/build/static_src/HelpersRaising.c +447 -0
- nuitka/build/static_src/HelpersSafeStrings.c +185 -0
- nuitka/build/static_src/HelpersSequences.c +134 -0
- nuitka/build/static_src/HelpersSlices.c +73 -0
- nuitka/build/static_src/HelpersStrings.c +998 -0
- nuitka/build/static_src/HelpersTuples.c +148 -0
- nuitka/build/static_src/HelpersTypes.c +329 -0
- nuitka/build/static_src/InspectPatcher.c +439 -0
- nuitka/build/static_src/MainProgram.c +2060 -0
- nuitka/build/static_src/MetaPathBasedLoader.c +2290 -0
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +125 -0
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +158 -0
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +785 -0
- nuitka/build/static_src/OnefileBootstrap.c +1580 -0
- nuitka/build/static_src/OnefileSplashScreen.cpp +275 -0
- nuitka/code_generation/AsyncgenCodes.py +186 -0
- nuitka/code_generation/AttributeCodes.py +357 -0
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +720 -0
- nuitka/code_generation/BranchCodes.py +67 -0
- nuitka/code_generation/BuiltinCodes.py +529 -0
- nuitka/code_generation/CallCodes.py +1186 -0
- nuitka/code_generation/ClassCodes.py +156 -0
- nuitka/code_generation/CodeGeneration.py +1078 -0
- nuitka/code_generation/CodeHelperSelection.py +81 -0
- nuitka/code_generation/CodeHelpers.py +455 -0
- nuitka/code_generation/CodeObjectCodes.py +165 -0
- nuitka/code_generation/ComparisonCodes.py +569 -0
- nuitka/code_generation/ComparisonHelperDefinitions.py +146 -0
- nuitka/code_generation/ConditionalCodes.py +236 -0
- nuitka/code_generation/ConstantCodes.py +243 -0
- nuitka/code_generation/Contexts.py +1248 -0
- nuitka/code_generation/CoroutineCodes.py +253 -0
- nuitka/code_generation/CtypesCodes.py +46 -0
- nuitka/code_generation/DictCodes.py +918 -0
- nuitka/code_generation/Emission.py +75 -0
- nuitka/code_generation/ErrorCodes.py +281 -0
- nuitka/code_generation/EvalCodes.py +444 -0
- nuitka/code_generation/ExceptionCodes.py +337 -0
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +227 -0
- nuitka/code_generation/ExpressionCodes.py +61 -0
- nuitka/code_generation/FrameCodes.py +518 -0
- nuitka/code_generation/FunctionCodes.py +858 -0
- nuitka/code_generation/GeneratorCodes.py +218 -0
- nuitka/code_generation/GlobalConstants.py +249 -0
- nuitka/code_generation/GlobalsLocalsCodes.py +211 -0
- nuitka/code_generation/IdCodes.py +53 -0
- nuitka/code_generation/ImportCodes.py +468 -0
- nuitka/code_generation/Indentation.py +45 -0
- nuitka/code_generation/IndexCodes.py +50 -0
- nuitka/code_generation/InjectCCodes.py +28 -0
- nuitka/code_generation/IntegerCodes.py +110 -0
- nuitka/code_generation/IteratorCodes.py +378 -0
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +68 -0
- nuitka/code_generation/LineNumberCodes.py +91 -0
- nuitka/code_generation/ListCodes.py +502 -0
- nuitka/code_generation/LoaderCodes.py +193 -0
- nuitka/code_generation/LocalsDictCodes.py +359 -0
- nuitka/code_generation/LoopCodes.py +88 -0
- nuitka/code_generation/MatchCodes.py +67 -0
- nuitka/code_generation/ModuleCodes.py +247 -0
- nuitka/code_generation/Namify.py +260 -0
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +398 -0
- nuitka/code_generation/PackageResourceCodes.py +986 -0
- nuitka/code_generation/PrintCodes.py +93 -0
- nuitka/code_generation/PythonAPICodes.py +215 -0
- nuitka/code_generation/RaisingCodes.py +481 -0
- nuitka/code_generation/Reports.py +115 -0
- nuitka/code_generation/ReturnCodes.py +143 -0
- nuitka/code_generation/SetCodes.py +196 -0
- nuitka/code_generation/SliceCodes.py +465 -0
- nuitka/code_generation/StringCodes.py +303 -0
- nuitka/code_generation/SubscriptCodes.py +263 -0
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TryCodes.py +326 -0
- nuitka/code_generation/TupleCodes.py +115 -0
- nuitka/code_generation/TypeAliasCodes.py +120 -0
- nuitka/code_generation/VariableCodes.py +519 -0
- nuitka/code_generation/VariableDeclarations.py +279 -0
- nuitka/code_generation/YieldCodes.py +253 -0
- nuitka/code_generation/__init__.py +19 -0
- nuitka/code_generation/c_types/CTypeBases.py +177 -0
- nuitka/code_generation/c_types/CTypeBooleans.py +104 -0
- nuitka/code_generation/c_types/CTypeCFloats.py +57 -0
- nuitka/code_generation/c_types/CTypeCLongs.py +45 -0
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +109 -0
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +150 -0
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +200 -0
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +107 -0
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +572 -0
- nuitka/code_generation/c_types/CTypeVoids.py +92 -0
- nuitka/code_generation/c_types/__init__.py +19 -0
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +106 -0
- nuitka/code_generation/templates/CodeTemplatesConstants.py +296 -0
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +109 -0
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +84 -0
- nuitka/code_generation/templates/CodeTemplatesFrames.py +235 -0
- nuitka/code_generation/templates/CodeTemplatesFunction.py +117 -0
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +130 -0
- nuitka/code_generation/templates/CodeTemplatesIterators.py +40 -0
- nuitka/code_generation/templates/CodeTemplatesLoader.py +180 -0
- nuitka/code_generation/templates/CodeTemplatesModules.py +710 -0
- nuitka/code_generation/templates/CodeTemplatesVariables.py +388 -0
- nuitka/code_generation/templates/TemplateDebugWrapper.py +80 -0
- nuitka/code_generation/templates/__init__.py +19 -0
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +321 -0
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +143 -0
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +677 -0
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +165 -0
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +38 -0
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +41 -0
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +53 -0
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +364 -0
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +37 -0
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +53 -0
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +20 -0
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +148 -0
- nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +352 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +86 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +31 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +32 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +112 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +157 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +99 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +281 -0
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +420 -0
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +51 -0
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +71 -0
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +327 -0
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +411 -0
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +59 -0
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +229 -0
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +47 -0
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +55 -0
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +58 -0
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +62 -0
- nuitka/containers/Namedtuples.py +51 -0
- nuitka/containers/OrderedDicts.py +191 -0
- nuitka/containers/OrderedSets.py +123 -0
- nuitka/containers/OrderedSetsFallback.py +139 -0
- nuitka/containers/__init__.py +19 -0
- nuitka/distutils/Build.py +76 -0
- nuitka/distutils/DistutilCommands.py +438 -0
- nuitka/distutils/__init__.py +19 -0
- nuitka/finalizations/Finalization.py +35 -0
- nuitka/finalizations/FinalizeMarkups.py +136 -0
- nuitka/finalizations/__init__.py +19 -0
- nuitka/freezer/DependsExe.py +257 -0
- nuitka/freezer/DllDependenciesCommon.py +97 -0
- nuitka/freezer/DllDependenciesMacOS.py +444 -0
- nuitka/freezer/DllDependenciesPosix.py +242 -0
- nuitka/freezer/DllDependenciesWin32.py +315 -0
- nuitka/freezer/ImportDetection.py +359 -0
- nuitka/freezer/IncludedDataFiles.py +689 -0
- nuitka/freezer/IncludedEntryPoints.py +376 -0
- nuitka/freezer/Onefile.py +296 -0
- nuitka/freezer/Standalone.py +520 -0
- nuitka/freezer/__init__.py +19 -0
- nuitka/importing/IgnoreListing.py +449 -0
- nuitka/importing/ImportCache.py +95 -0
- nuitka/importing/ImportResolving.py +186 -0
- nuitka/importing/Importing.py +1200 -0
- nuitka/importing/PreloadedPackages.py +164 -0
- nuitka/importing/Recursion.py +611 -0
- nuitka/importing/StandardLibrary.py +429 -0
- nuitka/importing/__init__.py +19 -0
- nuitka/nodes/AsyncgenNodes.py +107 -0
- nuitka/nodes/AttributeLookupNodes.py +124 -0
- nuitka/nodes/AttributeNodes.py +386 -0
- nuitka/nodes/AttributeNodesGenerated.py +10734 -0
- nuitka/nodes/BuiltinAllNodes.py +115 -0
- nuitka/nodes/BuiltinAnyNodes.py +124 -0
- nuitka/nodes/BuiltinComplexNodes.py +83 -0
- nuitka/nodes/BuiltinDecodingNodes.py +52 -0
- nuitka/nodes/BuiltinDecoratorNodes.py +85 -0
- nuitka/nodes/BuiltinDictNodes.py +140 -0
- nuitka/nodes/BuiltinFormatNodes.py +159 -0
- nuitka/nodes/BuiltinHashNodes.py +63 -0
- nuitka/nodes/BuiltinInputNodes.py +39 -0
- nuitka/nodes/BuiltinIntegerNodes.py +170 -0
- nuitka/nodes/BuiltinIteratorNodes.py +391 -0
- nuitka/nodes/BuiltinLenNodes.py +61 -0
- nuitka/nodes/BuiltinNextNodes.py +111 -0
- nuitka/nodes/BuiltinOpenNodes.py +148 -0
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +7367 -0
- nuitka/nodes/BuiltinRangeNodes.py +690 -0
- nuitka/nodes/BuiltinRefNodes.py +314 -0
- nuitka/nodes/BuiltinSumNodes.py +104 -0
- nuitka/nodes/BuiltinTypeNodes.py +454 -0
- nuitka/nodes/BuiltinVarsNodes.py +44 -0
- nuitka/nodes/BytesNodes.py +829 -0
- nuitka/nodes/CallNodes.py +217 -0
- nuitka/nodes/Checkers.py +55 -0
- nuitka/nodes/ChildrenHavingMixins.py +21576 -0
- nuitka/nodes/ClassNodes.py +286 -0
- nuitka/nodes/CodeObjectSpecs.py +230 -0
- nuitka/nodes/ComparisonNodes.py +687 -0
- nuitka/nodes/ConditionalNodes.py +884 -0
- nuitka/nodes/ConstantRefNodes.py +1717 -0
- nuitka/nodes/ContainerMakingNodes.py +408 -0
- nuitka/nodes/ContainerOperationNodes.py +87 -0
- nuitka/nodes/CoroutineNodes.py +144 -0
- nuitka/nodes/CtypesNodes.py +51 -0
- nuitka/nodes/DictionaryNodes.py +1513 -0
- nuitka/nodes/ExceptionNodes.py +393 -0
- nuitka/nodes/ExecEvalNodes.py +229 -0
- nuitka/nodes/ExpressionBases.py +1301 -0
- nuitka/nodes/ExpressionBasesGenerated.py +2103 -0
- nuitka/nodes/ExpressionShapeMixins.py +886 -0
- nuitka/nodes/FrameNodes.py +413 -0
- nuitka/nodes/FunctionAttributeNodes.py +102 -0
- nuitka/nodes/FunctionNodes.py +1303 -0
- nuitka/nodes/FutureSpecs.py +224 -0
- nuitka/nodes/GeneratorNodes.py +201 -0
- nuitka/nodes/GlobalsLocalsNodes.py +209 -0
- nuitka/nodes/HardImportNodesGenerated.py +3599 -0
- nuitka/nodes/ImportHardNodes.py +185 -0
- nuitka/nodes/ImportNodes.py +1366 -0
- nuitka/nodes/IndicatorMixins.py +79 -0
- nuitka/nodes/InjectCNodes.py +51 -0
- nuitka/nodes/IterationHandles.py +407 -0
- nuitka/nodes/KeyValuePairNodes.py +378 -0
- nuitka/nodes/ListOperationNodes.py +525 -0
- nuitka/nodes/LocalsDictNodes.py +717 -0
- nuitka/nodes/LocalsScopes.py +505 -0
- nuitka/nodes/LoopNodes.py +445 -0
- nuitka/nodes/MatchNodes.py +60 -0
- nuitka/nodes/ModuleAttributeNodes.py +180 -0
- nuitka/nodes/ModuleNodes.py +1137 -0
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/NodeBases.py +890 -0
- nuitka/nodes/NodeMakingHelpers.py +481 -0
- nuitka/nodes/NodeMetaClasses.py +172 -0
- nuitka/nodes/OperatorNodes.py +944 -0
- nuitka/nodes/OperatorNodesUnary.py +403 -0
- nuitka/nodes/OsSysNodes.py +215 -0
- nuitka/nodes/OutlineNodes.py +372 -0
- nuitka/nodes/PackageMetadataNodes.py +982 -0
- nuitka/nodes/PackageResourceNodes.py +424 -0
- nuitka/nodes/PrintNodes.py +105 -0
- nuitka/nodes/ReturnNodes.py +255 -0
- nuitka/nodes/SideEffectNodes.py +139 -0
- nuitka/nodes/SliceNodes.py +386 -0
- nuitka/nodes/StatementBasesGenerated.py +3419 -0
- nuitka/nodes/StatementNodes.py +316 -0
- nuitka/nodes/StrNodes.py +919 -0
- nuitka/nodes/StringConcatenationNodes.py +103 -0
- nuitka/nodes/SubscriptNodes.py +245 -0
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +519 -0
- nuitka/nodes/TypeMatchNodes.py +65 -0
- nuitka/nodes/TypeNodes.py +390 -0
- nuitka/nodes/VariableAssignNodes.py +1177 -0
- nuitka/nodes/VariableDelNodes.py +320 -0
- nuitka/nodes/VariableNameNodes.py +153 -0
- nuitka/nodes/VariableRefNodes.py +895 -0
- nuitka/nodes/VariableReleaseNodes.py +153 -0
- nuitka/nodes/YieldNodes.py +121 -0
- nuitka/nodes/__init__.py +19 -0
- nuitka/nodes/shapes/BuiltinTypeShapes.py +4290 -0
- nuitka/nodes/shapes/ControlFlowDescriptions.py +199 -0
- nuitka/nodes/shapes/IteratorShapes.py +71 -0
- nuitka/nodes/shapes/ShapeMixins.py +255 -0
- nuitka/nodes/shapes/StandardShapes.py +1384 -0
- nuitka/nodes/shapes/__init__.py +19 -0
- nuitka/optimizations/BytecodeDemotion.py +105 -0
- nuitka/optimizations/FunctionInlining.py +110 -0
- nuitka/optimizations/Graphs.py +70 -0
- nuitka/optimizations/Optimization.py +363 -0
- nuitka/optimizations/OptimizeBuiltinCalls.py +1582 -0
- nuitka/optimizations/Tags.py +76 -0
- nuitka/optimizations/TraceCollections.py +1257 -0
- nuitka/optimizations/ValueTraces.py +980 -0
- nuitka/optimizations/__init__.py +19 -0
- nuitka/pgo/PGO.py +160 -0
- nuitka/pgo/__init__.py +19 -0
- nuitka/plugins/PluginBase.py +1924 -0
- nuitka/plugins/Plugins.py +2007 -0
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +19 -0
- nuitka/plugins/standard/AntiBloatPlugin.py +1024 -0
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +95 -0
- nuitka/plugins/standard/DataFilesPlugin.py +311 -0
- nuitka/plugins/standard/DelvewheelPlugin.py +150 -0
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +37 -0
- nuitka/plugins/standard/DillPlugin/cloudpickle-postLoad.py +67 -0
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +223 -0
- nuitka/plugins/standard/DillPlugin.py +137 -0
- nuitka/plugins/standard/DllFilesPlugin.py +527 -0
- nuitka/plugins/standard/EnumPlugin.py +64 -0
- nuitka/plugins/standard/EventletPlugin.py +57 -0
- nuitka/plugins/standard/GeventPlugin.py +64 -0
- nuitka/plugins/standard/GiPlugin.py +118 -0
- nuitka/plugins/standard/GlfwPlugin.py +138 -0
- nuitka/plugins/standard/ImplicitImports.py +845 -0
- nuitka/plugins/standard/KivyPlugin.py +141 -0
- nuitka/plugins/standard/MatplotlibPlugin.py +256 -0
- nuitka/plugins/standard/MultiprocessingPlugin.py +199 -0
- nuitka/plugins/standard/NumpyPlugin.py +35 -0
- nuitka/plugins/standard/OptionsNannyPlugin.py +158 -0
- nuitka/plugins/standard/PbrPlugin.py +62 -0
- nuitka/plugins/standard/PkgResourcesPlugin.py +162 -0
- nuitka/plugins/standard/PlaywrightPlugin.py +179 -0
- nuitka/plugins/standard/PmwPlugin.py +248 -0
- nuitka/plugins/standard/PySidePyQtPlugin.py +1666 -0
- nuitka/plugins/standard/PywebViewPlugin.py +81 -0
- nuitka/plugins/standard/SpacyPlugin.py +137 -0
- nuitka/plugins/standard/TensorflowPlugin.py +35 -0
- nuitka/plugins/standard/TkinterPlugin.py +416 -0
- nuitka/plugins/standard/TorchPlugin.py +35 -0
- nuitka/plugins/standard/TransformersPlugin.py +121 -0
- nuitka/plugins/standard/TrioPlugin.py +33 -0
- nuitka/plugins/standard/UpxPlugin.py +174 -0
- nuitka/plugins/standard/__init__.py +19 -0
- nuitka/plugins/standard/standard.nuitka-package.config.yml +9313 -0
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +78 -0
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +468 -0
- nuitka/reports/CompilationReportReader.py +83 -0
- nuitka/reports/LicenseReport.rst.j2 +41 -0
- nuitka/reports/Reports.py +961 -0
- nuitka/reports/__init__.py +19 -0
- nuitka/specs/BuiltinBytesOperationSpecs.py +180 -0
- nuitka/specs/BuiltinDictOperationSpecs.py +82 -0
- nuitka/specs/BuiltinListOperationSpecs.py +80 -0
- nuitka/specs/BuiltinParameterSpecs.py +831 -0
- nuitka/specs/BuiltinStrOperationSpecs.py +181 -0
- nuitka/specs/BuiltinTypeOperationSpecs.py +34 -0
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +123 -0
- nuitka/specs/HardImportSpecs.py +236 -0
- nuitka/specs/ParameterSpecs.py +630 -0
- nuitka/specs/__init__.py +19 -0
- nuitka/tools/Basics.py +55 -0
- nuitka/tools/__init__.py +19 -0
- nuitka/tools/commercial/__init__.py +21 -0
- nuitka/tools/data_composer/DataComposer.py +593 -0
- nuitka/tools/data_composer/__init__.py +19 -0
- nuitka/tools/data_composer/__main__.py +41 -0
- nuitka/tools/environments/CreateEnvironment.py +69 -0
- nuitka/tools/environments/Virtualenv.py +158 -0
- nuitka/tools/environments/__init__.py +19 -0
- nuitka/tools/general/__init__.py +19 -0
- nuitka/tools/general/dll_report/__init__.py +19 -0
- nuitka/tools/general/dll_report/__main__.py +83 -0
- nuitka/tools/general/find_module/FindModuleCode.py +127 -0
- nuitka/tools/general/find_module/__init__.py +19 -0
- nuitka/tools/general/generate_header/GenerateHeader.py +73 -0
- nuitka/tools/general/generate_header/__init__.py +19 -0
- nuitka/tools/onefile_compressor/OnefileCompressor.py +390 -0
- nuitka/tools/onefile_compressor/__init__.py +19 -0
- nuitka/tools/onefile_compressor/__main__.py +41 -0
- nuitka/tools/podman/Podman.py +55 -0
- nuitka/tools/podman/__init__.py +19 -0
- nuitka/tools/podman/__main__.py +425 -0
- nuitka/tools/profiler/__init__.py +19 -0
- nuitka/tools/profiler/__main__.py +93 -0
- nuitka/tools/scanning/DisplayDistributions.py +39 -0
- nuitka/tools/scanning/DisplayPackageDLLs.py +151 -0
- nuitka/tools/scanning/DisplayPackageData.py +73 -0
- nuitka/tools/scanning/__init__.py +19 -0
- nuitka/tools/specialize/CTypeDescriptions.py +1928 -0
- nuitka/tools/specialize/Common.py +380 -0
- nuitka/tools/specialize/SpecializeC.py +1483 -0
- nuitka/tools/specialize/SpecializePython.py +1151 -0
- nuitka/tools/specialize/__init__.py +19 -0
- nuitka/tools/testing/Common.py +2007 -0
- nuitka/tools/testing/Constructs.py +53 -0
- nuitka/tools/testing/DocTests.py +156 -0
- nuitka/tools/testing/OutputComparison.py +313 -0
- nuitka/tools/testing/Pythons.py +34 -0
- nuitka/tools/testing/RuntimeTracing.py +260 -0
- nuitka/tools/testing/SearchModes.py +208 -0
- nuitka/tools/testing/Valgrind.py +103 -0
- nuitka/tools/testing/__init__.py +19 -0
- nuitka/tools/testing/check_reference_counts/__init__.py +19 -0
- nuitka/tools/testing/check_reference_counts/__main__.py +107 -0
- nuitka/tools/testing/compare_with_cpython/__init__.py +19 -0
- nuitka/tools/testing/compare_with_cpython/__main__.py +942 -0
- nuitka/tools/testing/find_sxs_modules/__init__.py +19 -0
- nuitka/tools/testing/find_sxs_modules/__main__.py +73 -0
- nuitka/tools/testing/measure_construct_performance/__init__.py +19 -0
- nuitka/tools/testing/measure_construct_performance/__main__.py +288 -0
- nuitka/tools/testing/run_nuitka_tests/__init__.py +19 -0
- nuitka/tools/testing/run_nuitka_tests/__main__.py +1091 -0
- nuitka/tools/watch/AutoStage.py +145 -0
- nuitka/tools/watch/Common.py +55 -0
- nuitka/tools/watch/Conda.py +125 -0
- nuitka/tools/watch/GitHub.py +113 -0
- nuitka/tools/watch/Pacman.py +73 -0
- nuitka/tools/watch/Pipenv.py +145 -0
- nuitka/tools/watch/__init__.py +19 -0
- nuitka/tools/watch/__main__.py +615 -0
- nuitka/tree/Building.py +1459 -0
- nuitka/tree/ComplexCallHelperFunctions.py +2150 -0
- nuitka/tree/Extractions.py +48 -0
- nuitka/tree/FutureSpecState.py +71 -0
- nuitka/tree/InternalModule.py +96 -0
- nuitka/tree/Operations.py +45 -0
- nuitka/tree/ReformulationAssertStatements.py +97 -0
- nuitka/tree/ReformulationAssignmentStatements.py +1260 -0
- nuitka/tree/ReformulationBooleanExpressions.py +97 -0
- nuitka/tree/ReformulationCallExpressions.py +314 -0
- nuitka/tree/ReformulationClasses.py +407 -0
- nuitka/tree/ReformulationClasses3.py +1149 -0
- nuitka/tree/ReformulationComparisonExpressions.py +174 -0
- nuitka/tree/ReformulationContractionExpressions.py +676 -0
- nuitka/tree/ReformulationDictionaryCreation.py +304 -0
- nuitka/tree/ReformulationExecStatements.py +386 -0
- nuitka/tree/ReformulationForLoopStatements.py +215 -0
- nuitka/tree/ReformulationFunctionStatements.py +931 -0
- nuitka/tree/ReformulationImportStatements.py +333 -0
- nuitka/tree/ReformulationLambdaExpressions.py +185 -0
- nuitka/tree/ReformulationMatchStatements.py +797 -0
- nuitka/tree/ReformulationMultidist.py +80 -0
- nuitka/tree/ReformulationNamespacePackages.py +239 -0
- nuitka/tree/ReformulationPrintStatements.py +127 -0
- nuitka/tree/ReformulationSequenceCreation.py +438 -0
- nuitka/tree/ReformulationSubscriptExpressions.py +123 -0
- nuitka/tree/ReformulationTryExceptStatements.py +418 -0
- nuitka/tree/ReformulationTryFinallyStatements.py +239 -0
- nuitka/tree/ReformulationWhileLoopStatements.py +160 -0
- nuitka/tree/ReformulationWithStatements.py +382 -0
- nuitka/tree/ReformulationYieldExpressions.py +133 -0
- nuitka/tree/SourceHandling.py +476 -0
- nuitka/tree/SyntaxErrors.py +143 -0
- nuitka/tree/TreeHelpers.py +720 -0
- nuitka/tree/VariableClosure.py +483 -0
- nuitka/tree/__init__.py +19 -0
- nuitka/utils/AppDirs.py +104 -0
- nuitka/utils/CStrings.py +208 -0
- nuitka/utils/CommandLineOptions.py +207 -0
- nuitka/utils/Distributions.py +728 -0
- nuitka/utils/Download.py +217 -0
- nuitka/utils/Execution.py +517 -0
- nuitka/utils/FileOperations.py +1587 -0
- nuitka/utils/Hashing.py +137 -0
- nuitka/utils/Images.py +79 -0
- nuitka/utils/Importing.py +335 -0
- nuitka/utils/InlineCopies.py +52 -0
- nuitka/utils/InstalledPythons.py +254 -0
- nuitka/utils/InstanceCounters.py +86 -0
- nuitka/utils/Jinja2.py +158 -0
- nuitka/utils/Json.py +40 -0
- nuitka/utils/MacOSApp.py +134 -0
- nuitka/utils/MemoryUsage.py +165 -0
- nuitka/utils/ModuleNames.py +317 -0
- nuitka/utils/PackageResources.py +44 -0
- nuitka/utils/ReExecute.py +152 -0
- nuitka/utils/Rest.py +60 -0
- nuitka/utils/SharedLibraries.py +1014 -0
- nuitka/utils/Shebang.py +113 -0
- nuitka/utils/Signing.py +144 -0
- nuitka/utils/SlotMetaClasses.py +57 -0
- nuitka/utils/StaticLibraries.py +260 -0
- nuitka/utils/ThreadedExecutor.py +87 -0
- nuitka/utils/Timing.py +102 -0
- nuitka/utils/Utils.py +483 -0
- nuitka/utils/WindowsFileUsage.py +337 -0
- nuitka/utils/WindowsResources.py +652 -0
- nuitka/utils/Yaml.py +247 -0
- nuitka/utils/__init__.py +19 -0
- nuitka_winsvc-2.7.7.data/scripts/nuitka-run.cmd +24 -0
- nuitka_winsvc-2.7.7.data/scripts/nuitka.cmd +30 -0
- nuitka_winsvc-2.7.7.dist-info/METADATA +115 -0
- nuitka_winsvc-2.7.7.dist-info/RECORD +995 -0
- nuitka_winsvc-2.7.7.dist-info/WHEEL +5 -0
- nuitka_winsvc-2.7.7.dist-info/entry_points.txt +7 -0
- nuitka_winsvc-2.7.7.dist-info/licenses/LICENSE.txt +202 -0
- nuitka_winsvc-2.7.7.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_CHECKERS_H__
|
|
4
|
+
#define __NUITKA_CHECKERS_H__
|
|
5
|
+
|
|
6
|
+
// Helper to check that an object is valid and has positive reference count.
|
|
7
|
+
#define CHECK_OBJECT(value) (assert((value) != NULL), assert(Py_REFCNT(value) > 0))
|
|
8
|
+
#define CHECK_OBJECT_X(value) (assert((value) == NULL || Py_REFCNT(value) > 0))
|
|
9
|
+
|
|
10
|
+
// Helper to check an array of objects with CHECK_OBJECT
|
|
11
|
+
#ifndef __NUITKA_NO_ASSERT__
|
|
12
|
+
#define CHECK_OBJECTS(values, count) \
|
|
13
|
+
{ \
|
|
14
|
+
for (int i = 0; i < count; i++) { \
|
|
15
|
+
CHECK_OBJECT((values)[i]); \
|
|
16
|
+
} \
|
|
17
|
+
}
|
|
18
|
+
#else
|
|
19
|
+
#define CHECK_OBJECTS(values, count)
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
extern void CHECK_OBJECT_DEEP(PyObject *value);
|
|
23
|
+
extern void CHECK_OBJECTS_DEEP(PyObject *const *values, Py_ssize_t size);
|
|
24
|
+
|
|
25
|
+
#endif
|
|
26
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
27
|
+
// integrates with CPython, but also works on its own.
|
|
28
|
+
//
|
|
29
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
30
|
+
// you may not use this file except in compliance with the License.
|
|
31
|
+
// You may obtain a copy of the License at
|
|
32
|
+
//
|
|
33
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
34
|
+
//
|
|
35
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
36
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
37
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
38
|
+
// See the License for the specific language governing permissions and
|
|
39
|
+
// limitations under the License.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_CHECKSUM_TOOLS_H__
|
|
4
|
+
#define __NUITKA_CHECKSUM_TOOLS_H__
|
|
5
|
+
|
|
6
|
+
// This file is included from another C file, help IDEs to still parse it on
|
|
7
|
+
// its own.
|
|
8
|
+
#ifdef __IDE_ONLY__
|
|
9
|
+
#include "nuitka/prelude.h"
|
|
10
|
+
#endif
|
|
11
|
+
|
|
12
|
+
extern uint32_t calcCRC32(unsigned char const *message, uint32_t size);
|
|
13
|
+
|
|
14
|
+
#endif
|
|
15
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
16
|
+
// integrates with CPython, but also works on its own.
|
|
17
|
+
//
|
|
18
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
19
|
+
// you may not use this file except in compliance with the License.
|
|
20
|
+
// You may obtain a copy of the License at
|
|
21
|
+
//
|
|
22
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
23
|
+
//
|
|
24
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
25
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
26
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
27
|
+
// See the License for the specific language governing permissions and
|
|
28
|
+
// limitations under the License.
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
// Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_COMPILED_ASYNCGEN_H__
|
|
4
|
+
#define __NUITKA_COMPILED_ASYNCGEN_H__
|
|
5
|
+
|
|
6
|
+
// Compiled async generator type, asyncgen in short.
|
|
7
|
+
|
|
8
|
+
// Another cornerstone of the integration into CPython. Try to behave as well as
|
|
9
|
+
// normal asyncgen objects do or even better.
|
|
10
|
+
|
|
11
|
+
#if PYTHON_VERSION >= 0x360
|
|
12
|
+
|
|
13
|
+
/* This file is included from another C file, help IDEs to still parse it on its own. */
|
|
14
|
+
#ifdef __IDE_ONLY__
|
|
15
|
+
#include "nuitka/prelude.h"
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
// The Nuitka_AsyncgenObject is the storage associated with a compiled
|
|
19
|
+
// async generator object instance of which there can be many for each code.
|
|
20
|
+
struct Nuitka_AsyncgenObject {
|
|
21
|
+
/* Python object folklore: */
|
|
22
|
+
PyObject_VAR_HEAD
|
|
23
|
+
|
|
24
|
+
PyObject *m_name;
|
|
25
|
+
|
|
26
|
+
// TODO: Only to make traceback for non-started throw
|
|
27
|
+
PyObject *m_module;
|
|
28
|
+
|
|
29
|
+
PyObject *m_qualname;
|
|
30
|
+
PyObject *m_yield_from;
|
|
31
|
+
|
|
32
|
+
// Weak references are supported for asyncgen objects in CPython.
|
|
33
|
+
PyObject *m_weakrefs;
|
|
34
|
+
|
|
35
|
+
int m_running;
|
|
36
|
+
|
|
37
|
+
// When an asyncgen is awaiting, this flag is set.
|
|
38
|
+
int m_awaiting;
|
|
39
|
+
|
|
40
|
+
#if PYTHON_VERSION >= 0x380
|
|
41
|
+
// When an asyncgen is running, this is set
|
|
42
|
+
int m_running_async;
|
|
43
|
+
#endif
|
|
44
|
+
|
|
45
|
+
void *m_code;
|
|
46
|
+
|
|
47
|
+
// The parent frame of the asyncgen, if created.
|
|
48
|
+
struct Nuitka_FrameObject *m_frame;
|
|
49
|
+
|
|
50
|
+
PyCodeObject *m_code_object;
|
|
51
|
+
|
|
52
|
+
// While yielding, this was the frame currently active, restore when
|
|
53
|
+
// resuming.
|
|
54
|
+
Nuitka_ThreadStateFrameType *m_resume_frame;
|
|
55
|
+
|
|
56
|
+
// Was it ever used, is it still running, or already finished.
|
|
57
|
+
Generator_Status m_status;
|
|
58
|
+
|
|
59
|
+
#if PYTHON_VERSION >= 0x370
|
|
60
|
+
struct Nuitka_ExceptionStackItem m_exc_state;
|
|
61
|
+
#endif
|
|
62
|
+
|
|
63
|
+
// The label index to resume after yield.
|
|
64
|
+
int m_yield_return_index;
|
|
65
|
+
|
|
66
|
+
// The finalizer associated through a hook
|
|
67
|
+
PyObject *m_finalizer;
|
|
68
|
+
|
|
69
|
+
// The hooks were initialized
|
|
70
|
+
bool m_hooks_init_done;
|
|
71
|
+
|
|
72
|
+
// It is closed, and cannot be closed again.
|
|
73
|
+
bool m_closed;
|
|
74
|
+
|
|
75
|
+
// A kind of uuid for the generator object, used in comparisons.
|
|
76
|
+
long m_counter;
|
|
77
|
+
|
|
78
|
+
/* The heap of generator objects at run time. */
|
|
79
|
+
void *m_heap_storage;
|
|
80
|
+
|
|
81
|
+
/* Closure variables given, if any, we reference cells here. The last
|
|
82
|
+
* part is dynamically allocated, the array size differs per asyncgen
|
|
83
|
+
* and includes the heap storage.
|
|
84
|
+
*/
|
|
85
|
+
Py_ssize_t m_closure_given;
|
|
86
|
+
struct Nuitka_CellObject *m_closure[1];
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
extern PyTypeObject Nuitka_Asyncgen_Type;
|
|
90
|
+
|
|
91
|
+
typedef PyObject *(*asyncgen_code)(PyThreadState *tstate, struct Nuitka_AsyncgenObject *, PyObject *);
|
|
92
|
+
|
|
93
|
+
extern PyObject *Nuitka_Asyncgen_New(asyncgen_code code, PyObject *module, PyObject *name, PyObject *qualname,
|
|
94
|
+
PyCodeObject *code_object, struct Nuitka_CellObject **closure,
|
|
95
|
+
Py_ssize_t closure_given, Py_ssize_t heap_storage_size);
|
|
96
|
+
|
|
97
|
+
static inline bool Nuitka_Asyncgen_Check(PyObject *object) { return Py_TYPE(object) == &Nuitka_Asyncgen_Type; }
|
|
98
|
+
|
|
99
|
+
static inline void SAVE_ASYNCGEN_EXCEPTION(PyThreadState *tstate, struct Nuitka_AsyncgenObject *asyncgen) {
|
|
100
|
+
/* Before Python3.7: When yielding from an exception handler in Python3,
|
|
101
|
+
* the exception preserved to the frame is restored, while the current one
|
|
102
|
+
* is put as there.
|
|
103
|
+
*
|
|
104
|
+
* Python3.7: The exception is preserved in the asyncgen object itself
|
|
105
|
+
* which has a new "m_exc_state" structure just for that.
|
|
106
|
+
*/
|
|
107
|
+
#if _DEBUG_EXCEPTIONS
|
|
108
|
+
PRINT_STRING("SAVE_ASYNCGEN_EXCEPTION: Enter\n");
|
|
109
|
+
PRINT_PUBLISHED_EXCEPTION();
|
|
110
|
+
#endif
|
|
111
|
+
|
|
112
|
+
#if PYTHON_VERSION < 0x3b0
|
|
113
|
+
PyObject *saved_exception_type = EXC_TYPE(tstate);
|
|
114
|
+
#endif
|
|
115
|
+
PyObject *saved_exception_value = EXC_VALUE(tstate);
|
|
116
|
+
#if PYTHON_VERSION < 0x3b0
|
|
117
|
+
PyTracebackObject *saved_exception_traceback = EXC_TRACEBACK(tstate);
|
|
118
|
+
#endif
|
|
119
|
+
|
|
120
|
+
#if PYTHON_VERSION < 0x370
|
|
121
|
+
EXC_TYPE(tstate) = tstate->frame->f_exc_type;
|
|
122
|
+
EXC_VALUE(tstate) = tstate->frame->f_exc_value;
|
|
123
|
+
SET_EXC_TRACEBACK(tstate, tstate->frame->f_exc_traceback);
|
|
124
|
+
#else
|
|
125
|
+
#if PYTHON_VERSION < 0x3b0
|
|
126
|
+
EXC_TYPE(tstate) = asyncgen->m_exc_state.exception_type;
|
|
127
|
+
#endif
|
|
128
|
+
EXC_VALUE(tstate) = asyncgen->m_exc_state.exception_value;
|
|
129
|
+
#if PYTHON_VERSION < 0x3b0
|
|
130
|
+
SET_EXC_TRACEBACK(tstate, asyncgen->m_exc_state.exception_tb);
|
|
131
|
+
#endif
|
|
132
|
+
#endif
|
|
133
|
+
|
|
134
|
+
#if _DEBUG_EXCEPTIONS
|
|
135
|
+
PRINT_STRING("SAVE_ASYNCGEN_EXCEPTION: Leave\n");
|
|
136
|
+
PRINT_PUBLISHED_EXCEPTION();
|
|
137
|
+
#endif
|
|
138
|
+
|
|
139
|
+
#if PYTHON_VERSION < 0x370
|
|
140
|
+
tstate->frame->f_exc_type = saved_exception_type;
|
|
141
|
+
tstate->frame->f_exc_value = saved_exception_value;
|
|
142
|
+
tstate->frame->f_exc_traceback = (PyObject *)saved_exception_traceback;
|
|
143
|
+
#else
|
|
144
|
+
#if PYTHON_VERSION < 0x3b0
|
|
145
|
+
asyncgen->m_exc_state.exception_type = saved_exception_type;
|
|
146
|
+
#endif
|
|
147
|
+
asyncgen->m_exc_state.exception_value = saved_exception_value;
|
|
148
|
+
#if PYTHON_VERSION < 0x3b0
|
|
149
|
+
asyncgen->m_exc_state.exception_tb = (PyTracebackObject *)saved_exception_traceback;
|
|
150
|
+
#endif
|
|
151
|
+
#endif
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
static inline void RESTORE_ASYNCGEN_EXCEPTION(PyThreadState *tstate, struct Nuitka_AsyncgenObject *asyncgen) {
|
|
155
|
+
// When returning from yield, the exception of the frame is preserved, and
|
|
156
|
+
// the one that enters should be there.
|
|
157
|
+
|
|
158
|
+
#if PYTHON_VERSION < 0x3b0
|
|
159
|
+
PyObject *saved_exception_type = EXC_TYPE(tstate);
|
|
160
|
+
#endif
|
|
161
|
+
PyObject *saved_exception_value = EXC_VALUE(tstate);
|
|
162
|
+
#if PYTHON_VERSION < 0x3b0
|
|
163
|
+
PyTracebackObject *saved_exception_traceback = EXC_TRACEBACK(tstate);
|
|
164
|
+
#endif
|
|
165
|
+
|
|
166
|
+
#if _DEBUG_EXCEPTIONS
|
|
167
|
+
PRINT_STRING("RESTORE_ASYNCGEN_EXCEPTION: Enter\n");
|
|
168
|
+
#if PYTHON_VERSION < 0x3b0
|
|
169
|
+
PRINT_EXCEPTION(saved_exception_type, saved_exception_value, saved_exception_traceback);
|
|
170
|
+
#else
|
|
171
|
+
_PRINT_EXCEPTION1(saved_exception_value);
|
|
172
|
+
#endif
|
|
173
|
+
#endif
|
|
174
|
+
|
|
175
|
+
#if PYTHON_VERSION < 0x370
|
|
176
|
+
EXC_TYPE(tstate) = tstate->frame->f_exc_type;
|
|
177
|
+
EXC_VALUE(tstate) = tstate->frame->f_exc_value;
|
|
178
|
+
SET_EXC_TRACEBACK(tstate, tstate->frame->f_exc_traceback);
|
|
179
|
+
|
|
180
|
+
tstate->frame->f_exc_type = saved_exception_type;
|
|
181
|
+
tstate->frame->f_exc_value = saved_exception_value;
|
|
182
|
+
tstate->frame->f_exc_traceback = (PyObject *)saved_exception_traceback;
|
|
183
|
+
#else
|
|
184
|
+
#if PYTHON_VERSION < 0x3b0
|
|
185
|
+
EXC_TYPE(tstate) = asyncgen->m_exc_state.exception_type;
|
|
186
|
+
#endif
|
|
187
|
+
EXC_VALUE(tstate) = asyncgen->m_exc_state.exception_value;
|
|
188
|
+
#if PYTHON_VERSION < 0x3b0
|
|
189
|
+
SET_EXC_TRACEBACK(tstate, asyncgen->m_exc_state.exception_tb);
|
|
190
|
+
#endif
|
|
191
|
+
|
|
192
|
+
#if PYTHON_VERSION < 0x3b0
|
|
193
|
+
asyncgen->m_exc_state.exception_type = saved_exception_type;
|
|
194
|
+
#endif
|
|
195
|
+
asyncgen->m_exc_state.exception_value = saved_exception_value;
|
|
196
|
+
#if PYTHON_VERSION < 0x3b0
|
|
197
|
+
asyncgen->m_exc_state.exception_tb = (PyTracebackObject *)saved_exception_traceback;
|
|
198
|
+
#endif
|
|
199
|
+
#endif
|
|
200
|
+
|
|
201
|
+
#if _DEBUG_EXCEPTIONS
|
|
202
|
+
PRINT_STRING("RESTORE_ASYNCGEN_EXCEPTION: Leave\n");
|
|
203
|
+
PRINT_PUBLISHED_EXCEPTION();
|
|
204
|
+
#endif
|
|
205
|
+
|
|
206
|
+
#if PYTHON_VERSION < 0x3b0
|
|
207
|
+
CHECK_OBJECT_X(EXC_TYPE(tstate));
|
|
208
|
+
#endif
|
|
209
|
+
CHECK_OBJECT_X(EXC_VALUE(tstate));
|
|
210
|
+
#if PYTHON_VERSION < 0x3b0
|
|
211
|
+
CHECK_OBJECT_X(EXC_TRACEBACK(tstate));
|
|
212
|
+
#endif
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
NUITKA_MAY_BE_UNUSED static void STORE_ASYNCGEN_EXCEPTION(PyThreadState *tstate,
|
|
216
|
+
struct Nuitka_AsyncgenObject *asyncgen) {
|
|
217
|
+
|
|
218
|
+
#if PYTHON_VERSION < 0x3b0
|
|
219
|
+
EXC_TYPE_F(asyncgen) = EXC_TYPE(tstate);
|
|
220
|
+
if (EXC_TYPE_F(asyncgen) == Py_None) {
|
|
221
|
+
EXC_TYPE_F(asyncgen) = NULL;
|
|
222
|
+
}
|
|
223
|
+
Py_XINCREF(EXC_TYPE_F(asyncgen));
|
|
224
|
+
assert(EXC_TYPE_F(asyncgen) == NULL);
|
|
225
|
+
#endif
|
|
226
|
+
EXC_VALUE_F(asyncgen) = EXC_VALUE(tstate);
|
|
227
|
+
Py_XINCREF(EXC_VALUE_F(asyncgen));
|
|
228
|
+
#if PYTHON_VERSION < 0x3b0
|
|
229
|
+
ASSIGN_EXC_TRACEBACK_F(asyncgen, EXC_TRACEBACK(tstate));
|
|
230
|
+
Py_XINCREF(EXC_TRACEBACK_F(asyncgen));
|
|
231
|
+
#endif
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
NUITKA_MAY_BE_UNUSED static void DROP_ASYNCGEN_EXCEPTION(struct Nuitka_AsyncgenObject *asyncgen) {
|
|
235
|
+
#if PYTHON_VERSION < 0x3b0
|
|
236
|
+
Py_CLEAR(EXC_TYPE_F(asyncgen));
|
|
237
|
+
#endif
|
|
238
|
+
Py_CLEAR(EXC_VALUE_F(asyncgen));
|
|
239
|
+
#if PYTHON_VERSION < 0x3b0
|
|
240
|
+
Py_CLEAR(EXC_TRACEBACK_F(asyncgen));
|
|
241
|
+
#endif
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
// For reference count debugging.
|
|
245
|
+
#if _DEBUG_REFCOUNTS
|
|
246
|
+
extern int count_active_Nuitka_Asyncgen_Type;
|
|
247
|
+
extern int count_allocated_Nuitka_Asyncgen_Type;
|
|
248
|
+
extern int count_released_Nuitka_Asyncgen_Type;
|
|
249
|
+
|
|
250
|
+
extern int count_active_Nuitka_AsyncgenValueWrapper_Type;
|
|
251
|
+
extern int count_allocated_Nuitka_AsyncgenValueWrapper_Type;
|
|
252
|
+
extern int count_released_Nuitka_AsyncgenValueWrapper_Type;
|
|
253
|
+
|
|
254
|
+
extern int count_active_Nuitka_AsyncgenAsend_Type;
|
|
255
|
+
extern int count_allocated_Nuitka_AsyncgenAsend_Type;
|
|
256
|
+
extern int count_released_Nuitka_AsyncgenAsend_Type;
|
|
257
|
+
|
|
258
|
+
extern int count_active_Nuitka_AsyncgenAthrow_Type;
|
|
259
|
+
extern int count_allocated_Nuitka_AsyncgenAthrow_Type;
|
|
260
|
+
extern int count_released_Nuitka_AsyncgenAthrow_Type;
|
|
261
|
+
|
|
262
|
+
#endif
|
|
263
|
+
|
|
264
|
+
#endif
|
|
265
|
+
|
|
266
|
+
#endif
|
|
267
|
+
|
|
268
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
269
|
+
// integrates with CPython, but also works on its own.
|
|
270
|
+
//
|
|
271
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
272
|
+
// you may not use this file except in compliance with the License.
|
|
273
|
+
// You may obtain a copy of the License at
|
|
274
|
+
//
|
|
275
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
276
|
+
//
|
|
277
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
278
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
279
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
280
|
+
// See the License for the specific language governing permissions and
|
|
281
|
+
// limitations under the License.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_COMPILED_CELL_H__
|
|
4
|
+
#define __NUITKA_COMPILED_CELL_H__
|
|
5
|
+
|
|
6
|
+
/* This is a clone of the normal PyCell structure. We should keep it binary
|
|
7
|
+
* compatible, just in case somebody crazy insists on it.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
extern PyTypeObject Nuitka_Cell_Type;
|
|
11
|
+
|
|
12
|
+
static inline bool Nuitka_Cell_Check(PyObject *object) { return Py_TYPE(object) == &Nuitka_Cell_Type; }
|
|
13
|
+
|
|
14
|
+
struct Nuitka_CellObject {
|
|
15
|
+
/* Python object folklore: */
|
|
16
|
+
PyObject_HEAD
|
|
17
|
+
|
|
18
|
+
/* Content of the cell or NULL when empty */
|
|
19
|
+
PyObject *ob_ref;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
// Create cell with out value, and with or without reference given.
|
|
23
|
+
extern struct Nuitka_CellObject *Nuitka_Cell_NewEmpty(void);
|
|
24
|
+
extern struct Nuitka_CellObject *Nuitka_Cell_New0(PyObject *value);
|
|
25
|
+
extern struct Nuitka_CellObject *Nuitka_Cell_New1(PyObject *value);
|
|
26
|
+
|
|
27
|
+
// Check stuff while accessing a compile cell in debug mode.
|
|
28
|
+
#ifdef __NUITKA_NO_ASSERT__
|
|
29
|
+
#define Nuitka_Cell_GET(cell) (((struct Nuitka_CellObject *)(cell))->ob_ref)
|
|
30
|
+
#else
|
|
31
|
+
#define Nuitka_Cell_GET(cell) \
|
|
32
|
+
(CHECK_OBJECT(cell), assert(Nuitka_Cell_Check((PyObject *)cell)), (((struct Nuitka_CellObject *)(cell))->ob_ref))
|
|
33
|
+
#endif
|
|
34
|
+
|
|
35
|
+
#if _DEBUG_REFCOUNTS
|
|
36
|
+
extern int count_active_Nuitka_Cell_Type;
|
|
37
|
+
extern int count_allocated_Nuitka_Cell_Type;
|
|
38
|
+
extern int count_released_Nuitka_Cell_Type;
|
|
39
|
+
#endif
|
|
40
|
+
|
|
41
|
+
NUITKA_MAY_BE_UNUSED static inline void Nuitka_Cell_SET(struct Nuitka_CellObject *cell_object, PyObject *value) {
|
|
42
|
+
CHECK_OBJECT_X(value);
|
|
43
|
+
CHECK_OBJECT(cell_object);
|
|
44
|
+
|
|
45
|
+
assert(Nuitka_Cell_Check((PyObject *)cell_object));
|
|
46
|
+
cell_object->ob_ref = value;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
#endif
|
|
50
|
+
|
|
51
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
52
|
+
// integrates with CPython, but also works on its own.
|
|
53
|
+
//
|
|
54
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
55
|
+
// you may not use this file except in compliance with the License.
|
|
56
|
+
// You may obtain a copy of the License at
|
|
57
|
+
//
|
|
58
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
59
|
+
//
|
|
60
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
61
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
62
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
63
|
+
// See the License for the specific language governing permissions and
|
|
64
|
+
// limitations under the License.
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
// Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_COMPILED_COROUTINE_H__
|
|
4
|
+
#define __NUITKA_COMPILED_COROUTINE_H__
|
|
5
|
+
|
|
6
|
+
// Compiled coroutine type.
|
|
7
|
+
|
|
8
|
+
// Another cornerstone of the integration into CPython. Try to behave as well as
|
|
9
|
+
// normal coroutine objects do or even better.
|
|
10
|
+
|
|
11
|
+
#if PYTHON_VERSION >= 0x350
|
|
12
|
+
|
|
13
|
+
/* This file is included from another C file, help IDEs to still parse it on its own. */
|
|
14
|
+
#ifdef __IDE_ONLY__
|
|
15
|
+
#include "nuitka/prelude.h"
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
// The Nuitka_CoroutineObject is the storage associated with a compiled
|
|
19
|
+
// coroutine object instance of which there can be many for each code.
|
|
20
|
+
struct Nuitka_CoroutineObject {
|
|
21
|
+
/* Python object folklore: */
|
|
22
|
+
PyObject_VAR_HEAD
|
|
23
|
+
|
|
24
|
+
PyObject *m_name;
|
|
25
|
+
|
|
26
|
+
// TODO: Only to make traceback for non-started throw
|
|
27
|
+
PyObject *m_module;
|
|
28
|
+
|
|
29
|
+
PyObject *m_qualname;
|
|
30
|
+
PyObject *m_yield_from;
|
|
31
|
+
|
|
32
|
+
// Weak references are supported for coroutine objects in CPython.
|
|
33
|
+
PyObject *m_weakrefs;
|
|
34
|
+
|
|
35
|
+
int m_running;
|
|
36
|
+
|
|
37
|
+
// When a coroutine is awaiting, this flag is set.
|
|
38
|
+
int m_awaiting;
|
|
39
|
+
|
|
40
|
+
void *m_code;
|
|
41
|
+
|
|
42
|
+
// The parent frame of the coroutine, if created.
|
|
43
|
+
struct Nuitka_FrameObject *m_frame;
|
|
44
|
+
|
|
45
|
+
PyCodeObject *m_code_object;
|
|
46
|
+
|
|
47
|
+
// While yielding, this was the frame currently active, restore when
|
|
48
|
+
// resuming.
|
|
49
|
+
Nuitka_ThreadStateFrameType *m_resume_frame;
|
|
50
|
+
|
|
51
|
+
// Was it ever used, is it still running, or already finished.
|
|
52
|
+
Generator_Status m_status;
|
|
53
|
+
|
|
54
|
+
#if PYTHON_VERSION >= 0x370
|
|
55
|
+
struct Nuitka_ExceptionStackItem m_exc_state;
|
|
56
|
+
|
|
57
|
+
// The cr_origin attribute.
|
|
58
|
+
PyObject *m_origin;
|
|
59
|
+
#endif
|
|
60
|
+
|
|
61
|
+
// The label index to resume after yield.
|
|
62
|
+
int m_yield_return_index;
|
|
63
|
+
|
|
64
|
+
// Returned value if yielded value is NULL, is
|
|
65
|
+
// NULL if not a return
|
|
66
|
+
PyObject *m_returned;
|
|
67
|
+
|
|
68
|
+
// A kind of uuid for the coroutine object, used in comparisons.
|
|
69
|
+
long m_counter;
|
|
70
|
+
|
|
71
|
+
/* The heap of coroutine objects at run time. */
|
|
72
|
+
void *m_heap_storage;
|
|
73
|
+
|
|
74
|
+
/* Closure variables given, if any, we reference cells here. The last
|
|
75
|
+
* part is dynamically allocated, the array size differs per coroutine
|
|
76
|
+
* and includes the heap storage.
|
|
77
|
+
*/
|
|
78
|
+
Py_ssize_t m_closure_given;
|
|
79
|
+
struct Nuitka_CellObject *m_closure[1];
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
extern PyTypeObject Nuitka_Coroutine_Type;
|
|
83
|
+
|
|
84
|
+
typedef PyObject *(*coroutine_code)(PyThreadState *tstate, struct Nuitka_CoroutineObject *, PyObject *);
|
|
85
|
+
|
|
86
|
+
extern PyObject *Nuitka_Coroutine_New(PyThreadState *tstate, coroutine_code code, PyObject *module, PyObject *name,
|
|
87
|
+
PyObject *qualname, PyCodeObject *code_object, struct Nuitka_CellObject **closure,
|
|
88
|
+
Py_ssize_t closure_given, Py_ssize_t heap_storage_size);
|
|
89
|
+
|
|
90
|
+
static inline bool Nuitka_Coroutine_Check(PyObject *object) { return Py_TYPE(object) == &Nuitka_Coroutine_Type; }
|
|
91
|
+
|
|
92
|
+
struct Nuitka_CoroutineWrapperObject {
|
|
93
|
+
/* Python object folklore: */
|
|
94
|
+
PyObject_HEAD
|
|
95
|
+
|
|
96
|
+
struct Nuitka_CoroutineObject *m_coroutine;
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
extern PyTypeObject Nuitka_CoroutineWrapper_Type;
|
|
100
|
+
|
|
101
|
+
static inline bool Nuitka_CoroutineWrapper_Check(PyObject *object) {
|
|
102
|
+
return Py_TYPE(object) == &Nuitka_CoroutineWrapper_Type;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
static inline void SAVE_COROUTINE_EXCEPTION(PyThreadState *tstate, struct Nuitka_CoroutineObject *coroutine) {
|
|
106
|
+
/* Before Python3.7: When yielding from an exception handler in Python3,
|
|
107
|
+
* the exception preserved to the frame is restored, while the current one
|
|
108
|
+
* is put as there.
|
|
109
|
+
*
|
|
110
|
+
* Python3.7: The exception is preserved in the coroutine object itself
|
|
111
|
+
* which has a new "m_exc_state" structure just for that.
|
|
112
|
+
*/
|
|
113
|
+
|
|
114
|
+
#if PYTHON_VERSION < 0x3b0
|
|
115
|
+
PyObject *saved_exception_type = EXC_TYPE(tstate);
|
|
116
|
+
#endif
|
|
117
|
+
PyObject *saved_exception_value = EXC_VALUE(tstate);
|
|
118
|
+
#if PYTHON_VERSION < 0x3b0
|
|
119
|
+
PyTracebackObject *saved_exception_traceback = EXC_TRACEBACK(tstate);
|
|
120
|
+
#endif
|
|
121
|
+
|
|
122
|
+
#if PYTHON_VERSION < 0x370
|
|
123
|
+
EXC_TYPE(tstate) = tstate->frame->f_exc_type;
|
|
124
|
+
EXC_VALUE(tstate) = tstate->frame->f_exc_value;
|
|
125
|
+
SET_EXC_TRACEBACK(tstate, tstate->frame->f_exc_traceback);
|
|
126
|
+
#else
|
|
127
|
+
#if PYTHON_VERSION < 0x3b0
|
|
128
|
+
EXC_TYPE(tstate) = coroutine->m_exc_state.exception_type;
|
|
129
|
+
#endif
|
|
130
|
+
EXC_VALUE(tstate) = coroutine->m_exc_state.exception_value;
|
|
131
|
+
#if PYTHON_VERSION < 0x3b0
|
|
132
|
+
SET_EXC_TRACEBACK(tstate, coroutine->m_exc_state.exception_tb);
|
|
133
|
+
#endif
|
|
134
|
+
#endif
|
|
135
|
+
|
|
136
|
+
#if PYTHON_VERSION < 0x370
|
|
137
|
+
tstate->frame->f_exc_type = saved_exception_type;
|
|
138
|
+
tstate->frame->f_exc_value = saved_exception_value;
|
|
139
|
+
tstate->frame->f_exc_traceback = (PyObject *)saved_exception_traceback;
|
|
140
|
+
#else
|
|
141
|
+
#if PYTHON_VERSION < 0x3b0
|
|
142
|
+
coroutine->m_exc_state.exception_type = saved_exception_type;
|
|
143
|
+
#endif
|
|
144
|
+
coroutine->m_exc_state.exception_value = saved_exception_value;
|
|
145
|
+
#if PYTHON_VERSION < 0x3b0
|
|
146
|
+
coroutine->m_exc_state.exception_tb = (PyTracebackObject *)saved_exception_traceback;
|
|
147
|
+
#endif
|
|
148
|
+
#endif
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
static inline void RESTORE_COROUTINE_EXCEPTION(PyThreadState *tstate, struct Nuitka_CoroutineObject *coroutine) {
|
|
152
|
+
// When returning from yield, the exception of the frame is preserved, and
|
|
153
|
+
// the one that enters should be there.
|
|
154
|
+
|
|
155
|
+
#if PYTHON_VERSION < 0x3b0
|
|
156
|
+
PyObject *saved_exception_type = EXC_TYPE(tstate);
|
|
157
|
+
#endif
|
|
158
|
+
PyObject *saved_exception_value = EXC_VALUE(tstate);
|
|
159
|
+
#if PYTHON_VERSION < 0x3b0
|
|
160
|
+
PyTracebackObject *saved_exception_traceback = EXC_TRACEBACK(tstate);
|
|
161
|
+
#endif
|
|
162
|
+
|
|
163
|
+
#if PYTHON_VERSION < 0x370
|
|
164
|
+
EXC_TYPE(tstate) = tstate->frame->f_exc_type;
|
|
165
|
+
EXC_VALUE(tstate) = tstate->frame->f_exc_value;
|
|
166
|
+
SET_EXC_TRACEBACK(tstate, tstate->frame->f_exc_traceback);
|
|
167
|
+
|
|
168
|
+
tstate->frame->f_exc_type = saved_exception_type;
|
|
169
|
+
tstate->frame->f_exc_value = saved_exception_value;
|
|
170
|
+
tstate->frame->f_exc_traceback = (PyObject *)saved_exception_traceback;
|
|
171
|
+
#else
|
|
172
|
+
#if PYTHON_VERSION < 0x3b0
|
|
173
|
+
EXC_TYPE(tstate) = coroutine->m_exc_state.exception_type;
|
|
174
|
+
#endif
|
|
175
|
+
EXC_VALUE(tstate) = coroutine->m_exc_state.exception_value;
|
|
176
|
+
#if PYTHON_VERSION < 0x3b0
|
|
177
|
+
SET_EXC_TRACEBACK(tstate, coroutine->m_exc_state.exception_tb);
|
|
178
|
+
#endif
|
|
179
|
+
|
|
180
|
+
#if PYTHON_VERSION < 0x3b0
|
|
181
|
+
coroutine->m_exc_state.exception_type = saved_exception_type;
|
|
182
|
+
#endif
|
|
183
|
+
coroutine->m_exc_state.exception_value = saved_exception_value;
|
|
184
|
+
#if PYTHON_VERSION < 0x3b0
|
|
185
|
+
coroutine->m_exc_state.exception_tb = (PyTracebackObject *)saved_exception_traceback;
|
|
186
|
+
#endif
|
|
187
|
+
#endif
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
#ifdef __cplusplus
|
|
191
|
+
enum Await_Kind {
|
|
192
|
+
await_normal, // user provided "await"
|
|
193
|
+
await_enter, // async with statement "__enter__"
|
|
194
|
+
await_exit // async with statement "__enter__"
|
|
195
|
+
};
|
|
196
|
+
#else
|
|
197
|
+
typedef int Generator_Status;
|
|
198
|
+
static const int await_normal = 0;
|
|
199
|
+
static const int await_enter = 1;
|
|
200
|
+
static const int await_exit = 2;
|
|
201
|
+
#endif
|
|
202
|
+
|
|
203
|
+
// Create the object to await for async for "iter".
|
|
204
|
+
extern PyObject *ASYNC_MAKE_ITERATOR(PyThreadState *tstate, PyObject *value);
|
|
205
|
+
|
|
206
|
+
// Create the object to await for async for "next".
|
|
207
|
+
extern PyObject *ASYNC_ITERATOR_NEXT(PyThreadState *tstate, PyObject *value);
|
|
208
|
+
|
|
209
|
+
// Create the object for plain "await".
|
|
210
|
+
extern PyObject *ASYNC_AWAIT(PyThreadState *tstate, PyObject *awaitable, int await_kind);
|
|
211
|
+
|
|
212
|
+
NUITKA_MAY_BE_UNUSED static void STORE_COROUTINE_EXCEPTION(PyThreadState *tstate,
|
|
213
|
+
struct Nuitka_CoroutineObject *coroutine) {
|
|
214
|
+
#if PYTHON_VERSION < 0x3b0
|
|
215
|
+
EXC_TYPE_F(coroutine) = EXC_TYPE(tstate);
|
|
216
|
+
if (EXC_TYPE_F(coroutine) == Py_None) {
|
|
217
|
+
EXC_TYPE_F(coroutine) = NULL;
|
|
218
|
+
}
|
|
219
|
+
Py_XINCREF(EXC_TYPE_F(coroutine));
|
|
220
|
+
#endif
|
|
221
|
+
EXC_VALUE_F(coroutine) = EXC_VALUE(tstate);
|
|
222
|
+
Py_XINCREF(EXC_VALUE_F(coroutine));
|
|
223
|
+
#if PYTHON_VERSION < 0x3b0
|
|
224
|
+
ASSIGN_EXC_TRACEBACK_F(coroutine, EXC_TRACEBACK(tstate));
|
|
225
|
+
Py_XINCREF(EXC_TRACEBACK_F(coroutine));
|
|
226
|
+
#endif
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
NUITKA_MAY_BE_UNUSED static void DROP_COROUTINE_EXCEPTION(struct Nuitka_CoroutineObject *coroutine) {
|
|
230
|
+
#if PYTHON_VERSION < 0x3b0
|
|
231
|
+
Py_CLEAR(EXC_TYPE_F(coroutine));
|
|
232
|
+
#endif
|
|
233
|
+
Py_CLEAR(EXC_VALUE_F(coroutine));
|
|
234
|
+
#if PYTHON_VERSION < 0x3b0
|
|
235
|
+
Py_CLEAR(EXC_TRACEBACK_F(coroutine));
|
|
236
|
+
#endif
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
// For reference count debugging.
|
|
240
|
+
#if _DEBUG_REFCOUNTS
|
|
241
|
+
extern int count_active_Nuitka_Coroutine_Type;
|
|
242
|
+
extern int count_allocated_Nuitka_Coroutine_Type;
|
|
243
|
+
extern int count_released_Nuitka_Coroutine_Type;
|
|
244
|
+
|
|
245
|
+
extern int count_active_Nuitka_CoroutineWrapper_Type;
|
|
246
|
+
extern int count_allocated_Nuitka_CoroutineWrapper_Type;
|
|
247
|
+
extern int count_released_Nuitka_CoroutineWrapper_Type;
|
|
248
|
+
|
|
249
|
+
extern int count_active_Nuitka_AIterWrapper_Type;
|
|
250
|
+
extern int count_allocated_Nuitka_AIterWrapper_Type;
|
|
251
|
+
extern int count_released_Nuitka_AIterWrapper_Type;
|
|
252
|
+
#endif
|
|
253
|
+
|
|
254
|
+
#endif
|
|
255
|
+
|
|
256
|
+
#endif
|
|
257
|
+
|
|
258
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
259
|
+
// integrates with CPython, but also works on its own.
|
|
260
|
+
//
|
|
261
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
262
|
+
// you may not use this file except in compliance with the License.
|
|
263
|
+
// You may obtain a copy of the License at
|
|
264
|
+
//
|
|
265
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
266
|
+
//
|
|
267
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
268
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
269
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
270
|
+
// See the License for the specific language governing permissions and
|
|
271
|
+
// limitations under the License.
|