// This file has been automatically generated by `objc2`'s `header-translator`.
// DO NOT EDIT

#![allow(unused_imports)]
#![allow(deprecated)]
#![allow(non_snake_case)]
#![allow(non_camel_case_types)]
#![allow(non_upper_case_globals)]
#![allow(missing_docs)]
#![allow(clippy::too_many_arguments)]
#![allow(clippy::type_complexity)]
#![allow(clippy::upper_case_acronyms)]
#![allow(clippy::identity_op)]
#![allow(clippy::missing_safety_doc)]

#[link(name = "Metal", kind = "framework")]
extern "C" {}

#[cfg(feature = "MTLAccelerationStructure")]
#[path = "MTLAccelerationStructure.rs"]
mod __MTLAccelerationStructure;
#[cfg(feature = "MTLAccelerationStructureCommandEncoder")]
#[path = "MTLAccelerationStructureCommandEncoder.rs"]
mod __MTLAccelerationStructureCommandEncoder;
#[cfg(feature = "MTLAccelerationStructureTypes")]
#[path = "MTLAccelerationStructureTypes.rs"]
mod __MTLAccelerationStructureTypes;
#[cfg(feature = "MTLArgument")]
#[path = "MTLArgument.rs"]
mod __MTLArgument;
#[cfg(feature = "MTLArgumentEncoder")]
#[path = "MTLArgumentEncoder.rs"]
mod __MTLArgumentEncoder;
#[cfg(feature = "MTLBinaryArchive")]
#[path = "MTLBinaryArchive.rs"]
mod __MTLBinaryArchive;
#[cfg(feature = "MTLBlitCommandEncoder")]
#[path = "MTLBlitCommandEncoder.rs"]
mod __MTLBlitCommandEncoder;
#[cfg(feature = "MTLBlitPass")]
#[path = "MTLBlitPass.rs"]
mod __MTLBlitPass;
#[cfg(feature = "MTLBuffer")]
#[path = "MTLBuffer.rs"]
mod __MTLBuffer;
#[cfg(feature = "MTLCaptureManager")]
#[path = "MTLCaptureManager.rs"]
mod __MTLCaptureManager;
#[cfg(feature = "MTLCaptureScope")]
#[path = "MTLCaptureScope.rs"]
mod __MTLCaptureScope;
#[cfg(feature = "MTLCommandBuffer")]
#[path = "MTLCommandBuffer.rs"]
mod __MTLCommandBuffer;
#[cfg(feature = "MTLCommandEncoder")]
#[path = "MTLCommandEncoder.rs"]
mod __MTLCommandEncoder;
#[cfg(feature = "MTLCommandQueue")]
#[path = "MTLCommandQueue.rs"]
mod __MTLCommandQueue;
#[cfg(feature = "MTLComputeCommandEncoder")]
#[path = "MTLComputeCommandEncoder.rs"]
mod __MTLComputeCommandEncoder;
#[cfg(feature = "MTLComputePass")]
#[path = "MTLComputePass.rs"]
mod __MTLComputePass;
#[cfg(feature = "MTLComputePipeline")]
#[path = "MTLComputePipeline.rs"]
mod __MTLComputePipeline;
#[cfg(feature = "MTLCounters")]
#[path = "MTLCounters.rs"]
mod __MTLCounters;
#[cfg(feature = "MTLDefines")]
#[path = "MTLDefines.rs"]
mod __MTLDefines;
#[cfg(feature = "MTLDepthStencil")]
#[path = "MTLDepthStencil.rs"]
mod __MTLDepthStencil;
#[cfg(feature = "MTLDevice")]
#[path = "MTLDevice.rs"]
mod __MTLDevice;
#[cfg(feature = "MTLDrawable")]
#[path = "MTLDrawable.rs"]
mod __MTLDrawable;
#[cfg(feature = "MTLDynamicLibrary")]
#[path = "MTLDynamicLibrary.rs"]
mod __MTLDynamicLibrary;
#[cfg(feature = "MTLEvent")]
#[path = "MTLEvent.rs"]
mod __MTLEvent;
#[cfg(feature = "MTLFence")]
#[path = "MTLFence.rs"]
mod __MTLFence;
#[cfg(feature = "MTLFunctionConstantValues")]
#[path = "MTLFunctionConstantValues.rs"]
mod __MTLFunctionConstantValues;
#[cfg(feature = "MTLFunctionDescriptor")]
#[path = "MTLFunctionDescriptor.rs"]
mod __MTLFunctionDescriptor;
#[cfg(feature = "MTLFunctionHandle")]
#[path = "MTLFunctionHandle.rs"]
mod __MTLFunctionHandle;
#[cfg(feature = "MTLFunctionLog")]
#[path = "MTLFunctionLog.rs"]
mod __MTLFunctionLog;
#[cfg(feature = "MTLFunctionStitching")]
#[path = "MTLFunctionStitching.rs"]
mod __MTLFunctionStitching;
#[cfg(feature = "MTLHeap")]
#[path = "MTLHeap.rs"]
mod __MTLHeap;
#[cfg(feature = "MTLIOCommandBuffer")]
#[path = "MTLIOCommandBuffer.rs"]
mod __MTLIOCommandBuffer;
#[cfg(feature = "MTLIOCommandQueue")]
#[path = "MTLIOCommandQueue.rs"]
mod __MTLIOCommandQueue;
#[cfg(feature = "MTLIOCompressor")]
#[path = "MTLIOCompressor.rs"]
mod __MTLIOCompressor;
#[cfg(feature = "MTLIndirectCommandBuffer")]
#[path = "MTLIndirectCommandBuffer.rs"]
mod __MTLIndirectCommandBuffer;
#[cfg(feature = "MTLIndirectCommandEncoder")]
#[path = "MTLIndirectCommandEncoder.rs"]
mod __MTLIndirectCommandEncoder;
#[cfg(feature = "MTLIntersectionFunctionTable")]
#[path = "MTLIntersectionFunctionTable.rs"]
mod __MTLIntersectionFunctionTable;
#[cfg(feature = "MTLLibrary")]
#[path = "MTLLibrary.rs"]
mod __MTLLibrary;
#[cfg(feature = "MTLLinkedFunctions")]
#[path = "MTLLinkedFunctions.rs"]
mod __MTLLinkedFunctions;
#[cfg(feature = "MTLParallelRenderCommandEncoder")]
#[path = "MTLParallelRenderCommandEncoder.rs"]
mod __MTLParallelRenderCommandEncoder;
#[cfg(feature = "MTLPipeline")]
#[path = "MTLPipeline.rs"]
mod __MTLPipeline;
#[cfg(feature = "MTLPixelFormat")]
#[path = "MTLPixelFormat.rs"]
mod __MTLPixelFormat;
#[cfg(feature = "MTLRasterizationRate")]
#[path = "MTLRasterizationRate.rs"]
mod __MTLRasterizationRate;
#[cfg(feature = "MTLRenderCommandEncoder")]
#[path = "MTLRenderCommandEncoder.rs"]
mod __MTLRenderCommandEncoder;
#[cfg(feature = "MTLRenderPass")]
#[path = "MTLRenderPass.rs"]
mod __MTLRenderPass;
#[cfg(feature = "MTLRenderPipeline")]
#[path = "MTLRenderPipeline.rs"]
mod __MTLRenderPipeline;
#[cfg(feature = "MTLResource")]
#[path = "MTLResource.rs"]
mod __MTLResource;
#[cfg(feature = "MTLResourceStateCommandEncoder")]
#[path = "MTLResourceStateCommandEncoder.rs"]
mod __MTLResourceStateCommandEncoder;
#[cfg(feature = "MTLResourceStatePass")]
#[path = "MTLResourceStatePass.rs"]
mod __MTLResourceStatePass;
#[cfg(feature = "MTLSampler")]
#[path = "MTLSampler.rs"]
mod __MTLSampler;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
#[path = "MTLStageInputOutputDescriptor.rs"]
mod __MTLStageInputOutputDescriptor;
#[cfg(feature = "MTLTexture")]
#[path = "MTLTexture.rs"]
mod __MTLTexture;
#[cfg(feature = "MTLTypes")]
#[path = "MTLTypes.rs"]
mod __MTLTypes;
#[cfg(feature = "MTLVertexDescriptor")]
#[path = "MTLVertexDescriptor.rs"]
mod __MTLVertexDescriptor;
#[cfg(feature = "MTLVisibleFunctionTable")]
#[path = "MTLVisibleFunctionTable.rs"]
mod __MTLVisibleFunctionTable;

#[cfg(all(feature = "MTLAccelerationStructure", feature = "MTLResource"))]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructure;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureBoundingBoxGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureCurveGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureGeometryDescriptor;
#[cfg(all(
    feature = "MTLAccelerationStructure",
    feature = "MTLAccelerationStructureTypes"
))]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureInstanceDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureInstanceDescriptorType;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureInstanceOptions;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureMotionCurveGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureMotionInstanceDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureMotionTriangleGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureTriangleGeometryDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureUsage;
#[cfg(all(
    feature = "MTLAccelerationStructure",
    feature = "MTLAccelerationStructureTypes"
))]
pub use self::__MTLAccelerationStructure::MTLAccelerationStructureUserIDInstanceDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLCurveBasis;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLCurveEndCaps;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLCurveType;
#[cfg(all(
    feature = "MTLAccelerationStructure",
    feature = "MTLAccelerationStructureTypes",
    feature = "MTLTypes"
))]
pub use self::__MTLAccelerationStructure::MTLIndirectAccelerationStructureInstanceDescriptor;
#[cfg(all(feature = "MTLAccelerationStructure", feature = "MTLTypes"))]
pub use self::__MTLAccelerationStructure::MTLIndirectAccelerationStructureMotionInstanceDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLIndirectInstanceAccelerationStructureDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLInstanceAccelerationStructureDescriptor;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLMotionBorderMode;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLMotionKeyframeData;
#[cfg(feature = "MTLAccelerationStructure")]
pub use self::__MTLAccelerationStructure::MTLPrimitiveAccelerationStructureDescriptor;
#[cfg(all(
    feature = "MTLAccelerationStructureCommandEncoder",
    feature = "MTLCommandEncoder"
))]
pub use self::__MTLAccelerationStructureCommandEncoder::MTLAccelerationStructureCommandEncoder;
#[cfg(feature = "MTLAccelerationStructureCommandEncoder")]
pub use self::__MTLAccelerationStructureCommandEncoder::MTLAccelerationStructurePassDescriptor;
#[cfg(feature = "MTLAccelerationStructureCommandEncoder")]
pub use self::__MTLAccelerationStructureCommandEncoder::MTLAccelerationStructurePassSampleBufferAttachmentDescriptor;
#[cfg(feature = "MTLAccelerationStructureCommandEncoder")]
pub use self::__MTLAccelerationStructureCommandEncoder::MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray;
#[cfg(feature = "MTLAccelerationStructureCommandEncoder")]
pub use self::__MTLAccelerationStructureCommandEncoder::MTLAccelerationStructureRefitOptions;
#[cfg(feature = "MTLAccelerationStructureTypes")]
pub use self::__MTLAccelerationStructureTypes::MTLAxisAlignedBoundingBox;
#[cfg(feature = "MTLAccelerationStructureTypes")]
pub use self::__MTLAccelerationStructureTypes::MTLPackedFloat4x3;
#[cfg(feature = "MTLAccelerationStructureTypes")]
pub(crate) use self::__MTLAccelerationStructureTypes::_MTLAxisAlignedBoundingBox;
#[cfg(feature = "MTLAccelerationStructureTypes")]
pub(crate) use self::__MTLAccelerationStructureTypes::_MTLPackedFloat4x3;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLArgument;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLArgumentAccess;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLArgumentType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLArrayType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLBinding;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLBindingAccess;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLBindingType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLBufferBinding;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLDataType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLObjectPayloadBinding;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLPointerType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLStructMember;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLStructType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLTextureBinding;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLTextureReferenceType;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLThreadgroupBinding;
#[cfg(feature = "MTLArgument")]
pub use self::__MTLArgument::MTLType;
#[cfg(feature = "MTLArgumentEncoder")]
pub use self::__MTLArgumentEncoder::MTLArgumentEncoder;
#[cfg(feature = "MTLArgumentEncoder")]
pub use self::__MTLArgumentEncoder::MTLAttributeStrideStatic;
#[cfg(feature = "MTLBinaryArchive")]
pub use self::__MTLBinaryArchive::MTLBinaryArchive;
#[cfg(feature = "MTLBinaryArchive")]
pub use self::__MTLBinaryArchive::MTLBinaryArchiveDescriptor;
#[cfg(feature = "MTLBinaryArchive")]
pub use self::__MTLBinaryArchive::MTLBinaryArchiveDomain;
#[cfg(feature = "MTLBinaryArchive")]
pub use self::__MTLBinaryArchive::MTLBinaryArchiveError;
#[cfg(all(feature = "MTLBlitCommandEncoder", feature = "MTLCommandEncoder"))]
pub use self::__MTLBlitCommandEncoder::MTLBlitCommandEncoder;
#[cfg(feature = "MTLBlitCommandEncoder")]
pub use self::__MTLBlitCommandEncoder::MTLBlitOption;
#[cfg(feature = "MTLBlitPass")]
pub use self::__MTLBlitPass::MTLBlitPassDescriptor;
#[cfg(feature = "MTLBlitPass")]
pub use self::__MTLBlitPass::MTLBlitPassSampleBufferAttachmentDescriptor;
#[cfg(feature = "MTLBlitPass")]
pub use self::__MTLBlitPass::MTLBlitPassSampleBufferAttachmentDescriptorArray;
#[cfg(all(feature = "MTLBuffer", feature = "MTLResource"))]
pub use self::__MTLBuffer::MTLBuffer;
#[cfg(feature = "MTLCaptureManager")]
pub use self::__MTLCaptureManager::MTLCaptureDescriptor;
#[cfg(feature = "MTLCaptureManager")]
pub use self::__MTLCaptureManager::MTLCaptureDestination;
#[cfg(feature = "MTLCaptureManager")]
pub use self::__MTLCaptureManager::MTLCaptureError;
#[cfg(feature = "MTLCaptureManager")]
pub use self::__MTLCaptureManager::MTLCaptureErrorDomain;
#[cfg(feature = "MTLCaptureManager")]
pub use self::__MTLCaptureManager::MTLCaptureManager;
#[cfg(feature = "MTLCaptureScope")]
pub use self::__MTLCaptureScope::MTLCaptureScope;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBuffer;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferDescriptor;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferEncoderInfo;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferEncoderInfoErrorKey;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferError;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferErrorDomain;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferErrorOption;
#[cfg(all(feature = "MTLCommandBuffer", feature = "block2"))]
pub use self::__MTLCommandBuffer::MTLCommandBufferHandler;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandBufferStatus;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLCommandEncoderErrorState;
#[cfg(feature = "MTLCommandBuffer")]
pub use self::__MTLCommandBuffer::MTLDispatchType;
#[cfg(feature = "MTLCommandEncoder")]
pub use self::__MTLCommandEncoder::MTLBarrierScope;
#[cfg(feature = "MTLCommandEncoder")]
pub use self::__MTLCommandEncoder::MTLCommandEncoder;
#[cfg(feature = "MTLCommandEncoder")]
pub use self::__MTLCommandEncoder::MTLResourceUsage;
#[cfg(feature = "MTLCommandQueue")]
pub use self::__MTLCommandQueue::MTLCommandQueue;
#[cfg(all(feature = "MTLCommandEncoder", feature = "MTLComputeCommandEncoder"))]
pub use self::__MTLComputeCommandEncoder::MTLComputeCommandEncoder;
#[cfg(feature = "MTLComputeCommandEncoder")]
pub use self::__MTLComputeCommandEncoder::MTLDispatchThreadgroupsIndirectArguments;
#[cfg(feature = "MTLComputeCommandEncoder")]
pub use self::__MTLComputeCommandEncoder::MTLStageInRegionIndirectArguments;
#[cfg(feature = "MTLComputePass")]
pub use self::__MTLComputePass::MTLComputePassDescriptor;
#[cfg(feature = "MTLComputePass")]
pub use self::__MTLComputePass::MTLComputePassSampleBufferAttachmentDescriptor;
#[cfg(feature = "MTLComputePass")]
pub use self::__MTLComputePass::MTLComputePassSampleBufferAttachmentDescriptorArray;
#[cfg(feature = "MTLComputePipeline")]
pub use self::__MTLComputePipeline::MTLComputePipelineDescriptor;
#[cfg(feature = "MTLComputePipeline")]
pub use self::__MTLComputePipeline::MTLComputePipelineReflection;
#[cfg(feature = "MTLComputePipeline")]
pub use self::__MTLComputePipeline::MTLComputePipelineState;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounter;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterClipperInvocations;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterClipperPrimitivesOut;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterComputeKernelInvocations;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterFragmentCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterFragmentInvocations;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterFragmentsPassed;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterPostTessellationVertexCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterPostTessellationVertexInvocations;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterRenderTargetWriteCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterSet;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterSetStageUtilization;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterSetStatistic;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterSetTimestamp;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterTessellationCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterTessellationInputPatches;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterTimestamp;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterTotalCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterVertexCycles;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCommonCounterVertexInvocations;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounter;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterErrorDomain;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterResultStageUtilization;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterResultStatistic;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterResultTimestamp;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterSampleBuffer;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterSampleBufferDescriptor;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterSampleBufferError;
#[cfg(feature = "MTLCounters")]
pub use self::__MTLCounters::MTLCounterSet;
#[cfg(feature = "MTLDepthStencil")]
pub use self::__MTLDepthStencil::MTLCompareFunction;
#[cfg(feature = "MTLDepthStencil")]
pub use self::__MTLDepthStencil::MTLDepthStencilDescriptor;
#[cfg(feature = "MTLDepthStencil")]
pub use self::__MTLDepthStencil::MTLDepthStencilState;
#[cfg(feature = "MTLDepthStencil")]
pub use self::__MTLDepthStencil::MTLStencilDescriptor;
#[cfg(feature = "MTLDepthStencil")]
pub use self::__MTLDepthStencil::MTLStencilOperation;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLAccelerationStructureSizes;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLArchitecture;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLArgumentBuffersTier;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLArgumentDescriptor;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLCopyAllDevices;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLCounterSamplingPoint;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLCreateSystemDefaultDevice;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDevice;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDeviceLocation;
#[cfg(all(feature = "MTLDevice", feature = "block2"))]
pub use self::__MTLDevice::MTLDeviceNotificationHandler;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDeviceNotificationName;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDeviceRemovalRequestedNotification;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDeviceWasAddedNotification;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLDeviceWasRemovedNotification;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLFeatureSet;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLGPUFamily;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLIOCompressionMethod;
#[cfg(all(
    feature = "MTLComputePipeline",
    feature = "MTLDevice",
    feature = "block2"
))]
pub use self::__MTLDevice::MTLNewComputePipelineStateCompletionHandler;
#[cfg(all(
    feature = "MTLComputePipeline",
    feature = "MTLDevice",
    feature = "block2"
))]
pub use self::__MTLDevice::MTLNewComputePipelineStateWithReflectionCompletionHandler;
#[cfg(all(feature = "MTLDevice", feature = "MTLLibrary", feature = "block2"))]
pub use self::__MTLDevice::MTLNewLibraryCompletionHandler;
#[cfg(all(
    feature = "MTLDevice",
    feature = "MTLRenderPipeline",
    feature = "block2"
))]
pub use self::__MTLDevice::MTLNewRenderPipelineStateCompletionHandler;
#[cfg(all(
    feature = "MTLDevice",
    feature = "MTLRenderPipeline",
    feature = "block2"
))]
pub use self::__MTLDevice::MTLNewRenderPipelineStateWithReflectionCompletionHandler;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLPipelineOption;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLReadWriteTextureTier;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLRemoveDeviceObserver;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLSizeAndAlign;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLSparsePageSize;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLSparseTextureRegionAlignmentMode;
#[cfg(feature = "MTLDevice")]
pub use self::__MTLDevice::MTLTimestamp;
#[cfg(feature = "MTLDrawable")]
pub use self::__MTLDrawable::MTLDrawable;
#[cfg(all(feature = "MTLDrawable", feature = "block2"))]
pub use self::__MTLDrawable::MTLDrawablePresentedHandler;
#[cfg(feature = "MTLDynamicLibrary")]
pub use self::__MTLDynamicLibrary::MTLDynamicLibrary;
#[cfg(feature = "MTLDynamicLibrary")]
pub use self::__MTLDynamicLibrary::MTLDynamicLibraryDomain;
#[cfg(feature = "MTLDynamicLibrary")]
pub use self::__MTLDynamicLibrary::MTLDynamicLibraryError;
#[cfg(feature = "MTLEvent")]
pub use self::__MTLEvent::MTLEvent;
#[cfg(feature = "MTLEvent")]
pub use self::__MTLEvent::MTLSharedEvent;
#[cfg(feature = "MTLEvent")]
pub use self::__MTLEvent::MTLSharedEventHandle;
#[cfg(feature = "MTLEvent")]
pub use self::__MTLEvent::MTLSharedEventListener;
#[cfg(all(feature = "MTLEvent", feature = "block2"))]
pub use self::__MTLEvent::MTLSharedEventNotificationBlock;
#[cfg(feature = "MTLFence")]
pub use self::__MTLFence::MTLFence;
#[cfg(feature = "MTLFunctionConstantValues")]
pub use self::__MTLFunctionConstantValues::MTLFunctionConstantValues;
#[cfg(feature = "MTLFunctionDescriptor")]
pub use self::__MTLFunctionDescriptor::MTLFunctionDescriptor;
#[cfg(feature = "MTLFunctionDescriptor")]
pub use self::__MTLFunctionDescriptor::MTLFunctionOptions;
#[cfg(feature = "MTLFunctionDescriptor")]
pub use self::__MTLFunctionDescriptor::MTLIntersectionFunctionDescriptor;
#[cfg(feature = "MTLFunctionHandle")]
pub use self::__MTLFunctionHandle::MTLFunctionHandle;
#[cfg(feature = "MTLFunctionLog")]
pub use self::__MTLFunctionLog::MTLFunctionLog;
#[cfg(feature = "MTLFunctionLog")]
pub use self::__MTLFunctionLog::MTLFunctionLogDebugLocation;
#[cfg(feature = "MTLFunctionLog")]
pub use self::__MTLFunctionLog::MTLFunctionLogType;
#[cfg(feature = "MTLFunctionLog")]
pub use self::__MTLFunctionLog::MTLLogContainer;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingAttribute;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingAttributeAlwaysInline;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingFunctionNode;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingGraph;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingInputNode;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLFunctionStitchingNode;
#[cfg(feature = "MTLFunctionStitching")]
pub use self::__MTLFunctionStitching::MTLStitchedLibraryDescriptor;
#[cfg(feature = "MTLHeap")]
pub use self::__MTLHeap::MTLHeap;
#[cfg(feature = "MTLHeap")]
pub use self::__MTLHeap::MTLHeapDescriptor;
#[cfg(feature = "MTLHeap")]
pub use self::__MTLHeap::MTLHeapType;
#[cfg(feature = "MTLIOCommandBuffer")]
pub use self::__MTLIOCommandBuffer::MTLIOCommandBuffer;
#[cfg(all(feature = "MTLIOCommandBuffer", feature = "block2"))]
pub use self::__MTLIOCommandBuffer::MTLIOCommandBufferHandler;
#[cfg(feature = "MTLIOCommandBuffer")]
pub use self::__MTLIOCommandBuffer::MTLIOStatus;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOCommandQueue;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOCommandQueueDescriptor;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOCommandQueueType;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOError;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOErrorDomain;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOFileHandle;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOPriority;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOScratchBuffer;
#[cfg(feature = "MTLIOCommandQueue")]
pub use self::__MTLIOCommandQueue::MTLIOScratchBufferAllocator;
#[cfg(feature = "MTLIOCompressor")]
pub use self::__MTLIOCompressor::MTLIOCompressionContext;
#[cfg(feature = "MTLIOCompressor")]
pub use self::__MTLIOCompressor::MTLIOCompressionContextAppendData;
#[cfg(feature = "MTLIOCompressor")]
pub use self::__MTLIOCompressor::MTLIOCompressionContextDefaultChunkSize;
#[cfg(feature = "MTLIOCompressor")]
pub use self::__MTLIOCompressor::MTLIOCompressionStatus;
#[cfg(all(feature = "MTLDevice", feature = "MTLIOCompressor"))]
pub use self::__MTLIOCompressor::MTLIOCreateCompressionContext;
#[cfg(feature = "MTLIOCompressor")]
pub use self::__MTLIOCompressor::MTLIOFlushAndDestroyCompressionContext;
#[cfg(all(feature = "MTLIndirectCommandBuffer", feature = "MTLResource"))]
pub use self::__MTLIndirectCommandBuffer::MTLIndirectCommandBuffer;
#[cfg(feature = "MTLIndirectCommandBuffer")]
pub use self::__MTLIndirectCommandBuffer::MTLIndirectCommandBufferDescriptor;
#[cfg(feature = "MTLIndirectCommandBuffer")]
pub use self::__MTLIndirectCommandBuffer::MTLIndirectCommandBufferExecutionRange;
#[cfg(feature = "MTLIndirectCommandBuffer")]
pub use self::__MTLIndirectCommandBuffer::MTLIndirectCommandType;
#[cfg(feature = "MTLIndirectCommandEncoder")]
pub use self::__MTLIndirectCommandEncoder::MTLIndirectComputeCommand;
#[cfg(feature = "MTLIndirectCommandEncoder")]
pub use self::__MTLIndirectCommandEncoder::MTLIndirectRenderCommand;
#[cfg(feature = "MTLIntersectionFunctionTable")]
pub use self::__MTLIntersectionFunctionTable::MTLIntersectionFunctionSignature;
#[cfg(all(feature = "MTLIntersectionFunctionTable", feature = "MTLResource"))]
pub use self::__MTLIntersectionFunctionTable::MTLIntersectionFunctionTable;
#[cfg(feature = "MTLIntersectionFunctionTable")]
pub use self::__MTLIntersectionFunctionTable::MTLIntersectionFunctionTableDescriptor;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLAttribute;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLCompileOptions;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLCompileSymbolVisibility;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLFunction;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLFunctionConstant;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLFunctionType;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLanguageVersion;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLibrary;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLibraryError;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLibraryErrorDomain;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLibraryOptimizationLevel;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLLibraryType;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLPatchType;
#[cfg(feature = "MTLLibrary")]
pub use self::__MTLLibrary::MTLVertexAttribute;
#[cfg(feature = "MTLLinkedFunctions")]
pub use self::__MTLLinkedFunctions::MTLLinkedFunctions;
#[cfg(all(
    feature = "MTLCommandEncoder",
    feature = "MTLParallelRenderCommandEncoder"
))]
pub use self::__MTLParallelRenderCommandEncoder::MTLParallelRenderCommandEncoder;
#[cfg(feature = "MTLPipeline")]
pub use self::__MTLPipeline::MTLMutability;
#[cfg(feature = "MTLPipeline")]
pub use self::__MTLPipeline::MTLPipelineBufferDescriptor;
#[cfg(feature = "MTLPipeline")]
pub use self::__MTLPipeline::MTLPipelineBufferDescriptorArray;
#[cfg(feature = "MTLPixelFormat")]
pub use self::__MTLPixelFormat::MTLPixelFormat;
#[cfg(feature = "MTLRasterizationRate")]
pub use self::__MTLRasterizationRate::MTLRasterizationRateLayerArray;
#[cfg(feature = "MTLRasterizationRate")]
pub use self::__MTLRasterizationRate::MTLRasterizationRateLayerDescriptor;
#[cfg(feature = "MTLRasterizationRate")]
pub use self::__MTLRasterizationRate::MTLRasterizationRateMap;
#[cfg(feature = "MTLRasterizationRate")]
pub use self::__MTLRasterizationRate::MTLRasterizationRateMapDescriptor;
#[cfg(feature = "MTLRasterizationRate")]
pub use self::__MTLRasterizationRate::MTLRasterizationRateSampleArray;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLCullMode;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLDepthClipMode;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLDrawIndexedPrimitivesIndirectArguments;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLDrawPatchIndirectArguments;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLDrawPrimitivesIndirectArguments;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLPrimitiveType;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLQuadTessellationFactorsHalf;
#[cfg(all(feature = "MTLCommandEncoder", feature = "MTLRenderCommandEncoder"))]
pub use self::__MTLRenderCommandEncoder::MTLRenderCommandEncoder;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLRenderStages;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLScissorRect;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLTriangleFillMode;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLTriangleTessellationFactorsHalf;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLVertexAmplificationViewMapping;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLViewport;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLVisibilityResultMode;
#[cfg(feature = "MTLRenderCommandEncoder")]
pub use self::__MTLRenderCommandEncoder::MTLWinding;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLClearColor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLLoadAction;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLMultisampleDepthResolveFilter;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLMultisampleStencilResolveFilter;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassAttachmentDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassColorAttachmentDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassColorAttachmentDescriptorArray;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassDepthAttachmentDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassSampleBufferAttachmentDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassSampleBufferAttachmentDescriptorArray;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLRenderPassStencilAttachmentDescriptor;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLStoreAction;
#[cfg(feature = "MTLRenderPass")]
pub use self::__MTLRenderPass::MTLStoreActionOptions;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLBlendFactor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLBlendOperation;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLColorWriteMask;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLMeshRenderPipelineDescriptor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLPrimitiveTopologyClass;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineColorAttachmentDescriptor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineColorAttachmentDescriptorArray;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineDescriptor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineFunctionsDescriptor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineReflection;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLRenderPipelineState;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTessellationControlPointIndexType;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTessellationFactorFormat;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTessellationFactorStepFunction;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTessellationPartitionMode;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTileRenderPipelineColorAttachmentDescriptor;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTileRenderPipelineColorAttachmentDescriptorArray;
#[cfg(feature = "MTLRenderPipeline")]
pub use self::__MTLRenderPipeline::MTLTileRenderPipelineDescriptor;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLCPUCacheMode;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLHazardTrackingMode;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLPurgeableState;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLResource;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLResourceOptions;
#[cfg(feature = "MTLResource")]
pub use self::__MTLResource::MTLStorageMode;
#[cfg(feature = "MTLResourceStateCommandEncoder")]
pub use self::__MTLResourceStateCommandEncoder::MTLMapIndirectArguments;
#[cfg(all(
    feature = "MTLCommandEncoder",
    feature = "MTLResourceStateCommandEncoder"
))]
pub use self::__MTLResourceStateCommandEncoder::MTLResourceStateCommandEncoder;
#[cfg(feature = "MTLResourceStateCommandEncoder")]
pub use self::__MTLResourceStateCommandEncoder::MTLSparseTextureMappingMode;
#[cfg(feature = "MTLResourceStatePass")]
pub use self::__MTLResourceStatePass::MTLResourceStatePassDescriptor;
#[cfg(feature = "MTLResourceStatePass")]
pub use self::__MTLResourceStatePass::MTLResourceStatePassSampleBufferAttachmentDescriptor;
#[cfg(feature = "MTLResourceStatePass")]
pub use self::__MTLResourceStatePass::MTLResourceStatePassSampleBufferAttachmentDescriptorArray;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerAddressMode;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerBorderColor;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerDescriptor;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerMinMagFilter;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerMipFilter;
#[cfg(feature = "MTLSampler")]
pub use self::__MTLSampler::MTLSamplerState;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLAttributeDescriptor;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLAttributeDescriptorArray;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLAttributeFormat;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLBufferLayoutDescriptor;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLBufferLayoutDescriptorArray;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLIndexType;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLStageInputOutputDescriptor;
#[cfg(feature = "MTLStageInputOutputDescriptor")]
pub use self::__MTLStageInputOutputDescriptor::MTLStepFunction;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLSharedTextureHandle;
#[cfg(all(feature = "MTLResource", feature = "MTLTexture"))]
pub use self::__MTLTexture::MTLTexture;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureCompressionType;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureDescriptor;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureSwizzle;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureSwizzleChannels;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureType;
#[cfg(feature = "MTLTexture")]
pub use self::__MTLTexture::MTLTextureUsage;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLCoordinate2D;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLOrigin;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLRegion;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLResourceID;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLSamplePosition;
#[cfg(feature = "MTLTypes")]
pub use self::__MTLTypes::MTLSize;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLBufferLayoutStrideDynamic;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexAttributeDescriptor;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexAttributeDescriptorArray;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexBufferLayoutDescriptor;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexBufferLayoutDescriptorArray;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexDescriptor;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexFormat;
#[cfg(feature = "MTLVertexDescriptor")]
pub use self::__MTLVertexDescriptor::MTLVertexStepFunction;
#[cfg(all(feature = "MTLResource", feature = "MTLVisibleFunctionTable"))]
pub use self::__MTLVisibleFunctionTable::MTLVisibleFunctionTable;
#[cfg(feature = "MTLVisibleFunctionTable")]
pub use self::__MTLVisibleFunctionTable::MTLVisibleFunctionTableDescriptor;
