Nuitka-winsvc 2.0.5__cp311-cp311-win_amd64.whl → 2.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-2.0.5.data → Nuitka_winsvc-2.1.data}/scripts/nuitka-run.bat +9 -9
- {Nuitka_winsvc-2.0.5.data → Nuitka_winsvc-2.1.data}/scripts/nuitka.bat +15 -15
- {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/METADATA +1 -1
- Nuitka_winsvc-2.1.dist-info/RECORD +920 -0
- nuitka/Builtins.py +18 -17
- nuitka/BytecodeCaching.py +20 -19
- nuitka/Bytecodes.py +19 -17
- nuitka/CacheCleanup.py +22 -22
- nuitka/Constants.py +19 -17
- nuitka/Errors.py +19 -17
- nuitka/HardImportRegistry.py +20 -17
- nuitka/MainControl.py +31 -19
- nuitka/ModuleRegistry.py +40 -20
- nuitka/OptionParsing.py +67 -44
- nuitka/Options.py +42 -17
- nuitka/OutputDirectories.py +19 -17
- nuitka/PostProcessing.py +19 -17
- nuitka/Progress.py +19 -17
- nuitka/PythonFlavors.py +22 -18
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +19 -17
- nuitka/Serialization.py +21 -25
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +33 -20
- nuitka/TreeXML.py +19 -17
- nuitka/Variables.py +19 -17
- nuitka/Version.py +2 -2
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +18 -17
- nuitka/__past__.py +18 -17
- nuitka/build/Backend.scons +18 -21
- nuitka/build/CCompilerVersion.scons +17 -17
- nuitka/build/DataComposerInterface.py +19 -17
- nuitka/build/Onefile.scons +18 -21
- nuitka/build/SconsCaching.py +24 -43
- nuitka/build/SconsCompilerSettings.py +25 -29
- nuitka/build/SconsHacks.py +19 -17
- nuitka/build/SconsInterface.py +20 -25
- nuitka/build/SconsProgress.py +19 -17
- nuitka/build/SconsSpawn.py +40 -29
- nuitka/build/SconsUtils.py +85 -20
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +17 -17
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +17 -17
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -15
- nuitka/build/include/nuitka/compiled_asyncgen.h +17 -17
- nuitka/build/include/nuitka/compiled_cell.h +17 -17
- nuitka/build/include/nuitka/compiled_coroutine.h +17 -17
- nuitka/build/include/nuitka/compiled_frame.h +17 -17
- nuitka/build/include/nuitka/compiled_function.h +17 -17
- nuitka/build/include/nuitka/compiled_generator.h +17 -17
- nuitka/build/include/nuitka/compiled_method.h +16 -17
- nuitka/build/include/nuitka/constants.h +17 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- nuitka/build/include/nuitka/environment_variables.h +16 -16
- nuitka/build/include/nuitka/environment_variables_system.h +17 -18
- nuitka/build/include/nuitka/exception_groups.h +17 -18
- nuitka/build/include/nuitka/exceptions.h +17 -17
- nuitka/build/include/nuitka/filesystem_paths.h +17 -18
- nuitka/build/include/nuitka/freelists.h +16 -17
- nuitka/build/include/nuitka/helper/attributes.h +17 -17
- 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 +17 -17
- 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 +17 -17
- nuitka/build/include/nuitka/helper/floats.h +17 -18
- nuitka/build/include/nuitka/helper/import_hard.h +17 -17
- nuitka/build/include/nuitka/helper/indexes.h +17 -18
- nuitka/build/include/nuitka/helper/ints.h +17 -18
- nuitka/build/include/nuitka/helper/iterators.h +17 -17
- nuitka/build/include/nuitka/helper/lists.h +17 -18
- nuitka/build/include/nuitka/helper/lists_generated.h +17 -17
- nuitka/build/include/nuitka/helper/mappings.h +17 -18
- nuitka/build/include/nuitka/helper/operations.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +17 -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_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 +17 -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 +17 -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 +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +17 -17
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +14 -14
- nuitka/build/include/nuitka/helper/sequences.h +13 -13
- nuitka/build/include/nuitka/helper/sets.h +11 -12
- nuitka/build/include/nuitka/helper/slices.h +17 -17
- nuitka/build/include/nuitka/helper/strings.h +16 -17
- nuitka/build/include/nuitka/helper/subscripts.h +17 -17
- nuitka/build/include/nuitka/helper/tuples.h +17 -18
- nuitka/build/include/nuitka/helpers.h +17 -17
- nuitka/build/include/nuitka/importing.h +17 -17
- nuitka/build/include/nuitka/prelude.h +17 -17
- nuitka/build/include/nuitka/printing.h +17 -17
- nuitka/build/include/nuitka/python_pgo.h +17 -18
- nuitka/build/include/nuitka/safe_string_ops.h +17 -18
- nuitka/build/include/nuitka/threading.h +17 -17
- nuitka/build/include/nuitka/tracing.h +17 -17
- nuitka/build/include/nuitka/unfreezing.h +17 -17
- nuitka/build/static_src/CompiledAsyncgenType.c +17 -17
- nuitka/build/static_src/CompiledCellType.c +17 -18
- nuitka/build/static_src/CompiledCodeHelpers.c +17 -17
- nuitka/build/static_src/CompiledCoroutineType.c +17 -17
- nuitka/build/static_src/CompiledFrameType.c +17 -18
- nuitka/build/static_src/CompiledFunctionType.c +17 -18
- nuitka/build/static_src/CompiledGeneratorType.c +17 -18
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +17 -17
- nuitka/build/static_src/CompiledMethodType.c +17 -17
- nuitka/build/static_src/HelpersAllocator.c +17 -17
- nuitka/build/static_src/HelpersAttributes.c +16 -18
- nuitka/build/static_src/HelpersBuiltin.c +17 -17
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +17 -18
- nuitka/build/static_src/HelpersCalling.c +17 -17
- nuitka/build/static_src/HelpersCallingGenerated.c +17 -17
- nuitka/build/static_src/HelpersChecksumTools.c +17 -18
- nuitka/build/static_src/HelpersClasses.c +17 -17
- nuitka/build/static_src/HelpersComparisonEq.c +17 -17
- nuitka/build/static_src/HelpersComparisonEqUtils.c +17 -17
- nuitka/build/static_src/HelpersComparisonGe.c +17 -17
- nuitka/build/static_src/HelpersComparisonGt.c +17 -17
- nuitka/build/static_src/HelpersComparisonLe.c +17 -17
- nuitka/build/static_src/HelpersComparisonLt.c +17 -17
- nuitka/build/static_src/HelpersComparisonNe.c +17 -17
- nuitka/build/static_src/HelpersConstantsBlob.c +17 -17
- nuitka/build/static_src/HelpersDeepcopy.c +17 -17
- nuitka/build/static_src/HelpersDictionaries.c +17 -17
- nuitka/build/static_src/HelpersDictionariesGenerated.c +16 -17
- nuitka/build/static_src/HelpersDumpBacktraces.c +17 -18
- nuitka/build/static_src/HelpersEnvironmentVariables.c +17 -17
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +17 -17
- nuitka/build/static_src/HelpersExceptions.c +17 -18
- nuitka/build/static_src/HelpersFiles.c +17 -17
- nuitka/build/static_src/HelpersFilesystemPaths.c +17 -17
- nuitka/build/static_src/HelpersFloats.c +17 -17
- nuitka/build/static_src/HelpersHeapStorage.c +17 -17
- nuitka/build/static_src/HelpersImport.c +17 -17
- nuitka/build/static_src/HelpersImportHard.c +17 -17
- nuitka/build/static_src/HelpersLists.c +17 -18
- nuitka/build/static_src/HelpersListsGenerated.c +17 -17
- nuitka/build/static_src/HelpersMappings.c +17 -17
- nuitka/build/static_src/HelpersMatching.c +17 -18
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +17 -18
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryMod.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryMult.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryPow.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +17 -17
- nuitka/build/static_src/HelpersOperationBinarySub.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceMod.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceMult.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +17 -17
- nuitka/build/static_src/HelpersOperationInplacePow.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceSub.c +17 -17
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +17 -17
- nuitka/build/static_src/HelpersProfiling.c +17 -17
- nuitka/build/static_src/HelpersPythonPgo.c +17 -17
- nuitka/build/static_src/HelpersRaising.c +17 -17
- nuitka/build/static_src/HelpersSafeStrings.c +17 -17
- nuitka/build/static_src/HelpersSequences.c +17 -18
- nuitka/build/static_src/HelpersSlices.c +17 -18
- nuitka/build/static_src/HelpersStrings.c +17 -17
- nuitka/build/static_src/HelpersTuples.c +17 -17
- nuitka/build/static_src/HelpersTypes.c +17 -18
- nuitka/build/static_src/InspectPatcher.c +17 -17
- nuitka/build/static_src/MainProgram.c +17 -17
- nuitka/build/static_src/MetaPathBasedLoader.c +18 -18
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +17 -17
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +17 -18
- nuitka/build/static_src/OnefileBootstrap.c +17 -17
- nuitka/build/static_src/OnefileSplashScreen.cpp +17 -18
- nuitka/code_generation/AsyncgenCodes.py +19 -17
- nuitka/code_generation/AttributeCodes.py +19 -17
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +19 -17
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +19 -17
- nuitka/code_generation/CallCodes.py +19 -17
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +19 -17
- nuitka/code_generation/CodeHelperSelection.py +19 -17
- nuitka/code_generation/CodeHelpers.py +19 -17
- nuitka/code_generation/CodeObjectCodes.py +19 -17
- nuitka/code_generation/ComparisonCodes.py +19 -17
- nuitka/code_generation/ComparisonHelperDefinitions.py +19 -17
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +19 -17
- nuitka/code_generation/Contexts.py +19 -17
- nuitka/code_generation/CoroutineCodes.py +19 -17
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +19 -17
- nuitka/code_generation/Emission.py +19 -17
- nuitka/code_generation/ErrorCodes.py +19 -17
- nuitka/code_generation/EvalCodes.py +19 -17
- nuitka/code_generation/ExceptionCodes.py +19 -17
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +19 -17
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +19 -17
- nuitka/code_generation/FunctionCodes.py +19 -17
- nuitka/code_generation/GeneratorCodes.py +19 -17
- nuitka/code_generation/GlobalConstants.py +19 -17
- nuitka/code_generation/GlobalsLocalsCodes.py +19 -17
- nuitka/code_generation/IdCodes.py +19 -17
- nuitka/code_generation/ImportCodes.py +19 -17
- nuitka/code_generation/Indentation.py +19 -17
- 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 +19 -17
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +19 -17
- nuitka/code_generation/ListCodes.py +19 -17
- nuitka/code_generation/LoaderCodes.py +19 -17
- nuitka/code_generation/LocalsDictCodes.py +19 -17
- nuitka/code_generation/LoopCodes.py +19 -17
- nuitka/code_generation/MatchCodes.py +19 -17
- nuitka/code_generation/ModuleCodes.py +19 -17
- nuitka/code_generation/Namify.py +19 -17
- nuitka/code_generation/OperationCodes.py +21 -25
- nuitka/code_generation/PackageResourceCodes.py +19 -17
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +19 -17
- nuitka/code_generation/Reports.py +19 -17
- nuitka/code_generation/ReturnCodes.py +19 -17
- nuitka/code_generation/SetCodes.py +19 -17
- nuitka/code_generation/SliceCodes.py +19 -17
- nuitka/code_generation/StringCodes.py +19 -17
- nuitka/code_generation/SubscriptCodes.py +19 -17
- nuitka/code_generation/TryCodes.py +19 -17
- nuitka/code_generation/TupleCodes.py +19 -17
- nuitka/code_generation/VariableCodes.py +19 -17
- nuitka/code_generation/VariableDeclarations.py +19 -17
- nuitka/code_generation/YieldCodes.py +19 -17
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +19 -17
- 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 -17
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +19 -17
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +19 -17
- nuitka/code_generation/c_types/CTypeVoids.py +19 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesConstants.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesFrames.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesFunction.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesIterators.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesLoader.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesModules.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesVariables.py +18 -17
- nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -17
- nuitka/code_generation/templates/__init__.py +5 -4
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +17 -17
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +17 -17
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +17 -17
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +17 -17
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +17 -17
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +17 -17
- 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 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +17 -17
- 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 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
- nuitka/containers/Namedtuples.py +19 -17
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +18 -17
- nuitka/distutils/DistutilCommands.py +19 -17
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +19 -17
- nuitka/finalizations/FinalizeMarkups.py +20 -21
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +19 -17
- nuitka/freezer/DllDependenciesCommon.py +19 -17
- nuitka/freezer/DllDependenciesMacOS.py +19 -17
- nuitka/freezer/DllDependenciesPosix.py +18 -17
- nuitka/freezer/DllDependenciesWin32.py +20 -18
- nuitka/freezer/ImportDetection.py +19 -17
- nuitka/freezer/IncludedDataFiles.py +22 -17
- nuitka/freezer/IncludedEntryPoints.py +19 -17
- nuitka/freezer/Onefile.py +19 -17
- nuitka/freezer/Standalone.py +19 -17
- nuitka/freezer/__init__.py +5 -4
- nuitka/importing/IgnoreListing.py +19 -17
- nuitka/importing/ImportCache.py +19 -17
- nuitka/importing/ImportResolving.py +19 -17
- nuitka/importing/Importing.py +20 -18
- nuitka/importing/PreloadedPackages.py +19 -17
- nuitka/importing/Recursion.py +19 -17
- nuitka/importing/StandardLibrary.py +19 -17
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +19 -17
- nuitka/nodes/AttributeLookupNodes.py +19 -17
- nuitka/nodes/AttributeNodes.py +19 -17
- nuitka/nodes/AttributeNodesGenerated.py +18 -17
- nuitka/nodes/BuiltinAllNodes.py +19 -17
- nuitka/nodes/BuiltinAnyNodes.py +19 -17
- nuitka/nodes/BuiltinComplexNodes.py +19 -17
- nuitka/nodes/BuiltinDecodingNodes.py +19 -17
- nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
- nuitka/nodes/BuiltinDictNodes.py +19 -17
- nuitka/nodes/BuiltinFormatNodes.py +19 -17
- nuitka/nodes/BuiltinHashNodes.py +19 -17
- nuitka/nodes/BuiltinInputNodes.py +19 -17
- nuitka/nodes/BuiltinIntegerNodes.py +19 -17
- nuitka/nodes/BuiltinIteratorNodes.py +19 -17
- nuitka/nodes/BuiltinLenNodes.py +19 -17
- nuitka/nodes/BuiltinNextNodes.py +19 -17
- nuitka/nodes/BuiltinOpenNodes.py +19 -17
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +19 -17
- nuitka/nodes/BuiltinRangeNodes.py +19 -17
- nuitka/nodes/BuiltinRefNodes.py +19 -17
- nuitka/nodes/BuiltinSumNodes.py +19 -17
- nuitka/nodes/BuiltinTypeNodes.py +19 -17
- nuitka/nodes/BuiltinVarsNodes.py +19 -17
- nuitka/nodes/BytesNodes.py +19 -17
- nuitka/nodes/CallNodes.py +19 -17
- nuitka/nodes/Checkers.py +19 -17
- nuitka/nodes/ChildrenHavingMixins.py +125 -17
- nuitka/nodes/ClassNodes.py +19 -17
- nuitka/nodes/CodeObjectSpecs.py +19 -17
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +19 -17
- nuitka/nodes/ConstantRefNodes.py +19 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +19 -17
- nuitka/nodes/CtypesNodes.py +19 -17
- nuitka/nodes/DictionaryNodes.py +19 -17
- nuitka/nodes/ExceptionNodes.py +19 -17
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +19 -17
- nuitka/nodes/ExpressionBasesGenerated.py +18 -17
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +19 -17
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +20 -18
- nuitka/nodes/FutureSpecs.py +19 -17
- nuitka/nodes/GeneratorNodes.py +19 -17
- nuitka/nodes/GlobalsLocalsNodes.py +19 -17
- nuitka/nodes/HardImportNodesGenerated.py +103 -17
- nuitka/nodes/ImportHardNodes.py +19 -17
- nuitka/nodes/ImportNodes.py +19 -17
- nuitka/nodes/IndicatorMixins.py +19 -17
- nuitka/nodes/InjectCNodes.py +19 -17
- nuitka/nodes/IterationHandles.py +19 -17
- nuitka/nodes/KeyValuePairNodes.py +19 -17
- nuitka/nodes/ListOperationNodes.py +19 -17
- nuitka/nodes/LocalsDictNodes.py +19 -17
- nuitka/nodes/LocalsScopes.py +19 -17
- nuitka/nodes/LoopNodes.py +25 -17
- nuitka/nodes/MatchNodes.py +19 -17
- nuitka/nodes/ModuleAttributeNodes.py +19 -17
- nuitka/nodes/ModuleNodes.py +27 -17
- nuitka/nodes/NodeBases.py +24 -18
- nuitka/nodes/NodeMakingHelpers.py +21 -19
- nuitka/nodes/NodeMetaClasses.py +19 -18
- nuitka/nodes/OperatorNodes.py +19 -17
- nuitka/nodes/OperatorNodesUnary.py +19 -17
- nuitka/nodes/OsSysNodes.py +34 -17
- nuitka/nodes/OutlineNodes.py +19 -17
- nuitka/nodes/PackageMetadataNodes.py +19 -17
- nuitka/nodes/PackageResourceNodes.py +19 -17
- nuitka/nodes/PrintNodes.py +19 -17
- nuitka/nodes/ReturnNodes.py +19 -17
- nuitka/nodes/SideEffectNodes.py +19 -17
- nuitka/nodes/SliceNodes.py +19 -17
- nuitka/nodes/StatementBasesGenerated.py +18 -17
- nuitka/nodes/StatementNodes.py +19 -17
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +19 -17
- nuitka/nodes/SubscriptNodes.py +19 -17
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +19 -17
- nuitka/nodes/VariableAssignNodes.py +97 -59
- nuitka/nodes/VariableDelNodes.py +19 -17
- nuitka/nodes/VariableNameNodes.py +19 -17
- nuitka/nodes/VariableRefNodes.py +27 -17
- nuitka/nodes/VariableReleaseNodes.py +19 -17
- nuitka/nodes/YieldNodes.py +19 -17
- nuitka/nodes/__init__.py +5 -4
- nuitka/nodes/shapes/BuiltinTypeShapes.py +18 -17
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +19 -17
- nuitka/nodes/shapes/StandardShapes.py +18 -17
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +19 -17
- nuitka/optimizations/FunctionInlining.py +19 -17
- nuitka/optimizations/Graphs.py +19 -17
- nuitka/optimizations/Optimization.py +19 -17
- nuitka/optimizations/OptimizeBuiltinCalls.py +19 -17
- nuitka/optimizations/Tags.py +19 -17
- nuitka/optimizations/TraceCollections.py +20 -18
- nuitka/optimizations/ValueTraces.py +40 -24
- nuitka/optimizations/__init__.py +5 -4
- nuitka/pgo/PGO.py +19 -17
- nuitka/pgo/__init__.py +5 -4
- nuitka/plugins/PluginBase.py +197 -51
- nuitka/plugins/Plugins.py +20 -18
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +59 -31
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +19 -17
- nuitka/plugins/standard/DataFilesPlugin.py +28 -18
- nuitka/plugins/standard/DelvewheelPlugin.py +23 -20
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +17 -17
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +21 -18
- nuitka/plugins/standard/DillPlugin.py +19 -17
- nuitka/plugins/standard/DllFilesPlugin.py +52 -22
- 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 +19 -17
- nuitka/plugins/standard/GlfwPlugin.py +19 -17
- nuitka/plugins/standard/ImplicitImports.py +28 -19
- nuitka/plugins/standard/KivyPlugin.py +19 -17
- nuitka/plugins/standard/MatplotlibPlugin.py +19 -17
- nuitka/plugins/standard/MultiprocessingPlugin.py +19 -17
- nuitka/plugins/standard/NumpyPlugin.py +19 -17
- nuitka/plugins/standard/OptionsNannyPlugin.py +19 -17
- nuitka/plugins/standard/PbrPlugin.py +19 -17
- nuitka/plugins/standard/PkgResourcesPlugin.py +19 -17
- nuitka/plugins/standard/PmwPlugin.py +19 -17
- nuitka/plugins/standard/PySidePyQtPlugin.py +19 -17
- nuitka/plugins/standard/PywebViewPlugin.py +19 -17
- nuitka/plugins/standard/TensorflowPlugin.py +19 -17
- nuitka/plugins/standard/TkinterPlugin.py +19 -17
- nuitka/plugins/standard/TorchPlugin.py +19 -17
- nuitka/plugins/standard/TransformersPlugin.py +19 -17
- nuitka/plugins/standard/TrioPlugin.py +17 -15
- nuitka/plugins/standard/UpxPlugin.py +20 -18
- nuitka/plugins/standard/__init__.py +5 -4
- nuitka/plugins/standard/standard.nuitka-package.config.yml +52 -2
- nuitka/reports/CompilationReportReader.py +19 -17
- nuitka/reports/LicenseReport.rst.j2 +17 -17
- nuitka/reports/Reports.py +74 -21
- 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 +19 -17
- nuitka/specs/BuiltinStrOperationSpecs.py +18 -17
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -17
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +27 -19
- nuitka/specs/ParameterSpecs.py +19 -17
- nuitka/specs/__init__.py +5 -4
- nuitka/tools/Basics.py +19 -17
- nuitka/tools/__init__.py +5 -4
- nuitka/tools/commercial/__init__.py +7 -6
- nuitka/tools/data_composer/DataComposer.py +19 -17
- nuitka/tools/data_composer/__init__.py +5 -4
- nuitka/tools/data_composer/__main__.py +18 -17
- nuitka/tools/environments/CreateEnvironment.py +19 -17
- nuitka/tools/environments/Virtualenv.py +19 -17
- 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 +17 -17
- nuitka/tools/general/find_module/FindModuleCode.py +19 -17
- nuitka/tools/general/find_module/__init__.py +5 -4
- nuitka/tools/onefile_compressor/OnefileCompressor.py +20 -18
- 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 +18 -17
- nuitka/tools/profiler/__init__.py +5 -4
- nuitka/tools/profiler/__main__.py +18 -17
- nuitka/tools/scanning/DisplayPackageDLLs.py +19 -17
- nuitka/tools/scanning/DisplayPackageData.py +19 -17
- nuitka/tools/scanning/__init__.py +5 -4
- nuitka/tools/specialize/CTypeDescriptions.py +18 -17
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +19 -17
- nuitka/tools/specialize/SpecializePython.py +20 -17
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +25 -27
- nuitka/tools/testing/Constructs.py +19 -17
- nuitka/tools/testing/OutputComparison.py +19 -17
- nuitka/tools/testing/Pythons.py +19 -17
- nuitka/tools/testing/RuntimeTracing.py +18 -17
- nuitka/tools/testing/SearchModes.py +19 -17
- 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 +17 -17
- nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
- nuitka/tools/testing/compare_with_cpython/__main__.py +17 -17
- 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 +17 -17
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +17 -17
- nuitka/tools/watch/GitHub.py +18 -17
- nuitka/tools/watch/__init__.py +5 -4
- nuitka/tools/watch/__main__.py +20 -19
- nuitka/tree/Building.py +19 -17
- nuitka/tree/ComplexCallHelperFunctions.py +19 -17
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +19 -17
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +19 -17
- nuitka/tree/ReformulationAssignmentStatements.py +19 -17
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +19 -17
- nuitka/tree/ReformulationClasses.py +19 -17
- nuitka/tree/ReformulationClasses3.py +19 -17
- nuitka/tree/ReformulationComparisonExpressions.py +19 -17
- nuitka/tree/ReformulationContractionExpressions.py +19 -17
- nuitka/tree/ReformulationDictionaryCreation.py +19 -17
- nuitka/tree/ReformulationExecStatements.py +18 -17
- nuitka/tree/ReformulationForLoopStatements.py +19 -17
- nuitka/tree/ReformulationFunctionStatements.py +19 -17
- nuitka/tree/ReformulationImportStatements.py +19 -17
- nuitka/tree/ReformulationLambdaExpressions.py +19 -17
- nuitka/tree/ReformulationMatchStatements.py +19 -17
- nuitka/tree/ReformulationMultidist.py +19 -17
- nuitka/tree/ReformulationNamespacePackages.py +19 -17
- nuitka/tree/ReformulationPrintStatements.py +19 -17
- nuitka/tree/ReformulationSequenceCreation.py +19 -17
- nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
- nuitka/tree/ReformulationTryExceptStatements.py +19 -17
- nuitka/tree/ReformulationTryFinallyStatements.py +19 -17
- nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
- nuitka/tree/ReformulationWithStatements.py +19 -17
- nuitka/tree/ReformulationYieldExpressions.py +19 -17
- nuitka/tree/SourceHandling.py +22 -19
- nuitka/tree/SyntaxErrors.py +19 -17
- nuitka/tree/TreeHelpers.py +19 -17
- nuitka/tree/VariableClosure.py +19 -17
- nuitka/tree/__init__.py +5 -4
- nuitka/utils/AppDirs.py +30 -18
- nuitka/utils/CStrings.py +19 -17
- nuitka/utils/CommandLineOptions.py +19 -17
- nuitka/utils/Distributions.py +34 -22
- nuitka/utils/Download.py +20 -18
- nuitka/utils/Execution.py +22 -18
- nuitka/utils/FileOperations.py +44 -18
- nuitka/utils/Hashing.py +19 -17
- nuitka/utils/Images.py +19 -17
- nuitka/utils/Importing.py +31 -18
- nuitka/utils/InstalledPythons.py +19 -17
- nuitka/utils/InstanceCounters.py +19 -17
- nuitka/utils/Jinja2.py +19 -17
- nuitka/utils/Json.py +19 -17
- nuitka/utils/MacOSApp.py +19 -17
- nuitka/utils/MemoryUsage.py +19 -17
- nuitka/utils/ModuleNames.py +19 -17
- nuitka/utils/ReExecute.py +19 -17
- nuitka/utils/Rest.py +19 -17
- nuitka/utils/SharedLibraries.py +19 -17
- nuitka/utils/Shebang.py +19 -17
- nuitka/utils/Signing.py +19 -17
- nuitka/utils/SlotMetaClasses.py +19 -17
- nuitka/utils/StaticLibraries.py +19 -17
- nuitka/utils/ThreadedExecutor.py +18 -17
- nuitka/utils/Timing.py +19 -17
- nuitka/utils/Utils.py +19 -17
- nuitka/utils/WindowsFileUsage.py +18 -17
- nuitka/utils/WindowsResources.py +19 -17
- nuitka/utils/Yaml.py +19 -17
- nuitka/utils/__init__.py +5 -4
- Nuitka_winsvc-2.0.5.dist-info/RECORD +0 -920
- {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/WHEEL +0 -0
- {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/top_level.txt +0 -0
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Assignment related nodes.
|
|
19
5
|
|
|
20
6
|
The most simple assignment statement ``a = b`` is what we have here. All others
|
|
@@ -179,20 +165,7 @@ class StatementAssignmentVariableMixin(object):
|
|
|
179
165
|
# is such a code for the type shape.
|
|
180
166
|
return True
|
|
181
167
|
|
|
182
|
-
def
|
|
183
|
-
self.variable_trace.assign_node = result
|
|
184
|
-
result.variable_trace = self.variable_trace
|
|
185
|
-
self.variable_trace = None
|
|
186
|
-
result.parent = self.parent
|
|
187
|
-
|
|
188
|
-
def _considerSpecialization(self, old_source):
|
|
189
|
-
# Specialize if possible, might have become that way only recently.
|
|
190
|
-
# return driven, pylint: disable=too-many-return-statements
|
|
191
|
-
source = self.subnode_source
|
|
192
|
-
|
|
193
|
-
if source is old_source:
|
|
194
|
-
return self, None, None
|
|
195
|
-
|
|
168
|
+
def _considerSpecialization(self, old_source, source):
|
|
196
169
|
if source.isCompileTimeConstant():
|
|
197
170
|
result = makeStatementAssignmentVariableConstant(
|
|
198
171
|
source=source,
|
|
@@ -202,8 +175,6 @@ class StatementAssignmentVariableMixin(object):
|
|
|
202
175
|
source_ref=self.source_ref,
|
|
203
176
|
)
|
|
204
177
|
|
|
205
|
-
self._transferState(result)
|
|
206
|
-
|
|
207
178
|
return (
|
|
208
179
|
result,
|
|
209
180
|
"new_statements",
|
|
@@ -219,8 +190,6 @@ class StatementAssignmentVariableMixin(object):
|
|
|
219
190
|
source_ref=self.source_ref,
|
|
220
191
|
)
|
|
221
192
|
|
|
222
|
-
self._transferState(result)
|
|
223
|
-
|
|
224
193
|
return (
|
|
225
194
|
result,
|
|
226
195
|
"new_statements",
|
|
@@ -235,8 +204,6 @@ class StatementAssignmentVariableMixin(object):
|
|
|
235
204
|
source_ref=self.source_ref,
|
|
236
205
|
)
|
|
237
206
|
|
|
238
|
-
self._transferState(result)
|
|
239
|
-
|
|
240
207
|
return (
|
|
241
208
|
result,
|
|
242
209
|
"new_statements",
|
|
@@ -251,8 +218,6 @@ class StatementAssignmentVariableMixin(object):
|
|
|
251
218
|
source_ref=self.source_ref,
|
|
252
219
|
)
|
|
253
220
|
|
|
254
|
-
self._transferState(result)
|
|
255
|
-
|
|
256
221
|
return (
|
|
257
222
|
result,
|
|
258
223
|
"new_statements",
|
|
@@ -267,8 +232,6 @@ class StatementAssignmentVariableMixin(object):
|
|
|
267
232
|
source_ref=self.source_ref,
|
|
268
233
|
)
|
|
269
234
|
|
|
270
|
-
self._transferState(result)
|
|
271
|
-
|
|
272
235
|
return (
|
|
273
236
|
result,
|
|
274
237
|
"new_statements",
|
|
@@ -285,6 +248,10 @@ class StatementAssignmentVariableMixin(object):
|
|
|
285
248
|
def hasVeryTrustedValue(self):
|
|
286
249
|
"""Does this assignment node have a very trusted value."""
|
|
287
250
|
|
|
251
|
+
@abstractmethod
|
|
252
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
253
|
+
"""Set the value trace for the assignment form."""
|
|
254
|
+
|
|
288
255
|
|
|
289
256
|
class StatementAssignmentVariableGeneric(
|
|
290
257
|
StatementAssignmentVariableMixin, StatementAssignmentVariableGenericBase
|
|
@@ -404,17 +371,26 @@ Removed assignment of %s from itself which is known to be defined."""
|
|
|
404
371
|
% variable.getDescription(),
|
|
405
372
|
)
|
|
406
373
|
|
|
374
|
+
if source is old_source:
|
|
375
|
+
result = self, None, None
|
|
376
|
+
else:
|
|
377
|
+
result = self._considerSpecialization(old_source, source)
|
|
378
|
+
result[0].parent = self.parent
|
|
379
|
+
|
|
380
|
+
result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
|
|
381
|
+
|
|
382
|
+
return result
|
|
383
|
+
|
|
384
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
407
385
|
# Set-up the trace to the trace collection, so future references will
|
|
408
386
|
# find this assignment.
|
|
409
387
|
self.variable_trace = trace_collection.onVariableSet(
|
|
410
|
-
variable=variable, version=self.variable_version, assign_node=self
|
|
388
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
411
389
|
)
|
|
412
390
|
|
|
413
391
|
# TODO: Determine from future use of assigned variable, if this is needed at all.
|
|
414
392
|
trace_collection.removeKnowledge(source)
|
|
415
393
|
|
|
416
|
-
return self._considerSpecialization(old_source)
|
|
417
|
-
|
|
418
394
|
def hasVeryTrustedValue(self):
|
|
419
395
|
"""Does this assignment node have a very trusted value."""
|
|
420
396
|
return self.subnode_source.hasVeryTrustedValue()
|
|
@@ -594,12 +570,18 @@ Assignment raises exception in assigned value, removed assignment.""",
|
|
|
594
570
|
|
|
595
571
|
# Set-up the trace to the trace collection, so future references will
|
|
596
572
|
# find this assignment.
|
|
573
|
+
# Note: Keep this aligned with computeStatementAssignmentTraceUpdate
|
|
597
574
|
self.variable_trace = trace_collection.onVariableSet(
|
|
598
575
|
variable=variable, version=self.variable_version, assign_node=self
|
|
599
576
|
)
|
|
600
577
|
|
|
601
578
|
return self, None, None
|
|
602
579
|
|
|
580
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
581
|
+
self.variable_trace = trace_collection.onVariableSet(
|
|
582
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
583
|
+
)
|
|
584
|
+
|
|
603
585
|
@staticmethod
|
|
604
586
|
def hasVeryTrustedValue():
|
|
605
587
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -642,6 +624,7 @@ class StatementAssignmentVariableConstantMutable(
|
|
|
642
624
|
|
|
643
625
|
# Set-up the trace to the trace collection, so future references will
|
|
644
626
|
# find this assignment.
|
|
627
|
+
# Note: Keep this aligned with computeStatementAssignmentTraceUpdate
|
|
645
628
|
self.variable_trace = trace_collection.onVariableSet(
|
|
646
629
|
variable=variable, version=self.variable_version, assign_node=self
|
|
647
630
|
)
|
|
@@ -682,6 +665,11 @@ class StatementAssignmentVariableConstantMutable(
|
|
|
682
665
|
|
|
683
666
|
return self, None, None
|
|
684
667
|
|
|
668
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
669
|
+
self.variable_trace = trace_collection.onVariableSet(
|
|
670
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
671
|
+
)
|
|
672
|
+
|
|
685
673
|
@staticmethod
|
|
686
674
|
def hasVeryTrustedValue():
|
|
687
675
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -785,12 +773,18 @@ class StatementAssignmentVariableConstantImmutable(
|
|
|
785
773
|
% self.getVariableName(),
|
|
786
774
|
)
|
|
787
775
|
|
|
776
|
+
# Note: Keep this aligned with computeStatementAssignmentTraceUpdate
|
|
788
777
|
self.variable_trace = trace_collection.onVariableSetToUnescapableValue(
|
|
789
778
|
variable=variable, version=self.variable_version, assign_node=self
|
|
790
779
|
)
|
|
791
780
|
|
|
792
781
|
return self, None, None
|
|
793
782
|
|
|
783
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
784
|
+
self.variable_trace = trace_collection.onVariableSetToUnescapableValue(
|
|
785
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
786
|
+
)
|
|
787
|
+
|
|
794
788
|
@staticmethod
|
|
795
789
|
def hasVeryTrustedValue():
|
|
796
790
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -868,12 +862,18 @@ class StatementAssignmentVariableHardValue(
|
|
|
868
862
|
Assignment raises exception in assigned value, removed assignment.""",
|
|
869
863
|
)
|
|
870
864
|
|
|
865
|
+
# Note: Keep this aligned with computeStatementAssignmentTraceUpdate
|
|
871
866
|
self.variable_trace = trace_collection.onVariableSetToVeryTrustedValue(
|
|
872
867
|
variable=variable, version=self.variable_version, assign_node=self
|
|
873
868
|
)
|
|
874
869
|
|
|
875
870
|
return self, None, None
|
|
876
871
|
|
|
872
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
873
|
+
self.variable_trace = trace_collection.onVariableSetToVeryTrustedValue(
|
|
874
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
875
|
+
)
|
|
876
|
+
|
|
877
877
|
@staticmethod
|
|
878
878
|
def hasVeryTrustedValue():
|
|
879
879
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -916,7 +916,9 @@ class StatementAssignmentVariableFromVariable(
|
|
|
916
916
|
|
|
917
917
|
# Assigning from and to the same variable, can be optimized away
|
|
918
918
|
# immediately, there is no point in doing it. Exceptions are of course
|
|
919
|
-
# module variables that collide with built-in names.
|
|
919
|
+
# module variables that collide with built-in names. TODO: In
|
|
920
|
+
# specialization this could be considered right away as its own node
|
|
921
|
+
# type, waiting for it to compute like this.
|
|
920
922
|
if not variable.isModuleVariable() and old_source.getVariable() is variable:
|
|
921
923
|
# A variable access that has a side effect, must be preserved,
|
|
922
924
|
# so it can e.g. raise an exception, otherwise we can be fully
|
|
@@ -947,13 +949,8 @@ Removed assignment of %s from itself which is known to be defined."""
|
|
|
947
949
|
# Let assignment source may re-compute first.
|
|
948
950
|
source = trace_collection.onExpression(self.subnode_source)
|
|
949
951
|
|
|
950
|
-
if source
|
|
951
|
-
|
|
952
|
-
variable=variable,
|
|
953
|
-
version=self.variable_version,
|
|
954
|
-
assign_node=self,
|
|
955
|
-
source=source,
|
|
956
|
-
)
|
|
952
|
+
if source is old_source:
|
|
953
|
+
result = self, None, None
|
|
957
954
|
else:
|
|
958
955
|
if source.willRaiseAnyException():
|
|
959
956
|
result = makeStatementExpressionOnlyReplacementNode(
|
|
@@ -967,17 +964,33 @@ Removed assignment of %s from itself which is known to be defined."""
|
|
|
967
964
|
Assignment raises exception in assigned variable access, removed assignment.""",
|
|
968
965
|
)
|
|
969
966
|
|
|
967
|
+
result = self._considerSpecialization(old_source, source)
|
|
968
|
+
result[0].parent = self.parent
|
|
969
|
+
|
|
970
|
+
result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
|
|
971
|
+
|
|
972
|
+
return result
|
|
973
|
+
|
|
974
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
975
|
+
if source.isExpressionVariableRef():
|
|
976
|
+
self.variable_trace = trace_collection.onVariableSetAliasing(
|
|
977
|
+
variable=self.variable,
|
|
978
|
+
version=self.variable_version,
|
|
979
|
+
assign_node=self,
|
|
980
|
+
source=source,
|
|
981
|
+
)
|
|
982
|
+
else:
|
|
970
983
|
# Set-up the trace to the trace collection, so future references will
|
|
971
|
-
# find this assignment.
|
|
984
|
+
# find this assignment. TODO: We should for non-variables make sure we do
|
|
985
|
+
# always specialize, since this is no longer a variable once it was
|
|
986
|
+
# resolved.
|
|
972
987
|
self.variable_trace = trace_collection.onVariableSet(
|
|
973
|
-
variable=variable, version=self.variable_version, assign_node=self
|
|
988
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
974
989
|
)
|
|
975
990
|
|
|
976
991
|
# TODO: Determine from future use of assigned variable, if this is needed at all.
|
|
977
992
|
trace_collection.removeKnowledge(source)
|
|
978
993
|
|
|
979
|
-
return self._considerSpecialization(old_source)
|
|
980
|
-
|
|
981
994
|
@staticmethod
|
|
982
995
|
def hasVeryTrustedValue():
|
|
983
996
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -1033,17 +1046,26 @@ Removed assignment of %s from itself which is known to be defined."""
|
|
|
1033
1046
|
# Let assignment source may re-compute first.
|
|
1034
1047
|
source = trace_collection.onExpression(self.subnode_source)
|
|
1035
1048
|
|
|
1049
|
+
if source is old_source:
|
|
1050
|
+
result = self, None, None
|
|
1051
|
+
else:
|
|
1052
|
+
result = self._considerSpecialization(old_source, source)
|
|
1053
|
+
result[0].parent = self.parent
|
|
1054
|
+
|
|
1055
|
+
result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
|
|
1056
|
+
|
|
1057
|
+
return result
|
|
1058
|
+
|
|
1059
|
+
def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
|
|
1036
1060
|
# Set-up the trace to the trace collection, so future references will
|
|
1037
1061
|
# find this assignment.
|
|
1038
1062
|
self.variable_trace = trace_collection.onVariableSet(
|
|
1039
|
-
variable=variable, version=self.variable_version, assign_node=self
|
|
1063
|
+
variable=self.variable, version=self.variable_version, assign_node=self
|
|
1040
1064
|
)
|
|
1041
1065
|
|
|
1042
1066
|
# TODO: Determine from future use of assigned variable, if this is needed at all.
|
|
1043
1067
|
trace_collection.removeKnowledge(source)
|
|
1044
1068
|
|
|
1045
|
-
return self._considerSpecialization(old_source)
|
|
1046
|
-
|
|
1047
1069
|
@staticmethod
|
|
1048
1070
|
def hasVeryTrustedValue():
|
|
1049
1071
|
"""Does this assignment node have a very trusted value."""
|
|
@@ -1136,3 +1158,19 @@ def makeStatementAssignmentVariable(
|
|
|
1136
1158
|
variable_version=variable_version,
|
|
1137
1159
|
source_ref=source_ref,
|
|
1138
1160
|
)
|
|
1161
|
+
|
|
1162
|
+
|
|
1163
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
1164
|
+
# integrates with CPython, but also works on its own.
|
|
1165
|
+
#
|
|
1166
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
1167
|
+
# you may not use this file except in compliance with the License.
|
|
1168
|
+
# You may obtain a copy of the License at
|
|
1169
|
+
#
|
|
1170
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
1171
|
+
#
|
|
1172
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
1173
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
1174
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1175
|
+
# See the License for the specific language governing permissions and
|
|
1176
|
+
# limitations under the License.
|
nuitka/nodes/VariableDelNodes.py
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Nodes for variable deletion
|
|
19
5
|
|
|
20
6
|
These refer to resolved variable objects.
|
|
@@ -316,3 +302,19 @@ def makeStatementDelVariable(variable, tolerant, source_ref, version=None):
|
|
|
316
302
|
return StatementDelVariableIntolerant(
|
|
317
303
|
variable=variable, version=version, source_ref=source_ref
|
|
318
304
|
)
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
308
|
+
# integrates with CPython, but also works on its own.
|
|
309
|
+
#
|
|
310
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
311
|
+
# you may not use this file except in compliance with the License.
|
|
312
|
+
# You may obtain a copy of the License at
|
|
313
|
+
#
|
|
314
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
315
|
+
#
|
|
316
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
317
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
318
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
319
|
+
# See the License for the specific language governing permissions and
|
|
320
|
+
# limitations under the License.
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Nodes for named variable reference, assignment, and deletion
|
|
19
5
|
|
|
20
6
|
x = ...
|
|
@@ -149,3 +135,19 @@ class ExpressionVariableLocalNameRef(ExpressionVariableNameRef):
|
|
|
149
135
|
@staticmethod
|
|
150
136
|
def needsFallback():
|
|
151
137
|
return False
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
141
|
+
# integrates with CPython, but also works on its own.
|
|
142
|
+
#
|
|
143
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
144
|
+
# you may not use this file except in compliance with the License.
|
|
145
|
+
# You may obtain a copy of the License at
|
|
146
|
+
#
|
|
147
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
148
|
+
#
|
|
149
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
150
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
151
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
152
|
+
# See the License for the specific language governing permissions and
|
|
153
|
+
# limitations under the License.
|
nuitka/nodes/VariableRefNodes.py
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Node for variable references.
|
|
19
5
|
|
|
20
6
|
These represent all variable references in the node tree. Can be in assignments
|
|
@@ -384,6 +370,10 @@ class ExpressionVariableRef(ExpressionVariableRefBase):
|
|
|
384
370
|
def isExpressionVariableRef():
|
|
385
371
|
return True
|
|
386
372
|
|
|
373
|
+
@staticmethod
|
|
374
|
+
def isExpressionVariableRefOrTempVariableRef():
|
|
375
|
+
return True
|
|
376
|
+
|
|
387
377
|
def getDetails(self):
|
|
388
378
|
return {"variable": self.variable}
|
|
389
379
|
|
|
@@ -710,6 +700,10 @@ class ExpressionTempVariableRef(
|
|
|
710
700
|
def isExpressionTempVariableRef():
|
|
711
701
|
return True
|
|
712
702
|
|
|
703
|
+
@staticmethod
|
|
704
|
+
def isExpressionVariableRefOrTempVariableRef():
|
|
705
|
+
return True
|
|
706
|
+
|
|
713
707
|
@classmethod
|
|
714
708
|
def fromXML(cls, provider, source_ref, **args):
|
|
715
709
|
assert cls is ExpressionTempVariableRef, cls
|
|
@@ -856,3 +850,19 @@ class ExpressionTempVariableRef(
|
|
|
856
850
|
def isKnownToBeIterableAtMin(count):
|
|
857
851
|
# TODO: See through the variable current trace.
|
|
858
852
|
return None
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
856
|
+
# integrates with CPython, but also works on its own.
|
|
857
|
+
#
|
|
858
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
859
|
+
# you may not use this file except in compliance with the License.
|
|
860
|
+
# You may obtain a copy of the License at
|
|
861
|
+
#
|
|
862
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
863
|
+
#
|
|
864
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
865
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
866
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
867
|
+
# See the License for the specific language governing permissions and
|
|
868
|
+
# limitations under the License.
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Nodes for variable release
|
|
19
5
|
|
|
20
6
|
These refer to resolved variable objects.
|
|
@@ -149,3 +135,19 @@ def makeStatementsReleaseVariables(variables, source_ref):
|
|
|
149
135
|
makeStatementReleaseVariable(variable=variable, source_ref=source_ref)
|
|
150
136
|
for variable in variables
|
|
151
137
|
)
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
141
|
+
# integrates with CPython, but also works on its own.
|
|
142
|
+
#
|
|
143
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
144
|
+
# you may not use this file except in compliance with the License.
|
|
145
|
+
# You may obtain a copy of the License at
|
|
146
|
+
#
|
|
147
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
148
|
+
#
|
|
149
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
150
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
151
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
152
|
+
# See the License for the specific language governing permissions and
|
|
153
|
+
# limitations under the License.
|
nuitka/nodes/YieldNodes.py
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Yield node.
|
|
19
5
|
|
|
20
6
|
The yield node returns to the caller of the generator and therefore may execute
|
|
@@ -117,3 +103,19 @@ class ExpressionYieldFromAwaitable(ExpressionYieldBase):
|
|
|
117
103
|
"""
|
|
118
104
|
|
|
119
105
|
kind = "EXPRESSION_YIELD_FROM_AWAITABLE"
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
109
|
+
# integrates with CPython, but also works on its own.
|
|
110
|
+
#
|
|
111
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
112
|
+
# you may not use this file except in compliance with the License.
|
|
113
|
+
# You may obtain a copy of the License at
|
|
114
|
+
#
|
|
115
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
116
|
+
#
|
|
117
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
118
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
119
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
120
|
+
# See the License for the specific language governing permissions and
|
|
121
|
+
# limitations under the License.
|
nuitka/nodes/__init__.py
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
1
|
+
# Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
""" Dummy file to make this directory a package. """
|
|
5
|
+
|
|
3
6
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
7
|
# integrates with CPython, but also works on its own.
|
|
5
8
|
#
|
|
@@ -14,5 +17,3 @@
|
|
|
14
17
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
18
|
# See the License for the specific language governing permissions and
|
|
16
19
|
# limitations under the License.
|
|
17
|
-
#
|
|
18
|
-
""" Dummy file to make this directory a package. """
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Shapes for Python built-in types.
|
|
19
5
|
|
|
20
6
|
"""
|
|
@@ -4240,3 +4226,18 @@ class ShapeTypeBuiltinExceptionClass(
|
|
|
4240
4226
|
|
|
4241
4227
|
|
|
4242
4228
|
tshape_exception_class = ShapeTypeBuiltinExceptionClass()
|
|
4229
|
+
|
|
4230
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4231
|
+
# integrates with CPython, but also works on its own.
|
|
4232
|
+
#
|
|
4233
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4234
|
+
# you may not use this file except in compliance with the License.
|
|
4235
|
+
# You may obtain a copy of the License at
|
|
4236
|
+
#
|
|
4237
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
4238
|
+
#
|
|
4239
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
4240
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
4241
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4242
|
+
# See the License for the specific language governing permissions and
|
|
4243
|
+
# limitations under the License.
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
|
|
3
|
+
|
|
18
4
|
""" Objects use to describe control flow escapes.
|
|
19
5
|
|
|
20
6
|
Typically returned by shape operations to indicate what can and can not
|
|
@@ -195,3 +181,19 @@ class ControlFlowDescriptionMatmultUnsupported(
|
|
|
195
181
|
ControlFlowDescriptionOperationUnsupportedBase
|
|
196
182
|
):
|
|
197
183
|
pass
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
187
|
+
# integrates with CPython, but also works on its own.
|
|
188
|
+
#
|
|
189
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
190
|
+
# you may not use this file except in compliance with the License.
|
|
191
|
+
# You may obtain a copy of the License at
|
|
192
|
+
#
|
|
193
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
194
|
+
#
|
|
195
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
196
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
197
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
198
|
+
# See the License for the specific language governing permissions and
|
|
199
|
+
# limitations under the License.
|