Nuitka-winsvc 1.8__cp311-cp311-win_amd64.whl → 2.5.1__cp311-cp311-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_winsvc-1.8.data/scripts/nuitka-run.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka-run.cmd +9 -9
- Nuitka_winsvc-1.8.data/scripts/nuitka.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka.cmd +15 -15
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/METADATA +5 -3
- Nuitka_winsvc-2.5.1.dist-info/RECORD +977 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +49 -17
- nuitka/BytecodeCaching.py +24 -20
- nuitka/Bytecodes.py +23 -19
- nuitka/CacheCleanup.py +28 -23
- nuitka/Constants.py +19 -17
- nuitka/Errors.py +23 -17
- nuitka/HardImportRegistry.py +408 -0
- nuitka/MainControl.py +209 -116
- nuitka/ModuleRegistry.py +83 -20
- nuitka/OptionParsing.py +467 -221
- nuitka/Options.py +701 -225
- nuitka/OutputDirectories.py +47 -23
- nuitka/PostProcessing.py +133 -79
- nuitka/Progress.py +73 -24
- nuitka/PythonFlavors.py +141 -32
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +107 -19
- nuitka/Serialization.py +70 -55
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +176 -70
- nuitka/TreeXML.py +31 -26
- nuitka/Variables.py +39 -41
- nuitka/Version.py +22 -8
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +95 -29
- nuitka/__past__.py +44 -34
- nuitka/build/Backend.scons +243 -141
- nuitka/build/CCompilerVersion.scons +45 -31
- nuitka/build/DataComposerInterface.py +20 -17
- nuitka/build/Onefile.scons +56 -54
- nuitka/build/SconsCaching.py +105 -92
- nuitka/build/SconsCompilerSettings.py +167 -68
- nuitka/build/SconsHacks.py +25 -19
- nuitka/build/SconsInterface.py +155 -54
- nuitka/build/SconsProgress.py +19 -18
- nuitka/build/SconsSpawn.py +62 -33
- nuitka/build/SconsUtils.py +152 -55
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +228 -22
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +24 -24
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -19
- nuitka/build/include/nuitka/compiled_asyncgen.h +28 -25
- nuitka/build/include/nuitka/compiled_cell.h +33 -18
- nuitka/build/include/nuitka/compiled_coroutine.h +18 -18
- nuitka/build/include/nuitka/compiled_frame.h +93 -54
- nuitka/build/include/nuitka/compiled_function.h +42 -20
- nuitka/build/include/nuitka/compiled_generator.h +24 -18
- nuitka/build/include/nuitka/compiled_method.h +17 -18
- nuitka/build/include/nuitka/constants.h +35 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- 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 +45 -0
- nuitka/build/include/nuitka/exception_groups.h +23 -26
- nuitka/build/include/nuitka/exceptions.h +717 -171
- nuitka/build/include/nuitka/filesystem_paths.h +26 -20
- nuitka/build/include/nuitka/freelists.h +38 -18
- nuitka/build/include/nuitka/helper/attributes.h +24 -22
- nuitka/build/include/nuitka/helper/boolean.h +17 -17
- nuitka/build/include/nuitka/helper/bytearrays.h +17 -17
- nuitka/build/include/nuitka/helper/bytes.h +14 -15
- nuitka/build/include/nuitka/helper/calling_generated.h +69 -69
- 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 +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ge.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_gt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_le.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_lt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ne.h +17 -17
- nuitka/build/include/nuitka/helper/complex.h +17 -17
- nuitka/build/include/nuitka/helper/dictionaries.h +89 -51
- nuitka/build/include/nuitka/helper/floats.h +17 -18
- nuitka/build/include/nuitka/helper/import_hard.h +25 -17
- nuitka/build/include/nuitka/helper/indexes.h +17 -18
- nuitka/build/include/nuitka/helper/ints.h +115 -54
- nuitka/build/include/nuitka/helper/iterators.h +99 -51
- nuitka/build/include/nuitka/helper/lists.h +26 -24
- nuitka/build/include/nuitka/helper/lists_generated.h +22 -22
- nuitka/build/include/nuitka/helper/mappings.h +17 -18
- nuitka/build/include/nuitka/helper/operations.h +20 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +34 -0
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +68 -37
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +21 -14
- nuitka/build/include/nuitka/helper/sequences.h +19 -13
- nuitka/build/include/nuitka/helper/sets.h +11 -12
- nuitka/build/include/nuitka/helper/slices.h +31 -25
- nuitka/build/include/nuitka/helper/strings.h +16 -17
- nuitka/build/include/nuitka/helper/subscripts.h +18 -201
- nuitka/build/include/nuitka/helper/tuples.h +64 -52
- nuitka/build/include/nuitka/helpers.h +50 -22
- nuitka/build/include/nuitka/importing.h +28 -21
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +163 -71
- nuitka/build/include/nuitka/printing.h +29 -22
- nuitka/build/include/nuitka/python_pgo.h +19 -18
- nuitka/build/include/nuitka/safe_string_ops.h +20 -18
- nuitka/build/include/nuitka/threading.h +45 -32
- nuitka/build/include/nuitka/tracing.h +28 -18
- nuitka/build/include/nuitka/type_aliases.h +30 -0
- nuitka/build/include/nuitka/unfreezing.h +29 -23
- nuitka/build/inline_copy/bin/scons.py +14 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/ListVariable.py +6 -6
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +0 -3
- 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 +307 -0
- nuitka/build/inline_copy/tqdm/tqdm/__init__.py +2 -2
- nuitka/build/inline_copy/tqdm/tqdm/_monitor.py +4 -1
- nuitka/build/inline_copy/tqdm/tqdm/utils.py +14 -8
- nuitka/build/inline_copy/tqdm/tqdm/version.py +1 -8
- 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/static_src/CompiledAsyncgenType.c +221 -221
- nuitka/build/static_src/CompiledCellType.c +69 -44
- nuitka/build/static_src/CompiledCodeHelpers.c +276 -159
- nuitka/build/static_src/CompiledCoroutineType.c +229 -226
- nuitka/build/static_src/CompiledFrameType.c +323 -138
- nuitka/build/static_src/CompiledFunctionType.c +547 -231
- nuitka/build/static_src/CompiledGeneratorType.c +416 -290
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +593 -228
- nuitka/build/static_src/CompiledMethodType.c +91 -82
- nuitka/build/static_src/HelpersAllocator.c +352 -45
- nuitka/build/static_src/HelpersAttributes.c +30 -72
- nuitka/build/static_src/HelpersBuiltin.c +65 -46
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +19 -20
- nuitka/build/static_src/HelpersCalling.c +40 -37
- nuitka/build/static_src/HelpersCallingGenerated.c +1061 -242
- nuitka/build/static_src/HelpersChecksumTools.c +35 -21
- nuitka/build/static_src/HelpersClasses.c +17 -17
- 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 +536 -496
- nuitka/build/static_src/HelpersComparisonEqUtils.c +22 -19
- nuitka/build/static_src/HelpersComparisonGe.c +531 -501
- nuitka/build/static_src/HelpersComparisonGt.c +530 -500
- nuitka/build/static_src/HelpersComparisonLe.c +531 -501
- nuitka/build/static_src/HelpersComparisonLt.c +530 -500
- nuitka/build/static_src/HelpersComparisonNe.c +538 -496
- nuitka/build/static_src/HelpersConsole.c +122 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +550 -521
- nuitka/build/static_src/HelpersDeepcopy.c +33 -33
- nuitka/build/static_src/HelpersDictionaries.c +232 -63
- nuitka/build/static_src/HelpersDictionariesGenerated.c +130 -127
- nuitka/build/static_src/HelpersDumpBacktraces.c +63 -0
- nuitka/build/static_src/HelpersEnvironmentVariables.c +65 -0
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +93 -0
- nuitka/build/static_src/HelpersExceptions.c +147 -62
- nuitka/build/static_src/HelpersFiles.c +116 -22
- nuitka/build/static_src/HelpersFilesystemPaths.c +292 -181
- nuitka/build/static_src/HelpersFloats.c +37 -31
- nuitka/build/static_src/HelpersHeapStorage.c +21 -17
- nuitka/build/static_src/HelpersImport.c +61 -29
- nuitka/build/static_src/HelpersImportHard.c +74 -61
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +237 -58
- nuitka/build/static_src/HelpersListsGenerated.c +41 -41
- nuitka/build/static_src/HelpersMappings.c +17 -17
- nuitka/build/static_src/HelpersMatching.c +137 -51
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +397 -152
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +102 -52
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +49 -43
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +172 -0
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +20 -21
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +83 -83
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +25 -24
- nuitka/build/static_src/HelpersOperationBinaryMod.c +129 -117
- nuitka/build/static_src/HelpersOperationBinaryMult.c +98 -82
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +33 -30
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryPow.c +68 -68
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +51 -51
- nuitka/build/static_src/HelpersOperationBinarySub.c +309 -88
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +49 -43
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +333 -163
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +24 -22
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +64 -64
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +38 -37
- nuitka/build/static_src/HelpersOperationInplaceMod.c +145 -140
- nuitka/build/static_src/HelpersOperationInplaceMult.c +89 -84
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplacePow.c +82 -82
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +48 -48
- nuitka/build/static_src/HelpersOperationInplaceSub.c +275 -122
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +68 -63
- nuitka/build/static_src/HelpersProfiling.c +25 -24
- nuitka/build/static_src/HelpersPythonPgo.c +22 -22
- nuitka/build/static_src/HelpersRaising.c +296 -283
- nuitka/build/static_src/HelpersSafeStrings.c +34 -22
- nuitka/build/static_src/HelpersSequences.c +18 -19
- nuitka/build/static_src/HelpersSlices.c +29 -23
- nuitka/build/static_src/HelpersStrings.c +235 -38
- nuitka/build/static_src/HelpersTuples.c +46 -34
- nuitka/build/static_src/HelpersTypes.c +166 -25
- nuitka/build/static_src/InspectPatcher.c +108 -27
- nuitka/build/static_src/MainProgram.c +464 -280
- nuitka/build/static_src/MetaPathBasedLoader.c +381 -257
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +39 -26
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +227 -29
- nuitka/build/static_src/OnefileBootstrap.c +281 -164
- nuitka/build/static_src/OnefileSplashScreen.cpp +51 -27
- nuitka/code_generation/AsyncgenCodes.py +21 -23
- nuitka/code_generation/AttributeCodes.py +31 -27
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +290 -184
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +29 -18
- nuitka/code_generation/CallCodes.py +35 -33
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +61 -28
- nuitka/code_generation/CodeHelperSelection.py +20 -18
- nuitka/code_generation/CodeHelpers.py +28 -21
- nuitka/code_generation/CodeObjectCodes.py +36 -26
- nuitka/code_generation/ComparisonCodes.py +51 -22
- nuitka/code_generation/ComparisonHelperDefinitions.py +42 -25
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +82 -28
- nuitka/code_generation/Contexts.py +180 -42
- nuitka/code_generation/CoroutineCodes.py +21 -23
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +28 -26
- nuitka/code_generation/Emission.py +21 -18
- nuitka/code_generation/ErrorCodes.py +57 -79
- nuitka/code_generation/EvalCodes.py +24 -20
- nuitka/code_generation/ExceptionCodes.py +182 -104
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +45 -27
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +28 -31
- nuitka/code_generation/FunctionCodes.py +26 -27
- nuitka/code_generation/GeneratorCodes.py +25 -26
- nuitka/code_generation/GlobalConstants.py +51 -25
- nuitka/code_generation/GlobalsLocalsCodes.py +23 -21
- nuitka/code_generation/IdCodes.py +19 -17
- nuitka/code_generation/ImportCodes.py +90 -50
- nuitka/code_generation/Indentation.py +23 -22
- nuitka/code_generation/IndexCodes.py +19 -17
- nuitka/code_generation/InjectCCodes.py +14 -12
- nuitka/code_generation/IntegerCodes.py +19 -17
- nuitka/code_generation/IteratorCodes.py +86 -71
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +20 -20
- nuitka/code_generation/ListCodes.py +32 -36
- nuitka/code_generation/LoaderCodes.py +22 -17
- nuitka/code_generation/LocalsDictCodes.py +56 -32
- nuitka/code_generation/LoopCodes.py +19 -17
- nuitka/code_generation/MatchCodes.py +42 -22
- nuitka/code_generation/ModuleCodes.py +71 -29
- nuitka/code_generation/Namify.py +27 -23
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +80 -51
- nuitka/code_generation/PackageResourceCodes.py +96 -23
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +183 -107
- nuitka/code_generation/Reports.py +32 -22
- nuitka/code_generation/ReturnCodes.py +20 -32
- nuitka/code_generation/SetCodes.py +19 -17
- nuitka/code_generation/SliceCodes.py +22 -20
- nuitka/code_generation/StringCodes.py +19 -17
- nuitka/code_generation/SubscriptCodes.py +24 -30
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TryCodes.py +31 -41
- nuitka/code_generation/TupleCodes.py +20 -18
- nuitka/code_generation/TypeAliasCodes.py +119 -0
- nuitka/code_generation/VariableCodes.py +118 -55
- nuitka/code_generation/VariableDeclarations.py +28 -25
- nuitka/code_generation/YieldCodes.py +23 -21
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +29 -19
- nuitka/code_generation/c_types/CTypeBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeCFloats.py +19 -17
- nuitka/code_generation/c_types/CTypeCLongs.py +19 -18
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +22 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +22 -21
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +89 -43
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +20 -18
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +43 -31
- nuitka/code_generation/c_types/CTypeVoids.py +20 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesConstants.py +143 -39
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +33 -33
- nuitka/code_generation/templates/CodeTemplatesFrames.py +36 -27
- nuitka/code_generation/templates/CodeTemplatesFunction.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +21 -19
- nuitka/code_generation/templates/CodeTemplatesIterators.py +19 -53
- nuitka/code_generation/templates/CodeTemplatesLoader.py +25 -19
- nuitka/code_generation/templates/CodeTemplatesModules.py +278 -169
- nuitka/code_generation/templates/CodeTemplatesVariables.py +115 -27
- nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -18
- nuitka/code_generation/templates/__init__.py +5 -4
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +21 -21
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +79 -28
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +22 -22
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +74 -106
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +19 -20
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +23 -23
- nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +35 -35
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +86 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +50 -38
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +27 -27
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +31 -31
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +35 -31
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +48 -48
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +27 -25
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
- nuitka/containers/Namedtuples.py +25 -18
- nuitka/containers/OrderedSets.py +105 -5
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +33 -18
- nuitka/distutils/DistutilCommands.py +84 -33
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +21 -18
- nuitka/finalizations/FinalizeMarkups.py +31 -55
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +60 -30
- nuitka/freezer/DllDependenciesCommon.py +47 -20
- nuitka/freezer/DllDependenciesMacOS.py +165 -58
- nuitka/freezer/DllDependenciesPosix.py +29 -19
- nuitka/freezer/DllDependenciesWin32.py +55 -33
- nuitka/freezer/ImportDetection.py +23 -17
- nuitka/freezer/IncludedDataFiles.py +142 -48
- nuitka/freezer/IncludedEntryPoints.py +104 -39
- nuitka/freezer/Onefile.py +32 -22
- nuitka/freezer/Standalone.py +166 -53
- nuitka/freezer/__init__.py +5 -4
- nuitka/importing/IgnoreListing.py +19 -17
- nuitka/importing/ImportCache.py +24 -21
- nuitka/importing/ImportResolving.py +103 -95
- nuitka/importing/Importing.py +319 -98
- nuitka/importing/PreloadedPackages.py +21 -18
- nuitka/importing/Recursion.py +142 -47
- nuitka/importing/StandardLibrary.py +96 -80
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +22 -23
- nuitka/nodes/AttributeLookupNodes.py +19 -17
- nuitka/nodes/AttributeNodes.py +19 -17
- nuitka/nodes/AttributeNodesGenerated.py +49 -24
- nuitka/nodes/BuiltinAllNodes.py +19 -17
- nuitka/nodes/BuiltinAnyNodes.py +19 -17
- nuitka/nodes/BuiltinComplexNodes.py +20 -17
- nuitka/nodes/BuiltinDecodingNodes.py +19 -17
- nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
- nuitka/nodes/BuiltinDictNodes.py +19 -17
- nuitka/nodes/BuiltinFormatNodes.py +20 -17
- nuitka/nodes/BuiltinHashNodes.py +19 -17
- nuitka/nodes/BuiltinInputNodes.py +19 -17
- nuitka/nodes/BuiltinIntegerNodes.py +19 -17
- nuitka/nodes/BuiltinIteratorNodes.py +25 -21
- nuitka/nodes/BuiltinLenNodes.py +19 -17
- nuitka/nodes/BuiltinNextNodes.py +19 -17
- nuitka/nodes/BuiltinOpenNodes.py +52 -18
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +40 -23
- nuitka/nodes/BuiltinRangeNodes.py +21 -19
- nuitka/nodes/BuiltinRefNodes.py +73 -40
- nuitka/nodes/BuiltinSumNodes.py +20 -18
- nuitka/nodes/BuiltinTypeNodes.py +19 -17
- nuitka/nodes/BuiltinVarsNodes.py +19 -18
- nuitka/nodes/BytesNodes.py +19 -17
- nuitka/nodes/CallNodes.py +19 -17
- nuitka/nodes/Checkers.py +19 -17
- nuitka/nodes/ChildrenHavingMixins.py +1624 -283
- nuitka/nodes/ClassNodes.py +49 -29
- nuitka/nodes/CodeObjectSpecs.py +29 -18
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +24 -25
- nuitka/nodes/ConstantRefNodes.py +57 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +22 -23
- nuitka/nodes/CtypesNodes.py +19 -18
- nuitka/nodes/DictionaryNodes.py +19 -18
- nuitka/nodes/ExceptionNodes.py +131 -43
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +34 -26
- nuitka/nodes/ExpressionBasesGenerated.py +341 -35
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +41 -28
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +84 -38
- nuitka/nodes/FutureSpecs.py +35 -20
- nuitka/nodes/GeneratorNodes.py +24 -25
- nuitka/nodes/GlobalsLocalsNodes.py +22 -17
- nuitka/nodes/HardImportNodesGenerated.py +746 -148
- nuitka/nodes/ImportHardNodes.py +46 -38
- nuitka/nodes/ImportNodes.py +438 -448
- nuitka/nodes/IndicatorMixins.py +19 -17
- nuitka/nodes/InjectCNodes.py +19 -18
- nuitka/nodes/IterationHandles.py +55 -34
- nuitka/nodes/KeyValuePairNodes.py +19 -17
- nuitka/nodes/ListOperationNodes.py +33 -21
- nuitka/nodes/LocalsDictNodes.py +19 -17
- nuitka/nodes/LocalsScopes.py +41 -41
- nuitka/nodes/LoopNodes.py +28 -17
- nuitka/nodes/MatchNodes.py +37 -24
- nuitka/nodes/ModuleAttributeNodes.py +18 -35
- nuitka/nodes/ModuleNodes.py +90 -31
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/NodeBases.py +73 -44
- nuitka/nodes/NodeMakingHelpers.py +92 -69
- nuitka/nodes/NodeMetaClasses.py +45 -28
- nuitka/nodes/OperatorNodes.py +28 -26
- nuitka/nodes/OperatorNodesUnary.py +148 -20
- nuitka/nodes/OsSysNodes.py +97 -18
- nuitka/nodes/OutlineNodes.py +24 -22
- nuitka/nodes/PackageMetadataNodes.py +37 -27
- nuitka/nodes/PackageResourceNodes.py +29 -23
- nuitka/nodes/PrintNodes.py +19 -17
- nuitka/nodes/ReturnNodes.py +20 -18
- nuitka/nodes/SideEffectNodes.py +19 -17
- nuitka/nodes/SliceNodes.py +20 -18
- nuitka/nodes/StatementBasesGenerated.py +125 -79
- nuitka/nodes/StatementNodes.py +27 -24
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +20 -17
- nuitka/nodes/SubscriptNodes.py +27 -25
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +68 -18
- nuitka/nodes/VariableAssignNodes.py +122 -64
- nuitka/nodes/VariableDelNodes.py +19 -17
- nuitka/nodes/VariableNameNodes.py +19 -17
- nuitka/nodes/VariableRefNodes.py +63 -26
- nuitka/nodes/VariableReleaseNodes.py +19 -17
- nuitka/nodes/YieldNodes.py +21 -19
- nuitka/nodes/__init__.py +5 -4
- nuitka/nodes/shapes/BuiltinTypeShapes.py +169 -46
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +57 -17
- nuitka/nodes/shapes/StandardShapes.py +80 -21
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +21 -18
- nuitka/optimizations/FunctionInlining.py +22 -23
- nuitka/optimizations/Graphs.py +19 -17
- nuitka/optimizations/Optimization.py +39 -35
- nuitka/optimizations/OptimizeBuiltinCalls.py +31 -27
- nuitka/optimizations/Tags.py +19 -18
- nuitka/optimizations/TraceCollections.py +67 -24
- nuitka/optimizations/ValueTraces.py +92 -25
- nuitka/optimizations/__init__.py +5 -4
- nuitka/pgo/PGO.py +33 -23
- nuitka/pgo/__init__.py +5 -4
- nuitka/plugins/PluginBase.py +655 -112
- nuitka/plugins/Plugins.py +247 -61
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +374 -135
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +20 -19
- nuitka/plugins/standard/DataFilesPlugin.py +65 -29
- nuitka/plugins/standard/DelvewheelPlugin.py +32 -24
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +37 -0
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +256 -0
- nuitka/plugins/standard/DillPlugin.py +42 -134
- nuitka/plugins/standard/DllFilesPlugin.py +125 -42
- nuitka/plugins/standard/EnumPlugin.py +19 -17
- nuitka/plugins/standard/EventletPlugin.py +19 -17
- nuitka/plugins/standard/GeventPlugin.py +19 -17
- nuitka/plugins/standard/GiPlugin.py +44 -28
- nuitka/plugins/standard/GlfwPlugin.py +20 -17
- nuitka/plugins/standard/ImplicitImports.py +403 -54
- nuitka/plugins/standard/KivyPlugin.py +24 -20
- nuitka/plugins/standard/MatplotlibPlugin.py +99 -42
- nuitka/plugins/standard/MultiprocessingPlugin.py +35 -39
- nuitka/plugins/standard/NumpyPlugin.py +19 -17
- nuitka/plugins/standard/OptionsNannyPlugin.py +48 -76
- nuitka/plugins/standard/PbrPlugin.py +21 -19
- nuitka/plugins/standard/PkgResourcesPlugin.py +34 -23
- nuitka/plugins/standard/PlaywrightPlugin.py +184 -0
- nuitka/plugins/standard/PmwPlugin.py +30 -27
- nuitka/plugins/standard/PySidePyQtPlugin.py +82 -80
- nuitka/plugins/standard/PywebViewPlugin.py +19 -17
- nuitka/plugins/standard/SpacyPlugin.py +136 -0
- nuitka/plugins/standard/TensorflowPlugin.py +20 -17
- nuitka/plugins/standard/TkinterPlugin.py +102 -108
- nuitka/plugins/standard/TorchPlugin.py +20 -17
- nuitka/plugins/standard/TransformersPlugin.py +90 -231
- nuitka/plugins/standard/TrioPlugin.py +18 -15
- nuitka/plugins/standard/UpxPlugin.py +21 -19
- nuitka/plugins/standard/__init__.py +5 -4
- nuitka/plugins/standard/standard.nuitka-package.config.yml +3925 -1293
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +14 -14
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +154 -66
- nuitka/reports/CompilationReportReader.py +79 -0
- nuitka/reports/LicenseReport.rst.j2 +21 -21
- nuitka/reports/Reports.py +363 -76
- nuitka/reports/__init__.py +5 -4
- nuitka/specs/BuiltinBytesOperationSpecs.py +18 -17
- nuitka/specs/BuiltinDictOperationSpecs.py +18 -17
- nuitka/specs/BuiltinListOperationSpecs.py +18 -17
- nuitka/specs/BuiltinParameterSpecs.py +35 -21
- nuitka/specs/BuiltinStrOperationSpecs.py +19 -18
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -18
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +74 -22
- nuitka/specs/ParameterSpecs.py +60 -45
- nuitka/specs/__init__.py +5 -4
- nuitka/tools/Basics.py +20 -18
- nuitka/tools/__init__.py +5 -4
- nuitka/tools/commercial/__init__.py +7 -6
- nuitka/tools/data_composer/DataComposer.py +78 -62
- nuitka/tools/data_composer/__init__.py +5 -4
- nuitka/tools/data_composer/__main__.py +18 -17
- nuitka/tools/environments/CreateEnvironment.py +20 -17
- nuitka/tools/environments/Virtualenv.py +60 -32
- nuitka/tools/environments/__init__.py +5 -4
- nuitka/tools/general/__init__.py +5 -4
- nuitka/tools/general/dll_report/__init__.py +5 -4
- nuitka/tools/general/dll_report/__main__.py +29 -22
- nuitka/tools/general/find_module/FindModuleCode.py +35 -22
- nuitka/tools/general/find_module/__init__.py +5 -4
- nuitka/tools/onefile_compressor/OnefileCompressor.py +213 -131
- nuitka/tools/onefile_compressor/__init__.py +5 -4
- nuitka/tools/onefile_compressor/__main__.py +18 -17
- nuitka/tools/podman/Podman.py +19 -17
- nuitka/tools/podman/__init__.py +5 -4
- nuitka/tools/podman/__main__.py +35 -19
- nuitka/tools/profiler/__init__.py +5 -4
- nuitka/tools/profiler/__main__.py +18 -17
- nuitka/tools/scanning/DisplayPackageDLLs.py +47 -22
- nuitka/tools/scanning/DisplayPackageData.py +31 -19
- nuitka/tools/scanning/__init__.py +5 -4
- nuitka/tools/specialize/CTypeDescriptions.py +251 -80
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +248 -82
- nuitka/tools/specialize/SpecializePython.py +108 -45
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +175 -114
- nuitka/tools/testing/Constructs.py +19 -17
- nuitka/tools/testing/OutputComparison.py +54 -18
- nuitka/tools/testing/Pythons.py +19 -18
- nuitka/tools/testing/RuntimeTracing.py +20 -19
- nuitka/tools/testing/SearchModes.py +26 -20
- nuitka/tools/testing/Valgrind.py +19 -17
- nuitka/tools/testing/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__main__.py +18 -18
- nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
- nuitka/tools/testing/compare_with_cpython/__main__.py +39 -30
- nuitka/tools/testing/find_sxs_modules/__init__.py +5 -4
- nuitka/tools/testing/find_sxs_modules/__main__.py +17 -17
- nuitka/tools/testing/measure_construct_performance/__init__.py +5 -4
- nuitka/tools/testing/measure_construct_performance/__main__.py +23 -33
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +134 -51
- nuitka/tools/watch/AutoStage.py +145 -0
- nuitka/tools/watch/GitHub.py +113 -0
- nuitka/tools/watch/__init__.py +5 -4
- nuitka/tools/watch/__main__.py +322 -91
- nuitka/tree/Building.py +184 -182
- nuitka/tree/ComplexCallHelperFunctions.py +84 -58
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +29 -20
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +51 -31
- nuitka/tree/ReformulationAssignmentStatements.py +96 -91
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +20 -18
- nuitka/tree/ReformulationClasses.py +45 -39
- nuitka/tree/ReformulationClasses3.py +239 -116
- nuitka/tree/ReformulationComparisonExpressions.py +29 -35
- nuitka/tree/ReformulationContractionExpressions.py +58 -55
- nuitka/tree/ReformulationDictionaryCreation.py +41 -35
- nuitka/tree/ReformulationExecStatements.py +42 -39
- nuitka/tree/ReformulationForLoopStatements.py +30 -34
- nuitka/tree/ReformulationFunctionStatements.py +59 -55
- nuitka/tree/ReformulationImportStatements.py +34 -29
- nuitka/tree/ReformulationLambdaExpressions.py +23 -24
- nuitka/tree/ReformulationMatchStatements.py +246 -92
- nuitka/tree/ReformulationMultidist.py +22 -18
- nuitka/tree/ReformulationNamespacePackages.py +55 -46
- nuitka/tree/ReformulationPrintStatements.py +23 -24
- nuitka/tree/ReformulationSequenceCreation.py +50 -49
- nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
- nuitka/tree/ReformulationTryExceptStatements.py +19 -17
- nuitka/tree/ReformulationTryFinallyStatements.py +34 -17
- nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
- nuitka/tree/ReformulationWithStatements.py +39 -41
- nuitka/tree/ReformulationYieldExpressions.py +44 -24
- nuitka/tree/SourceHandling.py +76 -31
- nuitka/tree/SyntaxErrors.py +19 -17
- nuitka/tree/TreeHelpers.py +33 -20
- nuitka/tree/VariableClosure.py +35 -39
- nuitka/tree/__init__.py +5 -4
- nuitka/utils/AppDirs.py +41 -20
- nuitka/utils/CStrings.py +66 -21
- nuitka/utils/CommandLineOptions.py +111 -22
- nuitka/utils/Distributions.py +445 -54
- nuitka/utils/Download.py +89 -57
- nuitka/utils/Execution.py +102 -58
- nuitka/utils/FileOperations.py +357 -128
- nuitka/utils/Hashing.py +55 -33
- nuitka/utils/Images.py +26 -19
- nuitka/utils/Importing.py +119 -37
- nuitka/utils/InlineCopies.py +52 -0
- nuitka/utils/InstalledPythons.py +85 -75
- nuitka/utils/InstanceCounters.py +20 -17
- nuitka/utils/Jinja2.py +30 -22
- nuitka/utils/Json.py +21 -19
- nuitka/utils/MacOSApp.py +26 -18
- nuitka/utils/MemoryUsage.py +20 -18
- nuitka/utils/ModuleNames.py +42 -26
- nuitka/utils/PackageResources.py +44 -0
- nuitka/utils/ReExecute.py +50 -28
- nuitka/utils/Rest.py +20 -17
- nuitka/utils/SharedLibraries.py +161 -75
- nuitka/utils/Shebang.py +20 -17
- nuitka/utils/Signing.py +63 -18
- nuitka/utils/SlotMetaClasses.py +57 -0
- nuitka/utils/StaticLibraries.py +83 -56
- nuitka/utils/ThreadedExecutor.py +18 -17
- nuitka/utils/Timing.py +22 -20
- nuitka/utils/Utils.py +132 -25
- nuitka/utils/WindowsFileUsage.py +22 -20
- nuitka/utils/WindowsResources.py +25 -18
- nuitka/utils/Yaml.py +62 -24
- nuitka/utils/__init__.py +5 -4
- Nuitka_winsvc-1.8.dist-info/RECORD +0 -905
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_gui.py +0 -9
- nuitka/build/inline_copy/tqdm/tqdm/gui.py +0 -191
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/top_level.txt +0 -0
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
/* WARNING, this code is GENERATED. Modify the template HelperOperationBinary.c.j2 instead! */
|
|
19
4
|
|
|
20
5
|
/* This file is included from another C file, help IDEs to still parse it on its own. */
|
|
@@ -73,6 +58,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_INT(PyObject *operand1, PyObj
|
|
|
73
58
|
goto exit_result_ok_clong;
|
|
74
59
|
}
|
|
75
60
|
}
|
|
61
|
+
|
|
76
62
|
{
|
|
77
63
|
PyObject *operand1_object = operand1;
|
|
78
64
|
PyObject *operand2_object = operand2;
|
|
@@ -85,7 +71,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_INT(PyObject *operand1, PyObj
|
|
|
85
71
|
}
|
|
86
72
|
|
|
87
73
|
exit_result_ok_clong:
|
|
88
|
-
result =
|
|
74
|
+
result = Nuitka_PyInt_FromLong(clong_result);
|
|
89
75
|
goto exit_result_ok;
|
|
90
76
|
|
|
91
77
|
exit_result_object:
|
|
@@ -144,7 +130,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_INT(P
|
|
|
144
130
|
goto exit_binary_result_object;
|
|
145
131
|
}
|
|
146
132
|
|
|
147
|
-
|
|
133
|
+
Py_DECREF_IMMORTAL(x);
|
|
148
134
|
}
|
|
149
135
|
|
|
150
136
|
if (slot2 != NULL) {
|
|
@@ -155,7 +141,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_INT(P
|
|
|
155
141
|
goto exit_binary_result_object;
|
|
156
142
|
}
|
|
157
143
|
|
|
158
|
-
|
|
144
|
+
Py_DECREF_IMMORTAL(x);
|
|
159
145
|
}
|
|
160
146
|
|
|
161
147
|
#if PYTHON_VERSION < 0x300
|
|
@@ -304,6 +290,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_INT(PyObject *operand1, Py
|
|
|
304
290
|
goto exit_result_ok_clong;
|
|
305
291
|
}
|
|
306
292
|
}
|
|
293
|
+
|
|
307
294
|
{
|
|
308
295
|
PyObject *operand1_object = operand1;
|
|
309
296
|
PyObject *operand2_object = operand2;
|
|
@@ -316,7 +303,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_INT(PyObject *operand1, Py
|
|
|
316
303
|
}
|
|
317
304
|
|
|
318
305
|
exit_result_ok_clong:
|
|
319
|
-
result =
|
|
306
|
+
result = Nuitka_PyInt_FromLong(clong_result);
|
|
320
307
|
goto exit_result_ok;
|
|
321
308
|
|
|
322
309
|
exit_result_object:
|
|
@@ -379,7 +366,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(P
|
|
|
379
366
|
goto exit_binary_result_object;
|
|
380
367
|
}
|
|
381
368
|
|
|
382
|
-
|
|
369
|
+
Py_DECREF_IMMORTAL(x);
|
|
383
370
|
slot2 = NULL;
|
|
384
371
|
}
|
|
385
372
|
}
|
|
@@ -391,7 +378,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(P
|
|
|
391
378
|
goto exit_binary_result_object;
|
|
392
379
|
}
|
|
393
380
|
|
|
394
|
-
|
|
381
|
+
Py_DECREF_IMMORTAL(x);
|
|
395
382
|
}
|
|
396
383
|
|
|
397
384
|
if (slot2 != NULL) {
|
|
@@ -402,7 +389,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(P
|
|
|
402
389
|
goto exit_binary_result_object;
|
|
403
390
|
}
|
|
404
391
|
|
|
405
|
-
|
|
392
|
+
Py_DECREF_IMMORTAL(x);
|
|
406
393
|
}
|
|
407
394
|
|
|
408
395
|
#if PYTHON_VERSION < 0x300
|
|
@@ -481,7 +468,8 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(P
|
|
|
481
468
|
|
|
482
469
|
{
|
|
483
470
|
// No sequence repeat slot sq_repeat available for this type.
|
|
484
|
-
}
|
|
471
|
+
}
|
|
472
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
485
473
|
{
|
|
486
474
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
487
475
|
|
|
@@ -552,6 +540,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(PyObject *operand1, Py
|
|
|
552
540
|
goto exit_result_ok_clong;
|
|
553
541
|
}
|
|
554
542
|
}
|
|
543
|
+
|
|
555
544
|
{
|
|
556
545
|
PyObject *operand1_object = operand1;
|
|
557
546
|
PyObject *operand2_object = operand2;
|
|
@@ -564,7 +553,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_OBJECT(PyObject *operand1, Py
|
|
|
564
553
|
}
|
|
565
554
|
|
|
566
555
|
exit_result_ok_clong:
|
|
567
|
-
result =
|
|
556
|
+
result = Nuitka_PyInt_FromLong(clong_result);
|
|
568
557
|
goto exit_result_ok;
|
|
569
558
|
|
|
570
559
|
exit_result_object:
|
|
@@ -637,6 +626,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_INT_INT(PyObject *operand1, PyOb
|
|
|
637
626
|
goto exit_result_ok_clong;
|
|
638
627
|
}
|
|
639
628
|
}
|
|
629
|
+
|
|
640
630
|
{
|
|
641
631
|
PyObject *operand1_object = operand1;
|
|
642
632
|
PyObject *operand2_object = operand2;
|
|
@@ -710,7 +700,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_INT(
|
|
|
710
700
|
goto exit_binary_result_object;
|
|
711
701
|
}
|
|
712
702
|
|
|
713
|
-
|
|
703
|
+
Py_DECREF_IMMORTAL(x);
|
|
714
704
|
}
|
|
715
705
|
|
|
716
706
|
if (slot2 != NULL) {
|
|
@@ -721,7 +711,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_INT(
|
|
|
721
711
|
goto exit_binary_result_object;
|
|
722
712
|
}
|
|
723
713
|
|
|
724
|
-
|
|
714
|
+
Py_DECREF_IMMORTAL(x);
|
|
725
715
|
}
|
|
726
716
|
|
|
727
717
|
#if PYTHON_VERSION < 0x300
|
|
@@ -878,6 +868,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_OBJECT_INT(PyObject *operand1, P
|
|
|
878
868
|
goto exit_result_ok_clong;
|
|
879
869
|
}
|
|
880
870
|
}
|
|
871
|
+
|
|
881
872
|
{
|
|
882
873
|
PyObject *operand1_object = operand1;
|
|
883
874
|
PyObject *operand2_object = operand2;
|
|
@@ -955,7 +946,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_INT_OBJECT(
|
|
|
955
946
|
goto exit_binary_result_object;
|
|
956
947
|
}
|
|
957
948
|
|
|
958
|
-
|
|
949
|
+
Py_DECREF_IMMORTAL(x);
|
|
959
950
|
slot2 = NULL;
|
|
960
951
|
}
|
|
961
952
|
}
|
|
@@ -967,7 +958,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_INT_OBJECT(
|
|
|
967
958
|
goto exit_binary_result_object;
|
|
968
959
|
}
|
|
969
960
|
|
|
970
|
-
|
|
961
|
+
Py_DECREF_IMMORTAL(x);
|
|
971
962
|
}
|
|
972
963
|
|
|
973
964
|
if (slot2 != NULL) {
|
|
@@ -978,7 +969,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_INT_OBJECT(
|
|
|
978
969
|
goto exit_binary_result_object;
|
|
979
970
|
}
|
|
980
971
|
|
|
981
|
-
|
|
972
|
+
Py_DECREF_IMMORTAL(x);
|
|
982
973
|
}
|
|
983
974
|
|
|
984
975
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1057,7 +1048,8 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_INT_OBJECT(
|
|
|
1057
1048
|
|
|
1058
1049
|
{
|
|
1059
1050
|
// No sequence repeat slot sq_repeat available for this type.
|
|
1060
|
-
}
|
|
1051
|
+
}
|
|
1052
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
1061
1053
|
{
|
|
1062
1054
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
1063
1055
|
|
|
@@ -1136,6 +1128,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_INT_OBJECT(PyObject *operand1, P
|
|
|
1136
1128
|
goto exit_result_ok_clong;
|
|
1137
1129
|
}
|
|
1138
1130
|
}
|
|
1131
|
+
|
|
1139
1132
|
{
|
|
1140
1133
|
PyObject *operand1_object = operand1;
|
|
1141
1134
|
PyObject *operand2_object = operand2;
|
|
@@ -1255,7 +1248,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_LONG(
|
|
|
1255
1248
|
goto exit_binary_result_object;
|
|
1256
1249
|
}
|
|
1257
1250
|
|
|
1258
|
-
|
|
1251
|
+
Py_DECREF_IMMORTAL(x);
|
|
1259
1252
|
}
|
|
1260
1253
|
|
|
1261
1254
|
if (slot2 != NULL) {
|
|
@@ -1266,7 +1259,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_LONG(
|
|
|
1266
1259
|
goto exit_binary_result_object;
|
|
1267
1260
|
}
|
|
1268
1261
|
|
|
1269
|
-
|
|
1262
|
+
Py_DECREF_IMMORTAL(x);
|
|
1270
1263
|
}
|
|
1271
1264
|
|
|
1272
1265
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1457,7 +1450,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_LONG_OBJECT(
|
|
|
1457
1450
|
goto exit_binary_result_object;
|
|
1458
1451
|
}
|
|
1459
1452
|
|
|
1460
|
-
|
|
1453
|
+
Py_DECREF_IMMORTAL(x);
|
|
1461
1454
|
slot2 = NULL;
|
|
1462
1455
|
}
|
|
1463
1456
|
}
|
|
@@ -1469,7 +1462,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_LONG_OBJECT(
|
|
|
1469
1462
|
goto exit_binary_result_object;
|
|
1470
1463
|
}
|
|
1471
1464
|
|
|
1472
|
-
|
|
1465
|
+
Py_DECREF_IMMORTAL(x);
|
|
1473
1466
|
}
|
|
1474
1467
|
|
|
1475
1468
|
if (slot2 != NULL) {
|
|
@@ -1480,7 +1473,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_LONG_OBJECT(
|
|
|
1480
1473
|
goto exit_binary_result_object;
|
|
1481
1474
|
}
|
|
1482
1475
|
|
|
1483
|
-
|
|
1476
|
+
Py_DECREF_IMMORTAL(x);
|
|
1484
1477
|
}
|
|
1485
1478
|
|
|
1486
1479
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1559,7 +1552,8 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_LONG_OBJECT(
|
|
|
1559
1552
|
|
|
1560
1553
|
{
|
|
1561
1554
|
// No sequence repeat slot sq_repeat available for this type.
|
|
1562
|
-
}
|
|
1555
|
+
}
|
|
1556
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
1563
1557
|
{
|
|
1564
1558
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
1565
1559
|
|
|
@@ -1716,7 +1710,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_LONG
|
|
|
1716
1710
|
goto exit_binary_result_object;
|
|
1717
1711
|
}
|
|
1718
1712
|
|
|
1719
|
-
|
|
1713
|
+
Py_DECREF_IMMORTAL(x);
|
|
1720
1714
|
}
|
|
1721
1715
|
|
|
1722
1716
|
if (slot2 != NULL) {
|
|
@@ -1727,7 +1721,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_LONG
|
|
|
1727
1721
|
goto exit_binary_result_object;
|
|
1728
1722
|
}
|
|
1729
1723
|
|
|
1730
|
-
|
|
1724
|
+
Py_DECREF_IMMORTAL(x);
|
|
1731
1725
|
}
|
|
1732
1726
|
|
|
1733
1727
|
#if PYTHON_VERSION < 0x300
|
|
@@ -1927,7 +1921,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_LONG_OBJECT
|
|
|
1927
1921
|
goto exit_binary_result_object;
|
|
1928
1922
|
}
|
|
1929
1923
|
|
|
1930
|
-
|
|
1924
|
+
Py_DECREF_IMMORTAL(x);
|
|
1931
1925
|
slot2 = NULL;
|
|
1932
1926
|
}
|
|
1933
1927
|
}
|
|
@@ -1939,7 +1933,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_LONG_OBJECT
|
|
|
1939
1933
|
goto exit_binary_result_object;
|
|
1940
1934
|
}
|
|
1941
1935
|
|
|
1942
|
-
|
|
1936
|
+
Py_DECREF_IMMORTAL(x);
|
|
1943
1937
|
}
|
|
1944
1938
|
|
|
1945
1939
|
if (slot2 != NULL) {
|
|
@@ -1950,7 +1944,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_LONG_OBJECT
|
|
|
1950
1944
|
goto exit_binary_result_object;
|
|
1951
1945
|
}
|
|
1952
1946
|
|
|
1953
|
-
|
|
1947
|
+
Py_DECREF_IMMORTAL(x);
|
|
1954
1948
|
}
|
|
1955
1949
|
|
|
1956
1950
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2029,7 +2023,8 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_LONG_OBJECT
|
|
|
2029
2023
|
|
|
2030
2024
|
{
|
|
2031
2025
|
// No sequence repeat slot sq_repeat available for this type.
|
|
2032
|
-
}
|
|
2026
|
+
}
|
|
2027
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
2033
2028
|
{
|
|
2034
2029
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
2035
2030
|
|
|
@@ -2196,7 +2191,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_FLOAT
|
|
|
2196
2191
|
goto exit_binary_result_object;
|
|
2197
2192
|
}
|
|
2198
2193
|
|
|
2199
|
-
|
|
2194
|
+
Py_DECREF_IMMORTAL(x);
|
|
2200
2195
|
}
|
|
2201
2196
|
|
|
2202
2197
|
if (slot2 != NULL) {
|
|
@@ -2207,7 +2202,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_OBJECT_FLOAT
|
|
|
2207
2202
|
goto exit_binary_result_object;
|
|
2208
2203
|
}
|
|
2209
2204
|
|
|
2210
|
-
|
|
2205
|
+
Py_DECREF_IMMORTAL(x);
|
|
2211
2206
|
}
|
|
2212
2207
|
|
|
2213
2208
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2396,7 +2391,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_FLOAT_OBJECT
|
|
|
2396
2391
|
goto exit_binary_result_object;
|
|
2397
2392
|
}
|
|
2398
2393
|
|
|
2399
|
-
|
|
2394
|
+
Py_DECREF_IMMORTAL(x);
|
|
2400
2395
|
slot2 = NULL;
|
|
2401
2396
|
}
|
|
2402
2397
|
}
|
|
@@ -2408,7 +2403,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_FLOAT_OBJECT
|
|
|
2408
2403
|
goto exit_binary_result_object;
|
|
2409
2404
|
}
|
|
2410
2405
|
|
|
2411
|
-
|
|
2406
|
+
Py_DECREF_IMMORTAL(x);
|
|
2412
2407
|
}
|
|
2413
2408
|
|
|
2414
2409
|
if (slot2 != NULL) {
|
|
@@ -2419,7 +2414,7 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_FLOAT_OBJECT
|
|
|
2419
2414
|
goto exit_binary_result_object;
|
|
2420
2415
|
}
|
|
2421
2416
|
|
|
2422
|
-
|
|
2417
|
+
Py_DECREF_IMMORTAL(x);
|
|
2423
2418
|
}
|
|
2424
2419
|
|
|
2425
2420
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2498,7 +2493,8 @@ static HEDLEY_NEVER_INLINE PyObject *__BINARY_OPERATION_MULT_OBJECT_FLOAT_OBJECT
|
|
|
2498
2493
|
|
|
2499
2494
|
{
|
|
2500
2495
|
// No sequence repeat slot sq_repeat available for this type.
|
|
2501
|
-
}
|
|
2496
|
+
}
|
|
2497
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
2502
2498
|
{
|
|
2503
2499
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
2504
2500
|
|
|
@@ -2654,7 +2650,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_FLOA
|
|
|
2654
2650
|
goto exit_binary_result_object;
|
|
2655
2651
|
}
|
|
2656
2652
|
|
|
2657
|
-
|
|
2653
|
+
Py_DECREF_IMMORTAL(x);
|
|
2658
2654
|
}
|
|
2659
2655
|
|
|
2660
2656
|
if (slot2 != NULL) {
|
|
@@ -2665,7 +2661,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_OBJECT_FLOA
|
|
|
2665
2661
|
goto exit_binary_result_object;
|
|
2666
2662
|
}
|
|
2667
2663
|
|
|
2668
|
-
|
|
2664
|
+
Py_DECREF_IMMORTAL(x);
|
|
2669
2665
|
}
|
|
2670
2666
|
|
|
2671
2667
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2862,7 +2858,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_FLOAT_OBJEC
|
|
|
2862
2858
|
goto exit_binary_result_object;
|
|
2863
2859
|
}
|
|
2864
2860
|
|
|
2865
|
-
|
|
2861
|
+
Py_DECREF_IMMORTAL(x);
|
|
2866
2862
|
slot2 = NULL;
|
|
2867
2863
|
}
|
|
2868
2864
|
}
|
|
@@ -2874,7 +2870,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_FLOAT_OBJEC
|
|
|
2874
2870
|
goto exit_binary_result_object;
|
|
2875
2871
|
}
|
|
2876
2872
|
|
|
2877
|
-
|
|
2873
|
+
Py_DECREF_IMMORTAL(x);
|
|
2878
2874
|
}
|
|
2879
2875
|
|
|
2880
2876
|
if (slot2 != NULL) {
|
|
@@ -2885,7 +2881,7 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_FLOAT_OBJEC
|
|
|
2885
2881
|
goto exit_binary_result_object;
|
|
2886
2882
|
}
|
|
2887
2883
|
|
|
2888
|
-
|
|
2884
|
+
Py_DECREF_IMMORTAL(x);
|
|
2889
2885
|
}
|
|
2890
2886
|
|
|
2891
2887
|
#if PYTHON_VERSION < 0x300
|
|
@@ -2964,7 +2960,8 @@ static HEDLEY_NEVER_INLINE nuitka_bool __BINARY_OPERATION_MULT_NBOOL_FLOAT_OBJEC
|
|
|
2964
2960
|
|
|
2965
2961
|
{
|
|
2966
2962
|
// No sequence repeat slot sq_repeat available for this type.
|
|
2967
|
-
}
|
|
2963
|
+
}
|
|
2964
|
+
// Special case for "*", also work with sequence repeat from right argument.
|
|
2968
2965
|
{
|
|
2969
2966
|
ssizeargfunc sq_slot = type2->tp_as_sequence != NULL ? type2->tp_as_sequence->sq_repeat : NULL;
|
|
2970
2967
|
|
|
@@ -3073,7 +3070,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_FLOAT_LONG(PyObject *operand1, Py
|
|
|
3073
3070
|
goto exit_binary_result_object;
|
|
3074
3071
|
}
|
|
3075
3072
|
|
|
3076
|
-
|
|
3073
|
+
Py_DECREF_IMMORTAL(x);
|
|
3077
3074
|
}
|
|
3078
3075
|
|
|
3079
3076
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3129,7 +3126,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_FLOAT_LONG(PyObject *operand1, P
|
|
|
3129
3126
|
goto exit_binary_result_object;
|
|
3130
3127
|
}
|
|
3131
3128
|
|
|
3132
|
-
|
|
3129
|
+
Py_DECREF_IMMORTAL(x);
|
|
3133
3130
|
}
|
|
3134
3131
|
|
|
3135
3132
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3194,7 +3191,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_FLOAT_INT(PyObject *operand1, PyO
|
|
|
3194
3191
|
goto exit_binary_result_object;
|
|
3195
3192
|
}
|
|
3196
3193
|
|
|
3197
|
-
|
|
3194
|
+
Py_DECREF_IMMORTAL(x);
|
|
3198
3195
|
}
|
|
3199
3196
|
|
|
3200
3197
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3248,7 +3245,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_FLOAT_INT(PyObject *operand1, Py
|
|
|
3248
3245
|
goto exit_binary_result_object;
|
|
3249
3246
|
}
|
|
3250
3247
|
|
|
3251
|
-
|
|
3248
|
+
Py_DECREF_IMMORTAL(x);
|
|
3252
3249
|
}
|
|
3253
3250
|
|
|
3254
3251
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3310,7 +3307,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_LONG_INT(PyObject *operand1, PyOb
|
|
|
3310
3307
|
goto exit_binary_result_object;
|
|
3311
3308
|
}
|
|
3312
3309
|
|
|
3313
|
-
|
|
3310
|
+
Py_DECREF_IMMORTAL(x);
|
|
3314
3311
|
}
|
|
3315
3312
|
|
|
3316
3313
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3364,7 +3361,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_LONG_INT(PyObject *operand1, PyO
|
|
|
3364
3361
|
goto exit_binary_result_object;
|
|
3365
3362
|
}
|
|
3366
3363
|
|
|
3367
|
-
|
|
3364
|
+
Py_DECREF_IMMORTAL(x);
|
|
3368
3365
|
}
|
|
3369
3366
|
|
|
3370
3367
|
// Statically recognized that coercion is not possible with these types
|
|
@@ -3441,9 +3438,10 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_CLONG(PyObject *operand1, lon
|
|
|
3441
3438
|
goto exit_result_ok_clong;
|
|
3442
3439
|
}
|
|
3443
3440
|
}
|
|
3441
|
+
|
|
3444
3442
|
{
|
|
3445
3443
|
PyObject *operand1_object = operand1;
|
|
3446
|
-
PyObject *operand2_object =
|
|
3444
|
+
PyObject *operand2_object = Nuitka_PyLong_FromLong(operand2);
|
|
3447
3445
|
|
|
3448
3446
|
PyObject *r = PyLong_Type.tp_as_number->nb_multiply(operand1_object, operand2_object);
|
|
3449
3447
|
assert(r != Py_NotImplemented);
|
|
@@ -3455,7 +3453,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_INT_CLONG(PyObject *operand1, lon
|
|
|
3455
3453
|
}
|
|
3456
3454
|
|
|
3457
3455
|
exit_result_ok_clong:
|
|
3458
|
-
result =
|
|
3456
|
+
result = Nuitka_PyInt_FromLong(clong_result);
|
|
3459
3457
|
goto exit_result_ok;
|
|
3460
3458
|
|
|
3461
3459
|
exit_result_object:
|
|
@@ -3521,9 +3519,10 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_INT_CLONG(PyObject *operand1, lo
|
|
|
3521
3519
|
goto exit_result_ok_clong;
|
|
3522
3520
|
}
|
|
3523
3521
|
}
|
|
3522
|
+
|
|
3524
3523
|
{
|
|
3525
3524
|
PyObject *operand1_object = operand1;
|
|
3526
|
-
PyObject *operand2_object =
|
|
3525
|
+
PyObject *operand2_object = Nuitka_PyLong_FromLong(operand2);
|
|
3527
3526
|
|
|
3528
3527
|
PyObject *r = PyLong_Type.tp_as_number->nb_multiply(operand1_object, operand2_object);
|
|
3529
3528
|
assert(r != Py_NotImplemented);
|
|
@@ -4670,7 +4669,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_STR(PyObject *operand1, Py
|
|
|
4670
4669
|
goto exit_binary_result_object;
|
|
4671
4670
|
}
|
|
4672
4671
|
|
|
4673
|
-
|
|
4672
|
+
Py_DECREF_IMMORTAL(x);
|
|
4674
4673
|
}
|
|
4675
4674
|
|
|
4676
4675
|
#if PYTHON_VERSION < 0x300
|
|
@@ -4806,7 +4805,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_STR_OBJECT(PyObject *operand1, Py
|
|
|
4806
4805
|
goto exit_binary_result_object;
|
|
4807
4806
|
}
|
|
4808
4807
|
|
|
4809
|
-
|
|
4808
|
+
Py_DECREF_IMMORTAL(x);
|
|
4810
4809
|
}
|
|
4811
4810
|
|
|
4812
4811
|
#if PYTHON_VERSION < 0x300
|
|
@@ -4925,7 +4924,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_UNICODE(PyObject *operand1
|
|
|
4925
4924
|
goto exit_binary_result_object;
|
|
4926
4925
|
}
|
|
4927
4926
|
|
|
4928
|
-
|
|
4927
|
+
Py_DECREF_IMMORTAL(x);
|
|
4929
4928
|
}
|
|
4930
4929
|
|
|
4931
4930
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5059,7 +5058,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_UNICODE_OBJECT(PyObject *operand1
|
|
|
5059
5058
|
goto exit_binary_result_object;
|
|
5060
5059
|
}
|
|
5061
5060
|
|
|
5062
|
-
|
|
5061
|
+
Py_DECREF_IMMORTAL(x);
|
|
5063
5062
|
}
|
|
5064
5063
|
|
|
5065
5064
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5178,7 +5177,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_BYTES(PyObject *operand1,
|
|
|
5178
5177
|
goto exit_binary_result_object;
|
|
5179
5178
|
}
|
|
5180
5179
|
|
|
5181
|
-
|
|
5180
|
+
Py_DECREF_IMMORTAL(x);
|
|
5182
5181
|
}
|
|
5183
5182
|
|
|
5184
5183
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5314,7 +5313,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_BYTES_OBJECT(PyObject *operand1,
|
|
|
5314
5313
|
goto exit_binary_result_object;
|
|
5315
5314
|
}
|
|
5316
5315
|
|
|
5317
|
-
|
|
5316
|
+
Py_DECREF_IMMORTAL(x);
|
|
5318
5317
|
}
|
|
5319
5318
|
|
|
5320
5319
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5433,7 +5432,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_TUPLE(PyObject *operand1,
|
|
|
5433
5432
|
goto exit_binary_result_object;
|
|
5434
5433
|
}
|
|
5435
5434
|
|
|
5436
|
-
|
|
5435
|
+
Py_DECREF_IMMORTAL(x);
|
|
5437
5436
|
}
|
|
5438
5437
|
|
|
5439
5438
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5567,7 +5566,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_TUPLE_OBJECT(PyObject *operand1,
|
|
|
5567
5566
|
goto exit_binary_result_object;
|
|
5568
5567
|
}
|
|
5569
5568
|
|
|
5570
|
-
|
|
5569
|
+
Py_DECREF_IMMORTAL(x);
|
|
5571
5570
|
}
|
|
5572
5571
|
|
|
5573
5572
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5685,7 +5684,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_LIST(PyObject *operand1, P
|
|
|
5685
5684
|
goto exit_binary_result_object;
|
|
5686
5685
|
}
|
|
5687
5686
|
|
|
5688
|
-
|
|
5687
|
+
Py_DECREF_IMMORTAL(x);
|
|
5689
5688
|
}
|
|
5690
5689
|
|
|
5691
5690
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5819,7 +5818,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_LIST_OBJECT(PyObject *operand1, P
|
|
|
5819
5818
|
goto exit_binary_result_object;
|
|
5820
5819
|
}
|
|
5821
5820
|
|
|
5822
|
-
|
|
5821
|
+
Py_DECREF_IMMORTAL(x);
|
|
5823
5822
|
}
|
|
5824
5823
|
|
|
5825
5824
|
#if PYTHON_VERSION < 0x300
|
|
@@ -5955,6 +5954,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_OBJECT(PyObject *operand1,
|
|
|
5955
5954
|
goto exit_result_ok_clong;
|
|
5956
5955
|
}
|
|
5957
5956
|
}
|
|
5957
|
+
|
|
5958
5958
|
{
|
|
5959
5959
|
PyObject *operand1_object = operand1;
|
|
5960
5960
|
PyObject *operand2_object = operand2;
|
|
@@ -5967,7 +5967,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_OBJECT(PyObject *operand1,
|
|
|
5967
5967
|
}
|
|
5968
5968
|
|
|
5969
5969
|
exit_result_ok_clong:
|
|
5970
|
-
result =
|
|
5970
|
+
result = Nuitka_PyInt_FromLong(clong_result);
|
|
5971
5971
|
goto exit_result_ok;
|
|
5972
5972
|
|
|
5973
5973
|
exit_result_object:
|
|
@@ -6022,7 +6022,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_OBJECT(PyObject *operand1,
|
|
|
6022
6022
|
goto exit_binary_result_object;
|
|
6023
6023
|
}
|
|
6024
6024
|
|
|
6025
|
-
|
|
6025
|
+
Py_DECREF_IMMORTAL(x);
|
|
6026
6026
|
slot2 = NULL;
|
|
6027
6027
|
}
|
|
6028
6028
|
}
|
|
@@ -6034,7 +6034,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_OBJECT(PyObject *operand1,
|
|
|
6034
6034
|
goto exit_binary_result_object;
|
|
6035
6035
|
}
|
|
6036
6036
|
|
|
6037
|
-
|
|
6037
|
+
Py_DECREF_IMMORTAL(x);
|
|
6038
6038
|
}
|
|
6039
6039
|
|
|
6040
6040
|
if (slot2 != NULL) {
|
|
@@ -6045,7 +6045,7 @@ static PyObject *_BINARY_OPERATION_MULT_OBJECT_OBJECT_OBJECT(PyObject *operand1,
|
|
|
6045
6045
|
goto exit_binary_result_object;
|
|
6046
6046
|
}
|
|
6047
6047
|
|
|
6048
|
-
|
|
6048
|
+
Py_DECREF_IMMORTAL(x);
|
|
6049
6049
|
}
|
|
6050
6050
|
|
|
6051
6051
|
#if PYTHON_VERSION < 0x300
|
|
@@ -6207,6 +6207,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(PyObject *operand1
|
|
|
6207
6207
|
goto exit_result_ok_clong;
|
|
6208
6208
|
}
|
|
6209
6209
|
}
|
|
6210
|
+
|
|
6210
6211
|
{
|
|
6211
6212
|
PyObject *operand1_object = operand1;
|
|
6212
6213
|
PyObject *operand2_object = operand2;
|
|
@@ -6275,7 +6276,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(PyObject *operand1
|
|
|
6275
6276
|
goto exit_binary_result_object;
|
|
6276
6277
|
}
|
|
6277
6278
|
|
|
6278
|
-
|
|
6279
|
+
Py_DECREF_IMMORTAL(x);
|
|
6279
6280
|
slot2 = NULL;
|
|
6280
6281
|
}
|
|
6281
6282
|
}
|
|
@@ -6287,7 +6288,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(PyObject *operand1
|
|
|
6287
6288
|
goto exit_binary_result_object;
|
|
6288
6289
|
}
|
|
6289
6290
|
|
|
6290
|
-
|
|
6291
|
+
Py_DECREF_IMMORTAL(x);
|
|
6291
6292
|
}
|
|
6292
6293
|
|
|
6293
6294
|
if (slot2 != NULL) {
|
|
@@ -6298,7 +6299,7 @@ static nuitka_bool _BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(PyObject *operand1
|
|
|
6298
6299
|
goto exit_binary_result_object;
|
|
6299
6300
|
}
|
|
6300
6301
|
|
|
6301
|
-
|
|
6302
|
+
Py_DECREF_IMMORTAL(x);
|
|
6302
6303
|
}
|
|
6303
6304
|
|
|
6304
6305
|
#if PYTHON_VERSION < 0x300
|
|
@@ -6420,3 +6421,18 @@ exit_binary_exception:
|
|
|
6420
6421
|
nuitka_bool BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(PyObject *operand1, PyObject *operand2) {
|
|
6421
6422
|
return _BINARY_OPERATION_MULT_NBOOL_OBJECT_OBJECT(operand1, operand2);
|
|
6422
6423
|
}
|
|
6424
|
+
|
|
6425
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
6426
|
+
// integrates with CPython, but also works on its own.
|
|
6427
|
+
//
|
|
6428
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
6429
|
+
// you may not use this file except in compliance with the License.
|
|
6430
|
+
// You may obtain a copy of the License at
|
|
6431
|
+
//
|
|
6432
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
6433
|
+
//
|
|
6434
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
6435
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
6436
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
6437
|
+
// See the License for the specific language governing permissions and
|
|
6438
|
+
// limitations under the License.
|