metal-rust-ffi 1.0.0

Audited Objective-C interoperability boundary for metal-rust
//! Generated safe substitutions for non-callback C++ aliases.

#![allow(non_camel_case_types)]

/// Safe aliases from the `NS` namespace.
pub mod foundation {
    /// Safe substitution for `NS::ActivityOptions`.
    pub type ActivityOptions = super::super::generated_value_types::ActivityOptions;
    /// Safe substitution for `NS::DeviceCertification`.
    pub type DeviceCertification = isize;
    /// Safe substitution for `NS::ErrorDomain`.
    pub type ErrorDomain = String;
    /// Safe substitution for `NS::ErrorUserInfoKey`.
    pub type ErrorUserInfoKey = String;
    /// Safe substitution for `NS::Integer`.
    pub type Integer = isize;
    /// Safe substitution for `NS::NotificationName`.
    pub type NotificationName = String;
    /// Safe substitution for `NS::ProcessPerformanceProfile`.
    pub type ProcessPerformanceProfile = isize;
    /// Safe substitution for `NS::StringCompareOptions`.
    pub type StringCompareOptions = super::super::generated_value_types::StringCompareOptions;
    /// Safe substitution for `NS::TimeInterval`.
    pub type TimeInterval = f64;
    /// Safe substitution for `NS::UInteger`.
    pub type UInteger = usize;
    /// Safe substitution for `NS::unichar`.
    pub type unichar = u16;
}

/// Safe aliases from the `MTL` namespace.
pub mod metal {
    /// Safe substitution for `MTL::AccelerationStructureInstanceOptions`.
    pub type AccelerationStructureInstanceOptions =
        super::super::generated_value_types::AccelerationStructureInstanceOptions;
    /// Safe substitution for `MTL::AccelerationStructureRefitOptions`.
    pub type AccelerationStructureRefitOptions =
        super::super::generated_value_types::AccelerationStructureRefitOptions;
    /// Safe substitution for `MTL::AccelerationStructureUsage`.
    pub type AccelerationStructureUsage =
        super::super::generated_value_types::AccelerationStructureUsage;
    /// Safe substitution for `MTL::AutoreleasedArgument`.
    pub type AutoreleasedArgument = super::super::generated_object_types::metal::Argument;
    /// Safe substitution for `MTL::AutoreleasedComputePipelineReflection`.
    pub type AutoreleasedComputePipelineReflection =
        super::super::generated_object_types::metal::ComputePipelineReflection;
    /// Safe substitution for `MTL::AutoreleasedRenderPipelineReflection`.
    pub type AutoreleasedRenderPipelineReflection =
        super::super::generated_object_types::metal::RenderPipelineReflection;
    /// Safe substitution for `MTL::BarrierScope`.
    pub type BarrierScope = super::super::generated_value_types::BarrierScope;
    /// Safe substitution for `MTL::BlitOption`.
    pub type BlitOption = super::super::generated_value_types::BlitOption;
    /// Safe substitution for `MTL::ColorWriteMask`.
    pub type ColorWriteMask = super::super::generated_value_types::ColorWriteMask;
    /// Safe substitution for `MTL::CommandBufferErrorOption`.
    pub type CommandBufferErrorOption =
        super::super::generated_value_types::CommandBufferErrorOption;
    /// Safe substitution for `MTL::CommonCounter`.
    pub type CommonCounter = String;
    /// Safe substitution for `MTL::CommonCounterSet`.
    pub type CommonCounterSet = String;
    /// Safe substitution for `MTL::Coordinate2D`.
    pub type Coordinate2D = super::super::generated_struct_types::SamplePosition;
    /// Safe substitution for `MTL::DeviceNotificationName`.
    pub type DeviceNotificationName = String;
    /// Safe substitution for `MTL::FunctionOptions`.
    pub type FunctionOptions = super::super::generated_value_types::FunctionOptions;
    /// Safe substitution for `MTL::GPUAddress`.
    pub type GPUAddress = u64;
    /// Safe substitution for `MTL::IndirectCommandType`.
    pub type IndirectCommandType = super::super::generated_value_types::IndirectCommandType;
    /// Safe substitution for `MTL::IntersectionFunctionSignature`.
    pub type IntersectionFunctionSignature =
        super::super::generated_value_types::IntersectionFunctionSignature;
    /// Safe substitution for `MTL::PipelineOption`.
    pub type PipelineOption = super::super::generated_value_types::PipelineOption;
    /// Safe substitution for `MTL::RenderStages`.
    pub type RenderStages = super::super::generated_value_types::RenderStages;
    /// Safe substitution for `MTL::ResourceOptions`.
    pub type ResourceOptions = usize;
    /// Safe substitution for `MTL::ResourceUsage`.
    pub type ResourceUsage = super::super::generated_value_types::ResourceUsage;
    /// Safe substitution for `MTL::Stages`.
    pub type Stages = super::super::generated_value_types::Stages;
    /// Safe substitution for `MTL::StitchedLibraryOptions`.
    pub type StitchedLibraryOptions = super::super::generated_value_types::StitchedLibraryOptions;
    /// Safe substitution for `MTL::StoreActionOptions`.
    pub type StoreActionOptions = super::super::generated_value_types::StoreActionOptions;
    /// Safe substitution for `MTL::TensorUsage`.
    pub type TensorUsage = super::super::generated_value_types::TensorUsage;
    /// Safe substitution for `MTL::TextureUsage`.
    pub type TextureUsage = usize;
    /// Safe substitution for `MTL::Timestamp`.
    pub type Timestamp = u64;
}

/// Safe aliases from the `MTL4` namespace.
pub mod metal4 {
    /// Safe substitution for `MTL4::BinaryFunctionOptions`.
    pub type BinaryFunctionOptions = super::super::generated_value_types::BinaryFunctionOptions;
    /// Safe substitution for `MTL4::PipelineDataSetSerializerConfiguration`.
    pub type PipelineDataSetSerializerConfiguration =
        super::super::generated_value_types::PipelineDataSetSerializerConfiguration;
    /// Safe substitution for `MTL4::RenderEncoderOptions`.
    pub type RenderEncoderOptions = super::super::generated_value_types::RenderEncoderOptions;
    /// Safe substitution for `MTL4::ShaderReflection`.
    pub type ShaderReflection = super::super::generated_value_types::ShaderReflection;
    /// Safe substitution for `MTL4::VisibilityOptions`.
    pub type VisibilityOptions = super::super::generated_value_types::VisibilityOptions;
}