Cargo Features

[dependencies]
objc2-metal = { version = "0.3.2", default-features = false, features = ["std", "alloc", "MTLAccelerationStructureCommandEncoder", "MTLArgument", "MTLStageInputOutputDescriptor", "MTLComputePipeline", "MTLRenderPipeline", "MTLDevice", "bitflags", "block2", "dispatch2", "objc2-core-foundation", "objc2-io-surface", "unstable-darwin-objc", "MTL4AccelerationStructure", "MTL4Archive", "MTL4ArgumentTable", "MTL4BinaryFunction", "MTL4BinaryFunctionDescriptor", "MTL4BufferRange", "MTL4CommandAllocator", "MTL4CommandBuffer", "MTL4CommandEncoder", "MTL4CommandQueue", "MTL4CommitFeedback", "MTL4Compiler", "MTL4CompilerTask", "MTL4ComputeCommandEncoder", "MTL4ComputePipeline", "MTL4Counters", "MTL4FunctionDescriptor", "MTL4LibraryFunctionDescriptor", "MTL4LinkingDescriptor", "MTL4MachineLearningCommandEncoder", "MTL4MachineLearningPipeline", "MTL4MeshRenderPipeline", "MTL4PipelineDataSetSerializer", "MTL4PipelineState", "MTL4RenderCommandEncoder", "MTL4RenderPass", "MTL4RenderPipeline", "MTL4SpecializedFunctionDescriptor", "MTL4StitchedFunctionDescriptor", "MTL4TileRenderPipeline", "MTLAccelerationStructure", "MTLAccelerationStructureTypes", "MTLAllocation", "MTLArgumentEncoder", "MTLBinaryArchive", "MTLBlitCommandEncoder", "MTLBlitPass", "MTLBuffer", "MTLCaptureManager", "MTLCaptureScope", "MTLCommandBuffer", "MTLCommandEncoder", "MTLCommandQueue", "MTLComputeCommandEncoder", "MTLComputePass", "MTLCounters", "MTLDataType", "MTLDefines", "MTLDepthStencil", "MTLDeviceCertification", "MTLDrawable", "MTLDynamicLibrary", "MTLEvent", "MTLFence", "MTLFunctionConstantValues", "MTLFunctionDescriptor", "MTLFunctionHandle", "MTLFunctionLog", "MTLFunctionStitching", "MTLGPUAddress", "MTLHeap", "MTLIOCommandBuffer", "MTLIOCommandQueue", "MTLIOCompressor", "MTLIndirectCommandBuffer", "MTLIndirectCommandEncoder", "MTLIntersectionFunctionTable", "MTLLibrary", "MTLLinkedFunctions", "MTLLogState", "MTLParallelRenderCommandEncoder", "MTLPipeline", "MTLPixelFormat", "MTLRasterizationRate", "MTLRenderCommandEncoder", "MTLRenderPass", "MTLResidencySet", "MTLResource", "MTLResourceStateCommandEncoder", "MTLResourceStatePass", "MTLResourceViewPool", "MTLSampler", "MTLTensor", "MTLTexture", "MTLTextureViewPool", "MTLTypes", "MTLVertexDescriptor", "MTLVisibleFunctionTable", "unstable-private"] }
default = MTL4AccelerationStructure, MTL4Archive, MTL4ArgumentTable, MTL4BinaryFunction, MTL4BinaryFunctionDescriptor, MTL4BufferRange, MTL4CommandAllocator, MTL4CommandBuffer, MTL4CommandEncoder, MTL4CommandQueue, MTL4CommitFeedback, MTL4Compiler, MTL4CompilerTask, MTL4ComputeCommandEncoder, MTL4ComputePipeline, MTL4Counters, MTL4FunctionDescriptor, MTL4LibraryDescriptor, MTL4LibraryFunctionDescriptor, MTL4LinkingDescriptor, MTL4MachineLearningCommandEncoder, MTL4MachineLearningPipeline, MTL4MeshRenderPipeline, MTL4PipelineDataSetSerializer, MTL4PipelineState, MTL4RenderCommandEncoder, MTL4RenderPass, MTL4RenderPipeline, MTL4SpecializedFunctionDescriptor, MTL4StitchedFunctionDescriptor, MTL4TileRenderPipeline, MTLAccelerationStructure, MTLAccelerationStructureCommandEncoder, MTLAccelerationStructureTypes, MTLAllocation, MTLArgument, MTLArgumentEncoder, MTLBinaryArchive, MTLBlitCommandEncoder, MTLBlitPass, MTLBuffer, MTLCaptureManager, MTLCaptureScope, MTLCommandBuffer, MTLCommandEncoder, MTLCommandQueue, MTLComputeCommandEncoder, MTLComputePass, MTLComputePipeline, MTLCounters, MTLDataType, MTLDefines, MTLDepthStencil, MTLDevice, MTLDeviceCertification, MTLDrawable, MTLDynamicLibrary, MTLEvent, MTLFence, MTLFunctionConstantValues, MTLFunctionDescriptor, MTLFunctionHandle, MTLFunctionLog, MTLFunctionStitching, MTLGPUAddress, MTLHeap, MTLIOCommandBuffer, MTLIOCommandQueue, MTLIOCompressor, MTLIndirectCommandBuffer, MTLIndirectCommandEncoder, MTLIntersectionFunctionTable, MTLLibrary, MTLLinkedFunctions, MTLLogState, MTLParallelRenderCommandEncoder, MTLPipeline, MTLPixelFormat, MTLRasterizationRate, MTLRenderCommandEncoder, MTLRenderPass, MTLRenderPipeline, MTLResidencySet, MTLResource, MTLResourceStateCommandEncoder, MTLResourceStatePass, MTLResourceViewPool, MTLSampler, MTLStageInputOutputDescriptor, MTLTensor, MTLTexture, MTLTextureViewPool, MTLTypes, MTLVertexDescriptor, MTLVisibleFunctionTable, bitflags, block2, dispatch2, objc2-core-foundation, std

These default features are set whenever objc2-metal is added without default-features = false somewhere in the dependency tree.

std default = alloc
alloc std
MTLAccelerationStructureCommandEncoder default = MTLAccelerationStructure

Enables NSObject of objc2-foundation

MTLArgument default MTLStageInputOutputDescriptor = MTLDataType

Enables NSArray and NSString of objc2-foundation

Affects MTLLibrary::MTLAutoreleasedArgument

MTLStageInputOutputDescriptor default = MTLArgument

Enables NSObject of objc2-foundation

MTLComputePipeline default = MTLAllocation

Enables NSArray, NSError, NSObject and NSString of objc2-foundation

Affects MTLLibrary::MTLAutoreleasedComputePipelineReflection, MTLLibrary::MTLNewComputePipelineStateCompletionHandler, MTLLibrary::MTLNewComputePipelineStateWithReflectionCompletionHandler

MTLRenderPipeline default = MTLAllocation, bitflags

Enables NSArray, NSError, NSObject and NSString of objc2-foundation

Affects MTLLibrary::MTLAutoreleasedRenderPipelineReflection, MTLLibrary::MTLNewRenderPipelineStateCompletionHandler, MTLLibrary::MTLNewRenderPipelineStateWithReflectionCompletionHandler

MTLDevice default = MTLGPUAddress, MTLLibrary, MTLResource, bitflags

Enables NSArray, NSBundle, NSError, NSObject, NSString and NSURL of objc2-foundation

Affects MTLIOCompressor::MTLIOCreateCompressionContext

bitflags default MTL4BinaryFunctionDescriptor MTL4CommandEncoder MTL4PipelineDataSetSerializer MTL4PipelineState MTL4RenderCommandEncoder MTLAccelerationStructure MTLBlitCommandEncoder MTLCommandBuffer MTLCommandEncoder MTLDevice MTLFunctionDescriptor MTLFunctionStitching MTLIndirectCommandBuffer MTLIntersectionFunctionTable MTLRenderCommandEncoder MTLRenderPass MTLRenderPipeline MTLResource MTLTensor MTLTexture

Enables bitflags

block2 default

Enables block2

Affects MTL4CommitFeedback::MTL4CommitFeedbackHandler, MTLCommandBuffer::MTLCommandBufferHandler, MTLDevice::MTLDeviceNotificationHandler, MTLDevice::MTLCopyAllDevicesWithObserver, MTLDrawable::MTLDrawablePresentedHandler, MTLEvent::MTLSharedEventNotificationBlock, MTLIOCommandBuffer::MTLIOCommandBufferHandler, MTLLibrary::MTLNewLibraryCompletionHandler, MTL4Compiler::MTL4NewBinaryFunctionCompletionHandler, MTLLibrary::MTLNewDynamicLibraryCompletionHandler, MTL4Compiler::MTL4NewMachineLearningPipelineStateCompletionHandler, MTLLibrary::MTLNewRenderPipelineStateCompletionHandler, MTLLibrary::MTLNewRenderPipelineStateWithReflectionCompletionHandler, MTLLibrary::MTLNewComputePipelineStateCompletionHandler, MTLLibrary::MTLNewComputePipelineStateWithReflectionCompletionHandler

dispatch2 default

Enables dispatch2

objc2-core-foundation default

Enables objc2-core-foundation

objc2-io-surface

Enables objc2-io-surface

unstable-darwin-objc
MTL4AccelerationStructure default

Enables NSArray, NSObject and NSString of objc2-foundation

MTL4Archive default

Enables NSError and NSString of objc2-foundation

MTL4ArgumentTable default

Enables NSObject and NSString of objc2-foundation

MTL4BinaryFunction default

Enables NSString of objc2-foundation

Affects MTL4Compiler::MTL4NewBinaryFunctionCompletionHandler

MTL4BinaryFunctionDescriptor default = bitflags

Enables NSObject and NSString of objc2-foundation

MTL4BufferRange default
MTL4CommandAllocator default

Enables NSObject and NSString of objc2-foundation

MTL4CommandBuffer default

Enables NSObject, NSRange and NSString of objc2-foundation

MTL4CommandEncoder default = bitflags

Enables NSString of objc2-foundation

MTL4CommandQueue default

Enables NSError, NSObject, NSRange and NSString of objc2-foundation

MTL4CommitFeedback default

Enables NSError of objc2-foundation

MTL4Compiler default

Enables NSArray, NSError, NSObject, NSString and NSURL of objc2-foundation

MTL4CompilerTask default
MTL4ComputeCommandEncoder default

Enables NSRange of objc2-foundation

MTL4ComputePipeline default

Enables NSObject of objc2-foundation

MTL4Counters default

Enables NSData, NSObject, NSRange and NSString of objc2-foundation

MTL4FunctionDescriptor default

Enables NSObject of objc2-foundation

MTL4LibraryDescriptor MTL4LibraryFunctionDescriptor default

Enables NSObject and NSString of objc2-foundation

MTL4LinkingDescriptor default

Enables NSArray, NSDictionary, NSObject and NSString of objc2-foundation

MTL4MachineLearningCommandEncoder default
MTL4MachineLearningPipeline default

Enables NSArray, NSObject, NSRange and NSString of objc2-foundation

Affects MTL4Compiler::MTL4NewMachineLearningPipelineStateCompletionHandler

MTL4MeshRenderPipeline default

Enables NSObject of objc2-foundation

MTL4PipelineDataSetSerializer default = bitflags

Enables NSData, NSError, NSObject and NSURL of objc2-foundation

MTL4PipelineState default = bitflags

Enables NSObject and NSString of objc2-foundation

MTL4RenderCommandEncoder default = bitflags

Enables NSRange of objc2-foundation

MTL4RenderPass default

Enables NSObject of objc2-foundation

MTL4RenderPipeline default

Enables NSArray and NSObject of objc2-foundation

MTL4SpecializedFunctionDescriptor default

Enables NSObject and NSString of objc2-foundation

MTL4StitchedFunctionDescriptor default

Enables NSArray and NSObject of objc2-foundation

MTL4TileRenderPipeline default

Enables NSObject of objc2-foundation

MTLAccelerationStructure default MTLAccelerationStructureCommandEncoder = bitflags

Enables NSArray, NSObject and NSString of objc2-foundation

MTLAccelerationStructureTypes default

Affects MTLAccelerationStructure::MTLAccelerationStructureInstanceDescriptor, MTLAccelerationStructure::MTLAccelerationStructureUserIDInstanceDescriptor, MTLAccelerationStructure::MTLIndirectAccelerationStructureInstanceDescriptor

MTLAllocation default MTLComputePipeline MTLRenderPipeline

Affects MTL4Compiler::MTL4NewMachineLearningPipelineStateCompletionHandler, MTLLibrary::MTLNewRenderPipelineStateCompletionHandler, MTLLibrary::MTLNewRenderPipelineStateWithReflectionCompletionHandler, MTLLibrary::MTLNewComputePipelineStateCompletionHandler, MTLLibrary::MTLNewComputePipelineStateWithReflectionCompletionHandler

MTLArgumentEncoder default

Enables NSRange and NSString of objc2-foundation

MTLBinaryArchive default

Enables NSError, NSObject, NSString and NSURL of objc2-foundation

MTLBlitCommandEncoder default = bitflags

Enables NSRange of objc2-foundation

MTLBlitPass default

Enables NSObject of objc2-foundation

MTLBuffer default

Enables NSError, NSRange and NSString of objc2-foundation

MTLCaptureManager default

Enables NSError, NSObject, NSString and NSURL of objc2-foundation

MTLCaptureScope default

Enables NSString of objc2-foundation

MTLCommandBuffer default = bitflags

Enables NSArray, NSEnumerator, NSError, NSObject and NSString of objc2-foundation

MTLCommandEncoder default = bitflags

Enables NSString of objc2-foundation

Affects slice::MTLRenderCommandEncoderSliceExt

MTLCommandQueue default

Enables NSObject and NSString of objc2-foundation

MTLComputeCommandEncoder default

Enables NSRange of objc2-foundation

MTLComputePass default

Enables NSObject of objc2-foundation

MTLCounters default

Enables NSArray, NSData, NSError, NSObject, NSRange and NSString of objc2-foundation

MTLDataType default MTLArgument
MTLDefines default
MTLDepthStencil default

Enables NSObject and NSString of objc2-foundation

MTLDeviceCertification default

Enables NSNotification, NSProcessInfo and NSString of objc2-foundation

MTLDrawable default
MTLDynamicLibrary default

Enables NSError, NSString and NSURL of objc2-foundation

Affects MTLLibrary::MTLNewDynamicLibraryCompletionHandler

MTLEvent default

Enables NSObject and NSString of objc2-foundation

MTLFence default

Enables NSString of objc2-foundation

MTLFunctionConstantValues default

Enables NSObject, NSRange and NSString of objc2-foundation

MTLFunctionDescriptor default = bitflags

Enables NSArray, NSObject and NSString of objc2-foundation

MTLFunctionHandle default

Enables NSString of objc2-foundation

MTLFunctionLog default

Enables NSEnumerator, NSString and NSURL of objc2-foundation

MTLFunctionStitching default = bitflags

Enables NSArray, NSObject and NSString of objc2-foundation

MTLGPUAddress default MTLDevice

Affects MTL4BufferRange::MTL4BufferRange

MTLHeap default

Enables NSObject and NSString of objc2-foundation

MTLIOCommandBuffer default

Enables NSError and NSString of objc2-foundation

MTLIOCommandQueue default

Enables NSError, NSObject and NSString of objc2-foundation

MTLIOCompressor default
MTLIndirectCommandBuffer default = bitflags

Enables NSObject and NSRange of objc2-foundation

MTLIndirectCommandEncoder default
MTLIntersectionFunctionTable default = bitflags

Enables NSObject and NSRange of objc2-foundation

MTLLibrary default MTLDevice

Enables NSArray, NSDictionary, NSError, NSObject and NSString of objc2-foundation

MTLLinkedFunctions default

Enables NSArray, NSDictionary, NSObject and NSString of objc2-foundation

MTLLogState default

Enables NSError, NSObject and NSString of objc2-foundation

MTLParallelRenderCommandEncoder default
MTLPipeline default

Enables NSObject of objc2-foundation

MTLPixelFormat default
MTLRasterizationRate default

Enables NSObject, NSString and NSValue of objc2-foundation

MTLRenderCommandEncoder default = bitflags

Enables NSRange of objc2-foundation

Affects slice::MTLRenderCommandEncoderSliceExt

MTLRenderPass default = bitflags

Enables NSObject of objc2-foundation

MTLResidencySet default

Enables NSArray, NSObject and NSString of objc2-foundation

MTLResource default MTLDevice = bitflags

Enables NSString of objc2-foundation

MTLResourceStateCommandEncoder default

Affects MTL4CommandQueue::MTL4UpdateSparseBufferMappingOperation, MTL4CommandQueue::MTL4UpdateSparseTextureMappingOperation

MTLResourceStatePass default

Enables NSObject of objc2-foundation

MTLResourceViewPool default

Enables NSObject, NSRange and NSString of objc2-foundation

MTLSampler default

Enables NSObject and NSString of objc2-foundation

MTLTensor default = bitflags

Enables NSError, NSObject and NSString of objc2-foundation

MTLTexture default = bitflags

Enables NSObject, NSRange and NSString of objc2-foundation

MTLTextureViewPool default
MTLTypes default

Affects MTL4CommandQueue::MTL4CopySparseTextureMappingOperation, MTLAccelerationStructure::MTLIndirectAccelerationStructureMotionInstanceDescriptor, MTL4CommandQueue::MTL4UpdateSparseTextureMappingOperation, MTLAccelerationStructure::MTLIndirectAccelerationStructureInstanceDescriptor

MTLVertexDescriptor default

Enables NSObject of objc2-foundation

MTLVisibleFunctionTable default

Enables NSObject and NSRange of objc2-foundation

unstable-private

Enables NSError and NSString of objc2-foundation