pyobjc-framework-MetalPerformanceShaders 12.2.2__tar.gz → 13.0__tar.gz

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.
Files changed (89) hide show
  1. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/MetalPerformanceShaders/__init__.py +5 -0
  2. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/MetalPerformanceShaders/_metadata.py +163 -6
  3. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/PKG-INFO +5 -5
  4. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/SOURCES.txt +12 -2
  5. pyobjc_framework_metalperformanceshaders-13.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt +3 -0
  6. pyobjc_framework_metalperformanceshaders-13.0/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +2 -0
  7. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Modules/_MetalPerformanceShaders.m +9 -2
  8. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Modules/_MetalPerformanceShaders_inlines.m +12 -4
  9. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Modules/_MetalPerformanceShaders_protocols.m +7 -5
  10. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Modules/pyobjc-api.h +18 -4
  11. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Modules/pyobjc-compat.h +0 -18
  12. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PKG-INFO +5 -5
  13. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_metalperformanceshaders.py +7 -3
  14. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpscommandbuffer.py +9 -2
  15. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpscoretypes.py +64 -50
  16. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsimage.py +52 -29
  17. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpscore_mpskernel.py +11 -0
  18. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsndarray.py +1 -1
  19. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsndarrayquantization.py +1 -1
  20. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsstate.py +4 -6
  21. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsfunctions_mpsfcolorconversion.py +66 -0
  22. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsfunctions_mpsfunction.py +15 -0
  23. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsfunctions_mpsfunctiontypes.py +9 -0
  24. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsmatrixdecomposition.py +1 -3
  25. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsmatrix_mpsmatrixfindtopk.py +11 -0
  26. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsmatrix_mpsmatrixfullyconnected.py +14 -0
  27. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsmatrix_mpsmatrixneuron.py +14 -0
  28. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsmatrixrandom.py +1 -3
  29. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsmatrix_mpsmatrixsoftmax.py +14 -0
  30. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsndarray_mpsndarraykernel.py +11 -0
  31. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnconvolution.py +14 -15
  32. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnngroupnormalization.py +3 -1
  33. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnninstancenormalization.py +3 -1
  34. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnmath.py +1 -3
  35. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnneuraltypes.py +1 -3
  36. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnntypes.py +2 -4
  37. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixbatchnormalization.py +7 -0
  38. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsneuralnetworktypes.py +36 -38
  39. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnbatchnormalization.py +3 -1
  40. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngraphnodes.py +17 -17
  41. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnoptimzers.py +1 -3
  42. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsrnnlayer.py +18 -14
  43. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpsaccelerationstructure.py +27 -22
  44. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpsinstanceaccelerationstructure.py +1 -3
  45. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpspolygonaccelerationstructure.py +1 -3
  46. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpsrayintersector.py +38 -34
  47. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpssvgf.py +8 -4
  48. pyobjc_framework_metalperformanceshaders-13.0/PyObjCTest/test_mpsrayintersector_mpstemporalaa.py +11 -0
  49. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/metadata/MetalPerformanceShaders.fwinfo +49 -806
  50. pyobjc_framework_metalperformanceshaders-12.2.2/metadata/raw/arm64-26.5.fwinfo → pyobjc_framework_metalperformanceshaders-13.0/metadata/raw/arm64-27.fwinfo +989 -198
  51. pyobjc_framework_metalperformanceshaders-12.2.2/metadata/raw/x86_64-26.5.fwinfo → pyobjc_framework_metalperformanceshaders-13.0/metadata/raw/x86_64-27.fwinfo +989 -198
  52. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/pyobjc_setup.py +7 -7
  53. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/setup.py +1 -1
  54. pyobjc_framework_metalperformanceshaders-12.2.2/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/pyobjc-build-info.txt +0 -3
  55. pyobjc_framework_metalperformanceshaders-12.2.2/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/requires.txt +0 -2
  56. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/dependency_links.txt +0 -0
  57. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/not-zip-safe +0 -0
  58. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/Lib/pyobjc_framework_MetalPerformanceShaders.egg-info/top_level.txt +0 -0
  59. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/License.txt +0 -0
  60. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/MANIFEST.in +0 -0
  61. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/__init__.py +0 -0
  62. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsfunctionconstantindices.py +0 -0
  63. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpskerneltypes.py +0 -0
  64. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpskeyedunarchiver.py +0 -0
  65. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpscore_mpsndarrayidentity.py +0 -0
  66. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimageconvolution.py +0 -0
  67. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagehistogram.py +0 -0
  68. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagekernel.py +0 -0
  69. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagekeypoint.py +0 -0
  70. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagemorphology.py +0 -0
  71. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagethreshold.py +0 -0
  72. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsimage_mpsimagetypes.py +0 -0
  73. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsmatrixcombination.py +0 -0
  74. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsmatrixmultiplication.py +0 -0
  75. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsmatrixsolve.py +0 -0
  76. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsmatrix_mpsndarraymultiarykernel.py +0 -0
  77. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsndarray_mpsndarraytypes.py +0 -0
  78. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnkernel.py +0 -0
  79. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnloss.py +0 -0
  80. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpscnnupsampling.py +0 -0
  81. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsmatrixsum.py +0 -0
  82. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngraph.py +0 -0
  83. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnngridsample.py +0 -0
  84. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnreshape.py +0 -0
  85. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsneuralnetwork_mpsnnresize.py +0 -0
  86. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/PyObjCTest/test_mpsrayintersector_mpsrayintersectortypes.py +0 -0
  87. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/metadata/metadata.ini +0 -0
  88. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/pyproject.toml +0 -0
  89. {pyobjc_framework_metalperformanceshaders-12.2.2 → pyobjc_framework_metalperformanceshaders-13.0}/setup.cfg +0 -0
@@ -11,6 +11,8 @@ def _setup():
11
11
 
12
12
  import Metal
13
13
  import objc
14
+ import objc.simd
15
+ import math
14
16
  from . import _metadata, _MetalPerformanceShaders
15
17
  from ._inlines import _inline_list_
16
18
 
@@ -31,6 +33,8 @@ def _setup():
31
33
 
32
34
  globals()["__dir__"] = dir_func
33
35
  globals()["__getattr__"] = getattr_func
36
+ globals()["_simd"] = objc.simd
37
+ globals()["_math"] = math
34
38
 
35
39
  for cls, sel in (
36
40
  ("MMPSAccelerationStructureGroupTKMeshBufferAllocator", b"init"),
@@ -268,6 +272,7 @@ def _setup():
268
272
  ("MPSMatrixVectorMultiplication", b"initWithDevice:"),
269
273
  ("MPSMatrixCopyDescriptor", b"init"),
270
274
  ("MPSMatrixCopy", b"initWithDevice:"),
275
+ ("MPSFunction", b"init"),
271
276
  ):
272
277
  objc.registerUnavailableMethod(cls, sel)
273
278
 
@@ -1,7 +1,5 @@
1
1
  # This file is generated by objective.metadata
2
2
  #
3
- # Last update: Thu May 28 22:14:07 2026
4
- #
5
3
  # flake8: noqa
6
4
 
7
5
  import objc, sys
@@ -137,6 +135,11 @@ misc.update(
137
135
  b"{MPSSize=ddd}",
138
136
  ["width", "height", "depth"],
139
137
  ),
138
+ "MPSFunctions_AABB": objc.createStructType(
139
+ "MetalPerformanceShaders.MPSFunctions_AABB",
140
+ b"{MPSFunctions_AABB=<4f><4f>}",
141
+ ["max", "min"],
142
+ ),
140
143
  "MPSIntegerDivisionParams": objc.createStructType(
141
144
  "MetalPerformanceShaders.MPSIntegerDivisionParams",
142
145
  b"{MPSIntegerDivisionParams=SSSS}",
@@ -257,7 +260,7 @@ misc.update(
257
260
  }
258
261
  )
259
262
  constants = """$MPSRectNoClip@{MTLRegion={MTLOrigin=QQQ}{MTLSize=QQQ}}$"""
260
- enums = """$MPSAccelerationStructureStatusBuilt@1$MPSAccelerationStructureStatusUnbuilt@0$MPSAccelerationStructureUsageFrequentRebuild@2$MPSAccelerationStructureUsageNone@0$MPSAccelerationStructureUsagePreferCPUBuild@8$MPSAccelerationStructureUsagePreferGPUBuild@4$MPSAccelerationStructureUsageRefit@1$MPSAliasingStrategyAliasingReserved@3$MPSAliasingStrategyDefault@0$MPSAliasingStrategyDontCare@0$MPSAliasingStrategyPreferNonTemporaryMemory@8$MPSAliasingStrategyPreferTemporaryMemory@4$MPSAliasingStrategyShallAlias@1$MPSAliasingStrategyShallNotAlias@2$MPSAlphaTypeAlphaIsOne@1$MPSAlphaTypeNonPremultiplied@0$MPSAlphaTypePremultiplied@2$MPSBoundingBoxIntersectionTestTypeAxisAligned@1$MPSBoundingBoxIntersectionTestTypeDefault@0$MPSBoundingBoxIntersectionTestTypeFast@2$MPSCNNBatchNormalizationFlagsCalculateStatisticsAlways@1$MPSCNNBatchNormalizationFlagsCalculateStatisticsAutomatic@0$MPSCNNBatchNormalizationFlagsCalculateStatisticsMask@3$MPSCNNBatchNormalizationFlagsCalculateStatisticsNever@2$MPSCNNBatchNormalizationFlagsDefault@0$MPSCNNBinaryConvolutionFlagsNone@0$MPSCNNBinaryConvolutionFlagsUseBetaScaling@1$MPSCNNBinaryConvolutionTypeAND@2$MPSCNNBinaryConvolutionTypeBinaryWeights@0$MPSCNNBinaryConvolutionTypeXNOR@1$MPSCNNConvolutionFlagsNone@0$MPSCNNConvolutionGradientOptionAll@3$MPSCNNConvolutionGradientOptionGradientWithData@1$MPSCNNConvolutionGradientOptionGradientWithWeightsAndBias@2$MPSCNNConvolutionWeightsLayoutOHWI@0$MPSCNNLossTypeCategoricalCrossEntropy@4$MPSCNNLossTypeCosineDistance@7$MPSCNNLossTypeCount@10$MPSCNNLossTypeHinge@5$MPSCNNLossTypeHuber@6$MPSCNNLossTypeKullbackLeiblerDivergence@9$MPSCNNLossTypeLog@8$MPSCNNLossTypeMeanAbsoluteError@0$MPSCNNLossTypeMeanSquaredError@1$MPSCNNLossTypeSigmoidCrossEntropy@3$MPSCNNLossTypeSoftMaxCrossEntropy@2$MPSCNNNeuronTypeAbsolute@6$MPSCNNNeuronTypeCount@16$MPSCNNNeuronTypeELU@9$MPSCNNNeuronTypeExponential@13$MPSCNNNeuronTypeGeLU@15$MPSCNNNeuronTypeHardSigmoid@4$MPSCNNNeuronTypeLinear@2$MPSCNNNeuronTypeLogarithm@14$MPSCNNNeuronTypeNone@0$MPSCNNNeuronTypePReLU@10$MPSCNNNeuronTypePower@12$MPSCNNNeuronTypeReLU@1$MPSCNNNeuronTypeReLUN@11$MPSCNNNeuronTypeSigmoid@3$MPSCNNNeuronTypeSoftPlus@7$MPSCNNNeuronTypeSoftSign@8$MPSCNNNeuronTypeTanH@5$MPSCNNReductionTypeCount@4$MPSCNNReductionTypeMean@2$MPSCNNReductionTypeNone@0$MPSCNNReductionTypeSum@1$MPSCNNReductionTypeSumByNonZeroWeights@3$MPSCNNWeightsQuantizationTypeLinear@1$MPSCNNWeightsQuantizationTypeLookupTable@2$MPSCNNWeightsQuantizationTypeNone@0$MPSCustomKernelIndexDestIndex@0$MPSCustomKernelIndexSrc0Index@0$MPSCustomKernelIndexSrc1Index@1$MPSCustomKernelIndexSrc2Index@2$MPSCustomKernelIndexSrc3Index@3$MPSCustomKernelIndexSrc4Index@4$MPSCustomKernelIndexUserDataIndex@30$MPSDataLayoutFeatureChannelsxHeightxWidth@1$MPSDataLayoutHeightxWidthxFeatureChannels@0$MPSDataTypeAlternateEncodingBit@2147483648$MPSDataTypeBFloat16@2415919120$MPSDataTypeBool@2147483656$MPSDataTypeComplexBFloat16@2432696352$MPSDataTypeComplexBit@16777216$MPSDataTypeComplexFloat16@285212704$MPSDataTypeComplexFloat32@285212736$MPSDataTypeFloat16@268435472$MPSDataTypeFloat32@268435488$MPSDataTypeFloatBit@268435456$MPSDataTypeInt16@536870928$MPSDataTypeInt2@536870914$MPSDataTypeInt32@536870944$MPSDataTypeInt4@536870916$MPSDataTypeInt64@536870976$MPSDataTypeInt8@536870920$MPSDataTypeIntBit@536870912$MPSDataTypeInvalid@0$MPSDataTypeNormalizedBit@1073741824$MPSDataTypeSignedBit@536870912$MPSDataTypeUInt16@16$MPSDataTypeUInt2@2$MPSDataTypeUInt32@32$MPSDataTypeUInt4@4$MPSDataTypeUInt64@64$MPSDataTypeUInt8@8$MPSDataTypeUnorm1@1073741825$MPSDataTypeUnorm8@1073741832$MPSDeviceCapsIndex@127$MPSDeviceCapsNull@0$MPSDeviceIsAppleDevice@1024$MPSDeviceOptionsDefault@0$MPSDeviceOptionsLowPower@1$MPSDeviceOptionsSkipRemovable@2$MPSDeviceSupportsBFloat16Arithmetic@4096$MPSDeviceSupportsFloat16BicubicFiltering@512$MPSDeviceSupportsFloat32Filtering@128$MPSDeviceSupportsNorm16BicubicFiltering@256$MPSDeviceSupportsQuadShuffle@16$MPSDeviceSupportsReadWriteTextures@4$MPSDeviceSupportsReadableArrayOfTextures@1$MPSDeviceSupportsSimdReduction@64$MPSDeviceSupportsSimdShuffle@32$MPSDeviceSupportsSimdShuffleAndFill@2048$MPSDeviceSupportsSimdgroupBarrier@8$MPSDeviceSupportsWritableArrayOfTextures@2$MPSFloatDataTypeExponentBit@8126464$MPSFloatDataTypeExponentShift@18$MPSFloatDataTypeMantissaBit@261120$MPSFloatDataTypeMantissaShift@10$MPSFloatDataTypeSignBit@8388608$MPSFloatDataTypeSignShift@23$MPSFunctionConstantNone@-1$MPSImageEdgeModeClamp@1$MPSImageEdgeModeConstant@4$MPSImageEdgeModeMirror@2$MPSImageEdgeModeMirrorWithEdge@3$MPSImageEdgeModeZero@0$MPSImageFeatureChannelFormatCount@6$MPSImageFeatureChannelFormatFloat16@3$MPSImageFeatureChannelFormatFloat32@4$MPSImageFeatureChannelFormatNone@0$MPSImageFeatureChannelFormatUnorm16@2$MPSImageFeatureChannelFormatUnorm8@1$MPSImageFeatureChannelFormat_reserved0@5$MPSImageType2d@0$MPSImageType2d_array@1$MPSImageType2d_array_noAlpha@5$MPSImageType2d_noAlpha@4$MPSImageTypeArray2d@2$MPSImageTypeArray2d_array@3$MPSImageTypeArray2d_array_noAlpha@7$MPSImageTypeArray2d_noAlpha@6$MPSImageType_ArrayMask@1$MPSImageType_BatchMask@2$MPSImageType_bitCount@6$MPSImageType_mask@63$MPSImageType_noAlpha@4$MPSImageType_texelFormatBFloat16@24$MPSImageType_texelFormatFloat16@16$MPSImageType_texelFormatMask@56$MPSImageType_texelFormatShift@3$MPSImageType_texelFormatStandard@0$MPSImageType_texelFormatUnorm8@8$MPSImageType_typeMask@3$MPSIntersectionDataTypeDistance@0$MPSIntersectionDataTypeDistancePrimitiveIndex@1$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndex@5$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexCoordinates@6$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndex@7$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndexCoordinates@8$MPSIntersectionDataTypeDistancePrimitiveIndexCoordinates@2$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndex@3$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndexCoordinates@4$MPSIntersectionTypeAny@1$MPSIntersectionTypeNearest@0$MPSKernelOptionsAllowReducedPrecision@2$MPSKernelOptionsDisableInternalTiling@4$MPSKernelOptionsInsertDebugGroups@8$MPSKernelOptionsNone@0$MPSKernelOptionsSkipAPIValidation@1$MPSKernelOptionsVerbose@16$MPSKernelTypes_h@1$MPSMatrixDecompositionStatusFailure@-1$MPSMatrixDecompositionStatusNonPositiveDefinite@-3$MPSMatrixDecompositionStatusSingular@-2$MPSMatrixDecompositionStatusSuccess@0$MPSMatrixRandomDistributionDefault@1$MPSMatrixRandomDistributionNormal@3$MPSMatrixRandomDistributionUniform@2$MPSNDArrayQuantizationTypeAffine@1$MPSNDArrayQuantizationTypeLUT@2$MPSNDArrayQuantizationTypeNone@0$MPSNNComparisonTypeEqual@0$MPSNNComparisonTypeGreater@4$MPSNNComparisonTypeGreaterOrEqual@5$MPSNNComparisonTypeLess@2$MPSNNComparisonTypeLessOrEqual@3$MPSNNComparisonTypeNotEqual@1$MPSNNConvolutionAccumulatorPrecisionOptionFloat@1$MPSNNConvolutionAccumulatorPrecisionOptionHalf@0$MPSNNPaddingMethodAddRemainderToBottomLeft@8$MPSNNPaddingMethodAddRemainderToBottomRight@12$MPSNNPaddingMethodAddRemainderToMask@12$MPSNNPaddingMethodAddRemainderToTopLeft@0$MPSNNPaddingMethodAddRemainderToTopRight@4$MPSNNPaddingMethodAlignBottomRight@2$MPSNNPaddingMethodAlignCentered@0$MPSNNPaddingMethodAlignMask@3$MPSNNPaddingMethodAlignTopLeft@1$MPSNNPaddingMethodAlign_reserved@3$MPSNNPaddingMethodCustom@16384$MPSNNPaddingMethodCustomAllowForNodeFusion@8192$MPSNNPaddingMethodCustomWhitelistForNodeFusion@8192$MPSNNPaddingMethodExcludeEdges@32768$MPSNNPaddingMethodSizeFull@32$MPSNNPaddingMethodSizeMask@2032$MPSNNPaddingMethodSizeSame@16$MPSNNPaddingMethodSizeValidOnly@0$MPSNNPaddingMethodSize_reserved@48$MPSNNRegularizationTypeL1@1$MPSNNRegularizationTypeL2@2$MPSNNRegularizationTypeNone@0$MPSNNTrainingStyleUpdateDeviceCPU@1$MPSNNTrainingStyleUpdateDeviceGPU@2$MPSNNTrainingStyleUpdateDeviceNone@0$MPSPolygonTypeQuadrilateral@1$MPSPolygonTypeTriangle@0$MPSPurgeableStateAllocationDeferred@0$MPSPurgeableStateEmpty@4$MPSPurgeableStateKeepCurrent@1$MPSPurgeableStateNonVolatile@2$MPSPurgeableStateVolatile@3$MPSRNNBidirectionalCombineModeAdd@1$MPSRNNBidirectionalCombineModeConcatenate@2$MPSRNNBidirectionalCombineModeNone@0$MPSRNNMatrixIdGRUInputGateBiasTerms@21$MPSRNNMatrixIdGRUInputGateInputWeights@19$MPSRNNMatrixIdGRUInputGateRecurrentWeights@20$MPSRNNMatrixIdGRUOutputGateBiasTerms@28$MPSRNNMatrixIdGRUOutputGateInputGateWeights@27$MPSRNNMatrixIdGRUOutputGateInputWeights@25$MPSRNNMatrixIdGRUOutputGateRecurrentWeights@26$MPSRNNMatrixIdGRURecurrentGateBiasTerms@24$MPSRNNMatrixIdGRURecurrentGateInputWeights@22$MPSRNNMatrixIdGRURecurrentGateRecurrentWeights@23$MPSRNNMatrixIdLSTMForgetGateBiasTerms@10$MPSRNNMatrixIdLSTMForgetGateInputWeights@7$MPSRNNMatrixIdLSTMForgetGateMemoryWeights@9$MPSRNNMatrixIdLSTMForgetGateRecurrentWeights@8$MPSRNNMatrixIdLSTMInputGateBiasTerms@6$MPSRNNMatrixIdLSTMInputGateInputWeights@3$MPSRNNMatrixIdLSTMInputGateMemoryWeights@5$MPSRNNMatrixIdLSTMInputGateRecurrentWeights@4$MPSRNNMatrixIdLSTMMemoryGateBiasTerms@14$MPSRNNMatrixIdLSTMMemoryGateInputWeights@11$MPSRNNMatrixIdLSTMMemoryGateMemoryWeights@13$MPSRNNMatrixIdLSTMMemoryGateRecurrentWeights@12$MPSRNNMatrixIdLSTMOutputGateBiasTerms@18$MPSRNNMatrixIdLSTMOutputGateInputWeights@15$MPSRNNMatrixIdLSTMOutputGateMemoryWeights@17$MPSRNNMatrixIdLSTMOutputGateRecurrentWeights@16$MPSRNNMatrixIdSingleGateBiasTerms@2$MPSRNNMatrixIdSingleGateInputWeights@0$MPSRNNMatrixIdSingleGateRecurrentWeights@1$MPSRNNMatrixId_count@29$MPSRNNSequenceDirectionBackward@1$MPSRNNSequenceDirectionForward@0$MPSRayDataTypeOriginDirection@0$MPSRayDataTypeOriginMaskDirectionMaxDistance@2$MPSRayDataTypeOriginMinDistanceDirectionMaxDistance@1$MPSRayDataTypePackedOriginDirection@3$MPSRayMaskOperatorAnd@0$MPSRayMaskOperatorEqual@10$MPSRayMaskOperatorGreaterThan@8$MPSRayMaskOperatorGreaterThanOrEqualTo@9$MPSRayMaskOperatorLessThan@6$MPSRayMaskOperatorLessThanOrEqualTo@7$MPSRayMaskOperatorNotAnd@1$MPSRayMaskOperatorNotEqual@11$MPSRayMaskOperatorNotOr@3$MPSRayMaskOperatorNotXor@5$MPSRayMaskOperatorOr@2$MPSRayMaskOperatorXor@4$MPSRayMaskOptionInstance@2$MPSRayMaskOptionNone@0$MPSRayMaskOptionPrimitive@1$MPSStateResourceTypeBuffer@1$MPSStateResourceTypeNone@0$MPSStateResourceTypeTexture@2$MPSTemporalWeightingAverage@0$MPSTemporalWeightingExponentialMovingAverage@1$MPSTransformTypeFloat4x4@0$MPSTransformTypeIdentity@1$MPSTriangleIntersectionTestTypeDefault@0$MPSTriangleIntersectionTestTypeWatertight@1$MetalPerformanceShaders_h@1$"""
263
+ enums = """$MPSAccelerationStructureStatusBuilt@1$MPSAccelerationStructureStatusUnbuilt@0$MPSAccelerationStructureUsageFrequentRebuild@2$MPSAccelerationStructureUsageNone@0$MPSAccelerationStructureUsagePreferCPUBuild@8$MPSAccelerationStructureUsagePreferGPUBuild@4$MPSAccelerationStructureUsageRefit@1$MPSAliasingStrategyAliasingReserved@3$MPSAliasingStrategyDefault@0$MPSAliasingStrategyDontCare@0$MPSAliasingStrategyPreferNonTemporaryMemory@8$MPSAliasingStrategyPreferTemporaryMemory@4$MPSAliasingStrategyShallAlias@1$MPSAliasingStrategyShallNotAlias@2$MPSAlphaTypeAlphaIsOne@1$MPSAlphaTypeNonPremultiplied@0$MPSAlphaTypePremultiplied@2$MPSBoundingBoxIntersectionTestTypeAxisAligned@1$MPSBoundingBoxIntersectionTestTypeDefault@0$MPSBoundingBoxIntersectionTestTypeFast@2$MPSCNNBatchNormalizationFlagsCalculateStatisticsAlways@1$MPSCNNBatchNormalizationFlagsCalculateStatisticsAutomatic@0$MPSCNNBatchNormalizationFlagsCalculateStatisticsMask@3$MPSCNNBatchNormalizationFlagsCalculateStatisticsNever@2$MPSCNNBatchNormalizationFlagsDefault@0$MPSCNNBinaryConvolutionFlagsNone@0$MPSCNNBinaryConvolutionFlagsUseBetaScaling@1$MPSCNNBinaryConvolutionTypeAND@2$MPSCNNBinaryConvolutionTypeBinaryWeights@0$MPSCNNBinaryConvolutionTypeXNOR@1$MPSCNNConvolutionFlagsNone@0$MPSCNNConvolutionGradientOptionAll@3$MPSCNNConvolutionGradientOptionGradientWithData@1$MPSCNNConvolutionGradientOptionGradientWithWeightsAndBias@2$MPSCNNConvolutionWeightsLayoutOHWI@0$MPSCNNLossTypeCategoricalCrossEntropy@4$MPSCNNLossTypeCosineDistance@7$MPSCNNLossTypeCount@10$MPSCNNLossTypeHinge@5$MPSCNNLossTypeHuber@6$MPSCNNLossTypeKullbackLeiblerDivergence@9$MPSCNNLossTypeLog@8$MPSCNNLossTypeMeanAbsoluteError@0$MPSCNNLossTypeMeanSquaredError@1$MPSCNNLossTypeSigmoidCrossEntropy@3$MPSCNNLossTypeSoftMaxCrossEntropy@2$MPSCNNNeuronTypeAbsolute@6$MPSCNNNeuronTypeCount@16$MPSCNNNeuronTypeELU@9$MPSCNNNeuronTypeExponential@13$MPSCNNNeuronTypeGeLU@15$MPSCNNNeuronTypeHardSigmoid@4$MPSCNNNeuronTypeLinear@2$MPSCNNNeuronTypeLogarithm@14$MPSCNNNeuronTypeNone@0$MPSCNNNeuronTypePReLU@10$MPSCNNNeuronTypePower@12$MPSCNNNeuronTypeReLU@1$MPSCNNNeuronTypeReLUN@11$MPSCNNNeuronTypeSigmoid@3$MPSCNNNeuronTypeSoftPlus@7$MPSCNNNeuronTypeSoftSign@8$MPSCNNNeuronTypeTanH@5$MPSCNNReductionTypeCount@4$MPSCNNReductionTypeMean@2$MPSCNNReductionTypeNone@0$MPSCNNReductionTypeSum@1$MPSCNNReductionTypeSumByNonZeroWeights@3$MPSCNNWeightsQuantizationTypeLinear@1$MPSCNNWeightsQuantizationTypeLookupTable@2$MPSCNNWeightsQuantizationTypeNone@0$MPSCustomKernelIndexDestIndex@0$MPSCustomKernelIndexSrc0Index@0$MPSCustomKernelIndexSrc1Index@1$MPSCustomKernelIndexSrc2Index@2$MPSCustomKernelIndexSrc3Index@3$MPSCustomKernelIndexSrc4Index@4$MPSCustomKernelIndexUserDataIndex@30$MPSDataLayoutFeatureChannelsxHeightxWidth@1$MPSDataLayoutHeightxWidthxFeatureChannels@0$MPSDataTypeAlternateEncodingBit@2147483648$MPSDataTypeBFloat16@2415919120$MPSDataTypeBool@2147483656$MPSDataTypeComplexBFloat16@2432696352$MPSDataTypeComplexBit@16777216$MPSDataTypeComplexFloat16@285212704$MPSDataTypeComplexFloat32@285212736$MPSDataTypeFloat16@268435472$MPSDataTypeFloat32@268435488$MPSDataTypeFloat4e2m1@270598148$MPSDataTypeFloat8e4m3@272826376$MPSDataTypeFloat8e5m2@273809416$MPSDataTypeFloat8e8m0@276824072$MPSDataTypeFloatBit@268435456$MPSDataTypeInt16@536870928$MPSDataTypeInt2@536870914$MPSDataTypeInt32@536870944$MPSDataTypeInt4@536870916$MPSDataTypeInt64@536870976$MPSDataTypeInt8@536870920$MPSDataTypeIntBit@536870912$MPSDataTypeInvalid@0$MPSDataTypeNormalizedBit@1073741824$MPSDataTypeSignedBit@536870912$MPSDataTypeUInt16@16$MPSDataTypeUInt2@2$MPSDataTypeUInt32@32$MPSDataTypeUInt4@4$MPSDataTypeUInt64@64$MPSDataTypeUInt8@8$MPSDataTypeUnorm1@1073741825$MPSDataTypeUnorm8@1073741832$MPSDeviceCapsIndex@127$MPSDeviceCapsNull@0$MPSDeviceIsAppleDevice@1024$MPSDeviceOptionsDefault@0$MPSDeviceOptionsLowPower@1$MPSDeviceOptionsSkipRemovable@2$MPSDeviceSupportsBFloat16Arithmetic@4096$MPSDeviceSupportsFloat16BicubicFiltering@512$MPSDeviceSupportsFloat32Filtering@128$MPSDeviceSupportsNorm16BicubicFiltering@256$MPSDeviceSupportsQuadShuffle@16$MPSDeviceSupportsReadWriteTextures@4$MPSDeviceSupportsReadableArrayOfTextures@1$MPSDeviceSupportsSimdReduction@64$MPSDeviceSupportsSimdShuffle@32$MPSDeviceSupportsSimdShuffleAndFill@2048$MPSDeviceSupportsSimdgroupBarrier@8$MPSDeviceSupportsWritableArrayOfTextures@2$MPSFColorConversionOptionsNone@0$MPSFColorConversionOptionsPrecisionDefault@0$MPSFColorConversionOptionsPrecisionMask@63$MPSFColorConversionOptionsReturnGrayscaleAsRGB@256$MPSFColorConversionOptionsVerboseLogging@512$MPSFColorConversion_h@1$MPSFConverisonOptionsPrecisionFloat16@11$MPSFConverisonOptionsPrecisionFloat32@24$MPSFConverisonOptionsPrecisionSnorm16@15$MPSFConverisonOptionsPrecisionSnorm8@7$MPSFConverisonOptionsPrecisionUnorm16@16$MPSFConverisonOptionsPrecisionUnorm8@8$MPSFloatDataTypeExponentBit@8126464$MPSFloatDataTypeExponentShift@18$MPSFloatDataTypeMantissaBit@261120$MPSFloatDataTypeMantissaShift@10$MPSFloatDataTypeSignBit@8388608$MPSFloatDataTypeSignShift@23$MPSFunctionConstantNone@-1$MPSImageEdgeModeClamp@1$MPSImageEdgeModeConstant@4$MPSImageEdgeModeMirror@2$MPSImageEdgeModeMirrorWithEdge@3$MPSImageEdgeModeZero@0$MPSImageFeatureChannelFormatCount@6$MPSImageFeatureChannelFormatFloat16@3$MPSImageFeatureChannelFormatFloat32@4$MPSImageFeatureChannelFormatNone@0$MPSImageFeatureChannelFormatUnorm16@2$MPSImageFeatureChannelFormatUnorm8@1$MPSImageFeatureChannelFormat_reserved0@5$MPSImageType2d@0$MPSImageType2d_array@1$MPSImageType2d_array_noAlpha@5$MPSImageType2d_noAlpha@4$MPSImageTypeArray2d@2$MPSImageTypeArray2d_array@3$MPSImageTypeArray2d_array_noAlpha@7$MPSImageTypeArray2d_noAlpha@6$MPSImageType_ArrayMask@1$MPSImageType_BatchMask@2$MPSImageType_bitCount@6$MPSImageType_mask@63$MPSImageType_noAlpha@4$MPSImageType_texelFormatBFloat16@24$MPSImageType_texelFormatFloat16@16$MPSImageType_texelFormatMask@56$MPSImageType_texelFormatShift@3$MPSImageType_texelFormatStandard@0$MPSImageType_texelFormatUnorm8@8$MPSImageType_typeMask@3$MPSIntersectionDataTypeDistance@0$MPSIntersectionDataTypeDistancePrimitiveIndex@1$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndex@5$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexCoordinates@6$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndex@7$MPSIntersectionDataTypeDistancePrimitiveIndexBufferIndexInstanceIndexCoordinates@8$MPSIntersectionDataTypeDistancePrimitiveIndexCoordinates@2$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndex@3$MPSIntersectionDataTypeDistancePrimitiveIndexInstanceIndexCoordinates@4$MPSIntersectionTypeAny@1$MPSIntersectionTypeNearest@0$MPSKernelOptionsAllowReducedPrecision@2$MPSKernelOptionsDisableInternalTiling@4$MPSKernelOptionsInsertDebugGroups@8$MPSKernelOptionsNone@0$MPSKernelOptionsSkipAPIValidation@1$MPSKernelOptionsVerbose@16$MPSKernelTypes_h@1$MPSMatrixDecompositionStatusFailure@-1$MPSMatrixDecompositionStatusNonPositiveDefinite@-3$MPSMatrixDecompositionStatusSingular@-2$MPSMatrixDecompositionStatusSuccess@0$MPSMatrixRandomDistributionDefault@1$MPSMatrixRandomDistributionNormal@3$MPSMatrixRandomDistributionUniform@2$MPSNDArrayQuantizationTypeAffine@1$MPSNDArrayQuantizationTypeLUT@2$MPSNDArrayQuantizationTypeNone@0$MPSNNComparisonTypeEqual@0$MPSNNComparisonTypeGreater@4$MPSNNComparisonTypeGreaterOrEqual@5$MPSNNComparisonTypeLess@2$MPSNNComparisonTypeLessOrEqual@3$MPSNNComparisonTypeNotEqual@1$MPSNNConvolutionAccumulatorPrecisionOptionFloat@1$MPSNNConvolutionAccumulatorPrecisionOptionHalf@0$MPSNNPaddingMethodAddRemainderToBottomLeft@8$MPSNNPaddingMethodAddRemainderToBottomRight@12$MPSNNPaddingMethodAddRemainderToMask@12$MPSNNPaddingMethodAddRemainderToTopLeft@0$MPSNNPaddingMethodAddRemainderToTopRight@4$MPSNNPaddingMethodAlignBottomRight@2$MPSNNPaddingMethodAlignCentered@0$MPSNNPaddingMethodAlignMask@3$MPSNNPaddingMethodAlignTopLeft@1$MPSNNPaddingMethodAlign_reserved@3$MPSNNPaddingMethodCustom@16384$MPSNNPaddingMethodCustomAllowForNodeFusion@8192$MPSNNPaddingMethodCustomWhitelistForNodeFusion@8192$MPSNNPaddingMethodExcludeEdges@32768$MPSNNPaddingMethodSizeFull@32$MPSNNPaddingMethodSizeMask@2032$MPSNNPaddingMethodSizeSame@16$MPSNNPaddingMethodSizeValidOnly@0$MPSNNPaddingMethodSize_reserved@48$MPSNNRegularizationTypeL1@1$MPSNNRegularizationTypeL2@2$MPSNNRegularizationTypeNone@0$MPSNNTrainingStyleUpdateDeviceCPU@1$MPSNNTrainingStyleUpdateDeviceGPU@2$MPSNNTrainingStyleUpdateDeviceNone@0$MPSPolygonTypeQuadrilateral@1$MPSPolygonTypeTriangle@0$MPSPurgeableStateAllocationDeferred@0$MPSPurgeableStateEmpty@4$MPSPurgeableStateKeepCurrent@1$MPSPurgeableStateNonVolatile@2$MPSPurgeableStateVolatile@3$MPSRNNBidirectionalCombineModeAdd@1$MPSRNNBidirectionalCombineModeConcatenate@2$MPSRNNBidirectionalCombineModeNone@0$MPSRNNMatrixIdGRUInputGateBiasTerms@21$MPSRNNMatrixIdGRUInputGateInputWeights@19$MPSRNNMatrixIdGRUInputGateRecurrentWeights@20$MPSRNNMatrixIdGRUOutputGateBiasTerms@28$MPSRNNMatrixIdGRUOutputGateInputGateWeights@27$MPSRNNMatrixIdGRUOutputGateInputWeights@25$MPSRNNMatrixIdGRUOutputGateRecurrentWeights@26$MPSRNNMatrixIdGRURecurrentGateBiasTerms@24$MPSRNNMatrixIdGRURecurrentGateInputWeights@22$MPSRNNMatrixIdGRURecurrentGateRecurrentWeights@23$MPSRNNMatrixIdLSTMForgetGateBiasTerms@10$MPSRNNMatrixIdLSTMForgetGateInputWeights@7$MPSRNNMatrixIdLSTMForgetGateMemoryWeights@9$MPSRNNMatrixIdLSTMForgetGateRecurrentWeights@8$MPSRNNMatrixIdLSTMInputGateBiasTerms@6$MPSRNNMatrixIdLSTMInputGateInputWeights@3$MPSRNNMatrixIdLSTMInputGateMemoryWeights@5$MPSRNNMatrixIdLSTMInputGateRecurrentWeights@4$MPSRNNMatrixIdLSTMMemoryGateBiasTerms@14$MPSRNNMatrixIdLSTMMemoryGateInputWeights@11$MPSRNNMatrixIdLSTMMemoryGateMemoryWeights@13$MPSRNNMatrixIdLSTMMemoryGateRecurrentWeights@12$MPSRNNMatrixIdLSTMOutputGateBiasTerms@18$MPSRNNMatrixIdLSTMOutputGateInputWeights@15$MPSRNNMatrixIdLSTMOutputGateMemoryWeights@17$MPSRNNMatrixIdLSTMOutputGateRecurrentWeights@16$MPSRNNMatrixIdSingleGateBiasTerms@2$MPSRNNMatrixIdSingleGateInputWeights@0$MPSRNNMatrixIdSingleGateRecurrentWeights@1$MPSRNNMatrixId_count@29$MPSRNNSequenceDirectionBackward@1$MPSRNNSequenceDirectionForward@0$MPSRayDataTypeOriginDirection@0$MPSRayDataTypeOriginMaskDirectionMaxDistance@2$MPSRayDataTypeOriginMinDistanceDirectionMaxDistance@1$MPSRayDataTypePackedOriginDirection@3$MPSRayMaskOperatorAnd@0$MPSRayMaskOperatorEqual@10$MPSRayMaskOperatorGreaterThan@8$MPSRayMaskOperatorGreaterThanOrEqualTo@9$MPSRayMaskOperatorLessThan@6$MPSRayMaskOperatorLessThanOrEqualTo@7$MPSRayMaskOperatorNotAnd@1$MPSRayMaskOperatorNotEqual@11$MPSRayMaskOperatorNotOr@3$MPSRayMaskOperatorNotXor@5$MPSRayMaskOperatorOr@2$MPSRayMaskOperatorXor@4$MPSRayMaskOptionInstance@2$MPSRayMaskOptionNone@0$MPSRayMaskOptionPrimitive@1$MPSStateResourceTypeBuffer@1$MPSStateResourceTypeNone@0$MPSStateResourceTypeTexture@2$MPSTemporalWeightingAverage@0$MPSTemporalWeightingExponentialMovingAverage@1$MPSTransformTypeFloat4x4@0$MPSTransformTypeIdentity@1$MPSTriangleIntersectionTestTypeDefault@0$MPSTriangleIntersectionTestTypeWatertight@1$MetalPerformanceShaders_h@1$"""
261
264
  misc.update(
262
265
  {
263
266
  "MPSNNRegularizationType": NewType("MPSNNRegularizationType", int),
@@ -306,6 +309,7 @@ misc.update(
306
309
  "MPSRayMaskOperator": NewType("MPSRayMaskOperator", int),
307
310
  "MPSMatrixDecompositionStatus": NewType("MPSMatrixDecompositionStatus", int),
308
311
  "MPSIntersectionType": NewType("MPSIntersectionType", int),
312
+ "MPSFColorConversionOptions": NewType("MPSFColorConversionOptions", int),
309
313
  "MPSDeviceCapsValues": NewType("MPSDeviceCapsValues", int),
310
314
  "MPSTemporalWeighting": NewType("MPSTemporalWeighting", int),
311
315
  "MPSTransformType": NewType("MPSTransformType", int),
@@ -369,6 +373,7 @@ functions = {
369
373
  ),
370
374
  }
371
375
  aliases = {
376
+ "MPSFColorConversionOptionsPrecisionDefault": "MPSFColorConversionOptionsNone",
372
377
  "MPSNNPaddingMethodAlignMask": "MPSNNPaddingMethodAlign_reserved",
373
378
  "MPSPurgeableStateVolatile": "MTLPurgeableStateVolatile",
374
379
  "MPSPurgeableStateEmpty": "MTLPurgeableStateEmpty",
@@ -390,6 +395,16 @@ try:
390
395
  "retval": {"type": b"{_MPSAxisAlignedBoundingBox=<3f><3f>}"},
391
396
  },
392
397
  )
398
+ r(
399
+ b"MPSAccelerationStructure",
400
+ b"copyWithZone:device:",
401
+ {"retval": {"already_retained": True}},
402
+ )
403
+ r(
404
+ b"MPSAccelerationStructure",
405
+ b"copyWithZone:group:",
406
+ {"retval": {"already_retained": True}},
407
+ )
393
408
  r(
394
409
  b"MPSAccelerationStructure",
395
410
  b"rebuildWithCompletionHandler:",
@@ -873,6 +888,39 @@ try:
873
888
  {"arguments": {2: {"type": b"Z"}}},
874
889
  )
875
890
  r(b"MPSCNNYOLOLossDescriptor", b"setRescore:", {"arguments": {2: {"type": b"Z"}}})
891
+ r(
892
+ b"MPSFColorConversion",
893
+ b"effectiveRange:",
894
+ {
895
+ "full_signature": b"{MPSFunctions_AABB=<4f><4f>}@:{MPSFunctions_AABB=<4f><4f>}",
896
+ "retval": {"type": b"{MPSFunctions_AABB=<4f><4f>}"},
897
+ "arguments": {2: {"type": b"{MPSFunctions_AABB=<4f><4f>}"}},
898
+ },
899
+ )
900
+ r(
901
+ b"MPSFColorConversion",
902
+ b"initWithDevice:conversion:functionName:sourceRange:options:error:",
903
+ {
904
+ "full_signature": b"@@:@^{CGColorConversionInfo=}@^{MPSFunctions_AABB=<4f><4f>}Q^@",
905
+ "arguments": {
906
+ 5: {"type": b"^{MPSFunctions_AABB=<4f><4f>}"},
907
+ 7: {"type_modifier": b"o"},
908
+ },
909
+ },
910
+ )
911
+ r(
912
+ b"MPSFColorConversion",
913
+ b"initWithDevice:startColorSpace:endColorSpace:functionName:sourceRange:options:error:",
914
+ {
915
+ "full_signature": b"@@:@^{CGColorSpace=}^{CGColorSpace=}@^{MPSFunctions_AABB=<4f><4f>}Q^@",
916
+ "arguments": {
917
+ 6: {"type": b"^{MPSFunctions_AABB=<4f><4f>}"},
918
+ 8: {"type_modifier": b"o"},
919
+ },
920
+ },
921
+ )
922
+ r(b"MPSFunction", b"copyWithZone:device:", {"retval": {"already_retained": True}})
923
+ r(b"MPSFunction", b"supportsSecureCoding", {"retval": {"type": b"Z"}})
876
924
  r(b"MPSGRUDescriptor", b"flipOutputGates", {"retval": {"type": b"Z"}})
877
925
  r(b"MPSGRUDescriptor", b"setFlipOutputGates:", {"arguments": {2: {"type": b"Z"}}})
878
926
  r(
@@ -983,6 +1031,7 @@ try:
983
1031
  b"setDestinationMatrixOrigin:",
984
1032
  {"arguments": {2: {"type": b"{MTLOrigin=QQQ}"}}},
985
1033
  )
1034
+ r(b"MPSImageDescriptor", b"copyWithZone:", {"retval": {"already_retained": True}})
986
1035
  r(
987
1036
  b"MPSImageDilate",
988
1037
  b"initWithDevice:kernelWidth:kernelHeight:values:",
@@ -1224,6 +1273,7 @@ try:
1224
1273
  b"initWithDevice:thresholdValue:linearGrayColorTransform:",
1225
1274
  {"arguments": {4: {"c_array_of_fixed_length": 3, "type_modifier": b"n"}}},
1226
1275
  )
1276
+ r(b"MPSKernel", b"copyWithZone:device:", {"retval": {"already_retained": True}})
1227
1277
  r(
1228
1278
  b"MPSKeyedUnarchiver",
1229
1279
  b"initForReadingFromData:device:error:",
@@ -1271,11 +1321,21 @@ try:
1271
1321
  {"arguments": {2: {"type": b"Z"}}},
1272
1322
  )
1273
1323
  r(b"MPSMatrixBatchNormalization", b"computeStatistics", {"retval": {"type": b"Z"}})
1324
+ r(
1325
+ b"MPSMatrixBatchNormalization",
1326
+ b"copyWithZone:device:",
1327
+ {"retval": {"already_retained": True}},
1328
+ )
1274
1329
  r(
1275
1330
  b"MPSMatrixBatchNormalization",
1276
1331
  b"setComputeStatistics:",
1277
1332
  {"arguments": {2: {"type": b"Z"}}},
1278
1333
  )
1334
+ r(
1335
+ b"MPSMatrixBatchNormalizationGradient",
1336
+ b"copyWithZone:device:",
1337
+ {"retval": {"already_retained": True}},
1338
+ )
1279
1339
  r(
1280
1340
  b"MPSMatrixBinaryKernel",
1281
1341
  b"primarySourceMatrixOrigin",
@@ -1338,6 +1398,21 @@ try:
1338
1398
  b"initWithDevice:lower:order:",
1339
1399
  {"arguments": {3: {"type": b"Z"}}},
1340
1400
  )
1401
+ r(
1402
+ b"MPSMatrixFindTopK",
1403
+ b"copyWithZone:device:",
1404
+ {"retval": {"already_retained": True}},
1405
+ )
1406
+ r(
1407
+ b"MPSMatrixFullyConnected",
1408
+ b"copyWithZone:device:",
1409
+ {"retval": {"already_retained": True}},
1410
+ )
1411
+ r(
1412
+ b"MPSMatrixFullyConnectedGradient",
1413
+ b"copyWithZone:device:",
1414
+ {"retval": {"already_retained": True}},
1415
+ )
1341
1416
  r(
1342
1417
  b"MPSMatrixMultiplication",
1343
1418
  b"initWithDevice:transposeLeft:transposeRight:resultRows:resultColumns:interiorColumns:alpha:beta:",
@@ -1373,6 +1448,26 @@ try:
1373
1448
  b"setRightMatrixOrigin:",
1374
1449
  {"arguments": {2: {"type": b"{MTLOrigin=QQQ}"}}},
1375
1450
  )
1451
+ r(
1452
+ b"MPSMatrixNeuron",
1453
+ b"copyWithZone:device:",
1454
+ {"retval": {"already_retained": True}},
1455
+ )
1456
+ r(
1457
+ b"MPSMatrixNeuronGradient",
1458
+ b"copyWithZone:device:",
1459
+ {"retval": {"already_retained": True}},
1460
+ )
1461
+ r(
1462
+ b"MPSMatrixSoftMax",
1463
+ b"copyWithZone:device:",
1464
+ {"retval": {"already_retained": True}},
1465
+ )
1466
+ r(
1467
+ b"MPSMatrixSoftMaxGradient",
1468
+ b"copyWithZone:device:",
1469
+ {"retval": {"already_retained": True}},
1470
+ )
1376
1471
  r(
1377
1472
  b"MPSMatrixSolveCholesky",
1378
1473
  b"initWithDevice:upper:order:numberOfRightHandSides:",
@@ -1603,6 +1698,11 @@ try:
1603
1698
  b"reshapeWithCommandEncoder:commandBuffer:sourceArray:dimensionCount:dimensionSizes:destinationArray:",
1604
1699
  {"arguments": {6: {"type_modifier": b"n", "c_array_length_in_arg": 5}}},
1605
1700
  )
1701
+ r(
1702
+ b"MPSNDArrayMultiaryBase",
1703
+ b"copyWithZone:device:",
1704
+ {"retval": {"already_retained": True}},
1705
+ )
1606
1706
  r(
1607
1707
  b"MPSNDArrayMultiaryBase",
1608
1708
  b"dilationRatesForSourceIndex:",
@@ -2032,6 +2132,7 @@ try:
2032
2132
  b"setClipRectSource:",
2033
2133
  {"arguments": {2: {"type": b"{MTLRegion={MTLOrigin=QQQ}{MTLSize=QQQ}}"}}},
2034
2134
  )
2135
+ r(b"MPSPolygonBuffer", b"copyWithZone:", {"retval": {"already_retained": True}})
2035
2136
  r(b"MPSRNNDescriptor", b"setUseFloat32Weights:", {"arguments": {2: {"type": b"Z"}}})
2036
2137
  r(
2037
2138
  b"MPSRNNDescriptor",
@@ -2044,6 +2145,11 @@ try:
2044
2145
  b"useLayerInputUnitTransformMode",
2045
2146
  {"retval": {"type": b"Z"}},
2046
2147
  )
2148
+ r(
2149
+ b"MPSRNNImageInferenceLayer",
2150
+ b"copyWithZone:device:",
2151
+ {"retval": {"already_retained": True}},
2152
+ )
2047
2153
  r(
2048
2154
  b"MPSRNNImageInferenceLayer",
2049
2155
  b"recurrentOutputIsTemporary",
@@ -2064,6 +2170,11 @@ try:
2064
2170
  b"storeAllIntermediateStates",
2065
2171
  {"retval": {"type": b"Z"}},
2066
2172
  )
2173
+ r(
2174
+ b"MPSRNNMatrixInferenceLayer",
2175
+ b"copyWithZone:device:",
2176
+ {"retval": {"already_retained": True}},
2177
+ )
2067
2178
  r(
2068
2179
  b"MPSRNNMatrixInferenceLayer",
2069
2180
  b"recurrentOutputIsTemporary",
@@ -2089,6 +2200,11 @@ try:
2089
2200
  b"accumulateWeightGradients",
2090
2201
  {"retval": {"type": b"Z"}},
2091
2202
  )
2203
+ r(
2204
+ b"MPSRNNMatrixTrainingLayer",
2205
+ b"copyWithZone:device:",
2206
+ {"retval": {"already_retained": True}},
2207
+ )
2092
2208
  r(
2093
2209
  b"MPSRNNMatrixTrainingLayer",
2094
2210
  b"encodeCopyWeightsToCommandBuffer:weights:matrixId:matrix:copyFromWeightsToMatrix:matrixOffset:",
@@ -2129,6 +2245,12 @@ try:
2129
2245
  b"trainingStateIsTemporary",
2130
2246
  {"retval": {"type": b"Z"}},
2131
2247
  )
2248
+ r(
2249
+ b"MPSRayIntersector",
2250
+ b"copyWithZone:device:",
2251
+ {"retval": {"already_retained": True}},
2252
+ )
2253
+ r(b"MPSSVGF", b"copyWithZone:device:", {"retval": {"already_retained": True}})
2132
2254
  r(b"MPSState", b"isTemporary", {"retval": {"type": b"Z"}})
2133
2255
  r(
2134
2256
  b"MPSState",
@@ -2146,6 +2268,7 @@ try:
2146
2268
  b"resourceListWithTextureDescriptors:",
2147
2269
  {"variadic": True},
2148
2270
  )
2271
+ r(b"MPSTemporalAA", b"copyWithZone:device:", {"retval": {"already_retained": True}})
2149
2272
  r(
2150
2273
  b"MPSUnaryImageKernel",
2151
2274
  b"clipRect",
@@ -2229,7 +2352,7 @@ try:
2229
2352
  b"copyWithZone:device:",
2230
2353
  {
2231
2354
  "required": False,
2232
- "retval": {"type": b"@"},
2355
+ "retval": {"already_retained": True, "type": b"@"},
2233
2356
  "arguments": {2: {"type": b"^{_NSZone=}"}, 3: {"type": b"@"}},
2234
2357
  },
2235
2358
  )
@@ -2316,7 +2439,11 @@ try:
2316
2439
  r(
2317
2440
  b"NSObject",
2318
2441
  b"newHeapWithDescriptor:",
2319
- {"required": True, "retval": {"type": b"@"}, "arguments": {2: {"type": b"@"}}},
2442
+ {
2443
+ "required": True,
2444
+ "retval": {"already_retained": True, "type": b"@"},
2445
+ "arguments": {2: {"type": b"@"}},
2446
+ },
2320
2447
  )
2321
2448
  r(
2322
2449
  b"NSObject",
@@ -3100,6 +3227,16 @@ objc.registerNewKeywordsFromSelector(
3100
3227
  )
3101
3228
  objc.registerNewKeywordsFromSelector("MPSCommandBuffer", b"init")
3102
3229
  objc.registerNewKeywordsFromSelector("MPSCommandBuffer", b"initWithCommandBuffer:")
3230
+ objc.registerNewKeywordsFromSelector(
3231
+ "MPSFColorConversion",
3232
+ b"initWithDevice:conversion:functionName:sourceRange:options:error:",
3233
+ )
3234
+ objc.registerNewKeywordsFromSelector(
3235
+ "MPSFColorConversion",
3236
+ b"initWithDevice:startColorSpace:endColorSpace:functionName:sourceRange:options:error:",
3237
+ )
3238
+ objc.registerNewKeywordsFromSelector("MPSFunction", b"init")
3239
+ objc.registerNewKeywordsFromSelector("MPSFunction", b"initWithCoder:")
3103
3240
  objc.registerNewKeywordsFromSelector("MPSImage", b"init")
3104
3241
  objc.registerNewKeywordsFromSelector("MPSImage", b"initWithDevice:imageDescriptor:")
3105
3242
  objc.registerNewKeywordsFromSelector(
@@ -4046,18 +4183,38 @@ objc.registerNewKeywords(
4046
4183
  )
4047
4184
  expressions = {
4048
4185
  "MPSUserAvailableFunctionConstantStartIndex": "MPSDeviceCapsIndex-12",
4186
+ "MPSFunctions_AABB_SDR": "MPSFunctions_AABB(_simd.vector_float4(1), _simd.vector_float4(0))",
4049
4187
  "MPSNDArrayConstantMultiDestSrcAddressingIndex": "MPSDeviceCapsIndex-10",
4050
4188
  "MPSNDArrayConstantMultiDestIndex": "MPSDeviceCapsIndex-7",
4051
4189
  "MPSNDArrayConstantMultiDestDstAddressingIndex": "MPSDeviceCapsIndex-11",
4052
4190
  "MPSTextureLinkingConstantIndex": "MPSDeviceCapsIndex-6",
4053
4191
  "MPSFunctionConstantIndex": "MPSDeviceCapsIndex-1",
4054
4192
  "MPSFunctionConstantNoneArray": "(-1, -1)",
4055
- "MPSNDArrayConstantIndex": "MPSDeviceCapsIndex-4",
4193
+ "MPSFunctions_AABB_Unbounded": "MPSFunctions_AABB(_simd.vector_float4(_math.inf), _simd.vector_float4(-_math.inf))",
4056
4194
  "MPSNDArrayConstantMultiDestIndex1": "MPSDeviceCapsIndex-9",
4195
+ "MPSNDArrayConstantIndex": "MPSDeviceCapsIndex-4",
4057
4196
  "MPSBatchSizeIndex": "MPSDeviceCapsIndex-2",
4058
4197
  "MPSFunctionConstantIndexReserved": "MPSDeviceCapsIndex-5",
4059
4198
  "MPSNDArrayConstantMultiDestIndex0": "MPSDeviceCapsIndex-8",
4060
4199
  "MPSUserConstantIndex": "MPSDeviceCapsIndex-3",
4061
4200
  }
4201
+ formal_protocols = {
4202
+ "MPSCNNBatchNormalizationDataSource": "MPSCNNBatchNormalizationDataSource",
4203
+ "MPSCNNConvolutionDataSource": "MPSCNNConvolutionDataSource",
4204
+ "MPSCNNGroupNormalizationDataSource": "MPSCNNGroupNormalizationDataSource",
4205
+ "MPSCNNInstanceNormalizationDataSource": "MPSCNNInstanceNormalizationDataSource",
4206
+ "MPSDeviceProvider": "MPSDeviceProvider",
4207
+ "MPSHandle": "MPSHandle",
4208
+ "MPSHeapProvider": "MPSHeapProvider",
4209
+ "MPSImageAllocator": "MPSImageAllocator",
4210
+ "MPSImageSizeEncodingState": "MPSImageSizeEncodingState",
4211
+ "MPSImageTransformProvider": "MPSImageTransformProvider",
4212
+ "MPSNDArrayAllocator": "MPSNDArrayAllocator",
4213
+ "MPSNNGramMatrixCallback": "MPSNNGramMatrixCallback",
4214
+ "MPSNNLossCallback": "MPSNNLossCallback",
4215
+ "MPSNNPadding": "MPSNNPadding",
4216
+ "MPSNNTrainableNode": "MPSNNTrainableNode",
4217
+ "MPSSVGFTextureAllocator": "MPSSVGFTextureAllocator",
4218
+ }
4062
4219
 
4063
4220
  # END OF FILE
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-MetalPerformanceShaders
3
- Version: 12.2.2
3
+ Version: 13.0
4
4
  Summary: Wrappers for the framework MetalPerformanceShaders on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
@@ -17,21 +17,21 @@ Classifier: Operating System :: MacOS :: MacOS X
17
17
  Classifier: Programming Language :: Python
18
18
  Classifier: Programming Language :: Python :: 3
19
19
  Classifier: Programming Language :: Python :: 3 :: Only
20
- Classifier: Programming Language :: Python :: 3.10
21
20
  Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Programming Language :: Python :: 3.13
24
23
  Classifier: Programming Language :: Python :: 3.14
25
24
  Classifier: Programming Language :: Python :: 3.15
25
+ Classifier: Programming Language :: Python :: 3.16
26
26
  Classifier: Programming Language :: Python :: Implementation :: CPython
27
27
  Classifier: Programming Language :: Python :: Free Threading :: 3 - Stable
28
28
  Classifier: Programming Language :: Objective C
29
29
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
30
  Classifier: Topic :: Software Development :: User Interfaces
31
- Requires-Python: >=3.10
31
+ Requires-Python: >=3.11
32
32
  Description-Content-Type: text/x-rst; charset=UTF-8
33
- Requires-Dist: pyobjc-core>=12.2.2
34
- Requires-Dist: pyobjc-framework-Metal>=12.2.2
33
+ Requires-Dist: pyobjc-core>=13.0
34
+ Requires-Dist: pyobjc-framework-Metal>=13.0
35
35
  Dynamic: author
36
36
  Dynamic: author-email
37
37
  Dynamic: classifier
@@ -23,12 +23,16 @@ PyObjCTest/test_mpscore_mpscommandbuffer.py
23
23
  PyObjCTest/test_mpscore_mpscoretypes.py
24
24
  PyObjCTest/test_mpscore_mpsfunctionconstantindices.py
25
25
  PyObjCTest/test_mpscore_mpsimage.py
26
+ PyObjCTest/test_mpscore_mpskernel.py
26
27
  PyObjCTest/test_mpscore_mpskerneltypes.py
27
28
  PyObjCTest/test_mpscore_mpskeyedunarchiver.py
28
29
  PyObjCTest/test_mpscore_mpsndarray.py
29
30
  PyObjCTest/test_mpscore_mpsndarrayidentity.py
30
31
  PyObjCTest/test_mpscore_mpsndarrayquantization.py
31
32
  PyObjCTest/test_mpscore_mpsstate.py
33
+ PyObjCTest/test_mpsfunctions_mpsfcolorconversion.py
34
+ PyObjCTest/test_mpsfunctions_mpsfunction.py
35
+ PyObjCTest/test_mpsfunctions_mpsfunctiontypes.py
32
36
  PyObjCTest/test_mpsimage_mpsimageconvolution.py
33
37
  PyObjCTest/test_mpsimage_mpsimagehistogram.py
34
38
  PyObjCTest/test_mpsimage_mpsimagekernel.py
@@ -38,10 +42,15 @@ PyObjCTest/test_mpsimage_mpsimagethreshold.py
38
42
  PyObjCTest/test_mpsimage_mpsimagetypes.py
39
43
  PyObjCTest/test_mpsmatrix_mpsmatrixcombination.py
40
44
  PyObjCTest/test_mpsmatrix_mpsmatrixdecomposition.py
45
+ PyObjCTest/test_mpsmatrix_mpsmatrixfindtopk.py
46
+ PyObjCTest/test_mpsmatrix_mpsmatrixfullyconnected.py
41
47
  PyObjCTest/test_mpsmatrix_mpsmatrixmultiplication.py
48
+ PyObjCTest/test_mpsmatrix_mpsmatrixneuron.py
42
49
  PyObjCTest/test_mpsmatrix_mpsmatrixrandom.py
50
+ PyObjCTest/test_mpsmatrix_mpsmatrixsoftmax.py
43
51
  PyObjCTest/test_mpsmatrix_mpsmatrixsolve.py
44
52
  PyObjCTest/test_mpsmatrix_mpsndarraymultiarykernel.py
53
+ PyObjCTest/test_mpsndarray_mpsndarraykernel.py
45
54
  PyObjCTest/test_mpsndarray_mpsndarraytypes.py
46
55
  PyObjCTest/test_mpsneuralnetwork_mpscnnconvolution.py
47
56
  PyObjCTest/test_mpsneuralnetwork_mpscnngroupnormalization.py
@@ -69,7 +78,8 @@ PyObjCTest/test_mpsrayintersector_mpspolygonaccelerationstructure.py
69
78
  PyObjCTest/test_mpsrayintersector_mpsrayintersector.py
70
79
  PyObjCTest/test_mpsrayintersector_mpsrayintersectortypes.py
71
80
  PyObjCTest/test_mpsrayintersector_mpssvgf.py
81
+ PyObjCTest/test_mpsrayintersector_mpstemporalaa.py
72
82
  metadata/MetalPerformanceShaders.fwinfo
73
83
  metadata/metadata.ini
74
- metadata/raw/arm64-26.5.fwinfo
75
- metadata/raw/x86_64-26.5.fwinfo
84
+ metadata/raw/arm64-27.fwinfo
85
+ metadata/raw/x86_64-27.fwinfo
@@ -0,0 +1,3 @@
1
+ macOS 27.2 (26B123)
2
+ Apple clang version 21.0.0 (clang-2100.4.1.1)
3
+ SDK: macOS 27.2
@@ -0,0 +1,2 @@
1
+ pyobjc-core>=13.0
2
+ pyobjc-framework-Metal>=13.0
@@ -2,6 +2,10 @@
2
2
  #include "Python.h"
3
3
  #include "pyobjc-api.h"
4
4
 
5
+ #ifdef USE_STATIC_ANALYZER
6
+ #include "../../pyobjc-core/Modules/objc/python-api-used.h"
7
+ #endif
8
+
5
9
  #import <Foundation/Foundation.h>
6
10
  #import <MetalPerformanceShaders/MetalPerformanceShaders.h>
7
11
 
@@ -10,6 +14,8 @@
10
14
  */
11
15
  #include "_MetalPerformanceShaders_protocols.m"
12
16
 
17
+ NS_ASSUME_NONNULL_BEGIN
18
+
13
19
  static PyMethodDef mod_methods[] = {
14
20
  {0, 0, 0, 0} /* sentinel */
15
21
  };
@@ -55,10 +61,11 @@ static struct PyModuleDef mod_module = {
55
61
  .m_free = NULL,
56
62
  };
57
63
 
58
- PyObject* PyInit__MetalPerformanceShaders(void);
64
+ PyObject* _Nullable PyInit__MetalPerformanceShaders(void);
59
65
 
60
- PyObject* __attribute__((__visibility__("default")))
66
+ PyObject* _Nullable __attribute__((__visibility__("default")))
61
67
  PyInit__MetalPerformanceShaders(void)
62
68
  {
63
69
  return PyModuleDef_Init(&mod_module);
64
70
  }
71
+ NS_ASSUME_NONNULL_END
@@ -2,8 +2,14 @@
2
2
  #include "Python.h"
3
3
  #include "pyobjc-api.h"
4
4
 
5
+ #ifdef USE_STATIC_ANALYZER
6
+ #include "../../pyobjc-core/Modules/objc/python-api-used.h"
7
+ #endif
8
+
5
9
  #import <MetalPerformanceShaders/MetalPerformanceShaders.h>
6
10
 
11
+ NS_ASSUME_NONNULL_BEGIN
12
+
7
13
  /*
8
14
  * The definitions below can cause warnings when using
9
15
  * -Wunguarded-availability, but those warnings are harmless
@@ -43,8 +49,9 @@ static PyMethodDef mod_methods[] = {
43
49
  static int
44
50
  mod_exec_module(PyObject* m)
45
51
  {
46
- if (PyModule_AddObject(m, "_inline_list_", PyObjC_CreateInlineTab(function_map)) < 0)
47
- return -1;
52
+ if (PyModule_AddObject(m, "_inline_list_", PyObjC_CreateInlineTab(function_map))
53
+ == -1) // LCOV_BR_EXCL_LINE
54
+ return -1; // LCOV_EXCL_LINE
48
55
 
49
56
  return 0;
50
57
  }
@@ -84,10 +91,11 @@ static struct PyModuleDef mod_module = {
84
91
  .m_free = NULL,
85
92
  };
86
93
 
87
- PyObject* PyInit__inlines(void);
94
+ PyObject* _Nullable PyInit__inlines(void);
88
95
 
89
- PyObject* __attribute__((__visibility__("default")))
96
+ PyObject* _Nullable __attribute__((__visibility__("default")))
90
97
  PyInit__inlines(void)
91
98
  {
92
99
  return PyModuleDef_Init(&mod_module);
93
100
  }
101
+ NS_ASSUME_NONNULL_END
@@ -1,8 +1,7 @@
1
- /*
2
- * This file is generated by objective.metadata
3
- *
4
- * Last update: Wed Jan 16 13:10:52 2013
5
- */
1
+ // LCOV_EXCL_START
2
+ // This function is only present to ensure protocols are
3
+ // available at runtime.
4
+ NS_ASSUME_NONNULL_BEGIN
6
5
 
7
6
  static void __attribute__((__used__))
8
7
  use_protocols(void)
@@ -29,3 +28,6 @@ use_protocols(void)
29
28
  Py_XDECREF(p);
30
29
  #endif
31
30
  }
31
+
32
+ NS_ASSUME_NONNULL_END
33
+ // LCOV_EXCL_STOP
@@ -60,6 +60,11 @@ typedef int(RegisterMethodMappingFunctionType)(
60
60
  PyObject* _Nonnull const* _Nonnull, size_t),
61
61
  IMP _Nullable (*_Nonnull)(PyObject* _Nonnull, PyObject* _Nonnull));
62
62
 
63
+ #ifndef PyObjC_FUNCTION_CALL_H
64
+ typedef PyObject* _Nullable (*PyObjC_FunctionCallFunc)(
65
+ PyObject* meth, PyObject* _Nonnull const* _Nonnull args, size_t nargs);
66
+ #endif
67
+
63
68
  struct pyobjc_api {
64
69
  int api_version; /* API version */
65
70
  size_t struct_len; /* Length of this struct */
@@ -117,6 +122,9 @@ struct pyobjc_api {
117
122
 
118
123
  PyObject* _Nullable (*_Nonnull createopaquepointertype)(const char*, const char*,
119
124
  const char*);
125
+ int (*_Nonnull register_functioncaller)(void*, PyObjC_FunctionCallFunc);
126
+ PyObject* _Nullable (*_Nonnull create_registered_struct)(
127
+ const char*, Py_ssize_t, const char* _Nonnull* _Nullable, Py_ssize_t*);
120
128
  };
121
129
 
122
130
  #ifndef PYOBJC_BUILD
@@ -159,6 +167,8 @@ static struct pyobjc_api* PyObjC_API;
159
167
  #define PyObjC_CheckArgCount (PyObjC_API->checkargcount)
160
168
  #define PyObjC_CheckNoKwnames (PyObjC_API->checknokwnames)
161
169
  #define PyObjCCreateOpaquePointerType (PyObjC_API->createopaquepointertype)
170
+ #define PyObjCRegister_FunctionCaller (PyObjC_API->register_functioncaller)
171
+ #define PyObjC_CreateRegisteredStruct (PyObjC_API->create_registered_struct)
162
172
 
163
173
  typedef void (*PyObjC_Function_Pointer)(void);
164
174
  typedef struct PyObjC_function_map {
@@ -178,21 +188,25 @@ static inline int
178
188
  PyObjC_ImportAPI(PyObject* calling_module)
179
189
  {
180
190
  PyObjC_API = (struct pyobjc_api*)PyCapsule_Import("objc." PYOBJC_API_NAME, 0);
181
- if (PyObjC_API == NULL) {
182
- return -1;
191
+ if (PyObjC_API == NULL) { // LCOV_BR_EXCL_LINE
192
+ return -1; // LCOV_EXCL_LINE
183
193
  }
184
- if (PyObjC_API->api_version != PYOBJC_API_VERSION) {
194
+ if (PyObjC_API->api_version != PYOBJC_API_VERSION) { // LCOV_BR_EXCL_LINE
195
+ // LCOV_EXCL_START
185
196
  PyErr_Format(PyExc_RuntimeError,
186
197
  "Wrong version of PyObjC C API (got %d, expected %d)",
187
198
  (int)PyObjC_API->api_version, (int)PYOBJC_API_VERSION);
188
199
  return -1;
200
+ // LCOV_EXCL_STOP
189
201
  }
190
202
 
191
- if (PyObjC_API->struct_len < PyObjC_EXPECTED_STRUCT_SIZE) {
203
+ if (PyObjC_API->struct_len < PyObjC_EXPECTED_STRUCT_SIZE) { // LCOV_EXCL_LINE
204
+ // LCOV_EXCL_START
192
205
  PyErr_Format(PyExc_RuntimeError,
193
206
  "Wrong struct-size of PyObjC C API (got %d, expected %d)",
194
207
  (int)PyObjC_API->struct_len, (int)sizeof(struct pyobjc_api));
195
208
  return -1;
209
+ // LCOV_EXCL_STOP
196
210
  }
197
211
 
198
212
  /* Current pyobjc implementation doesn't allow deregistering