pub enum Type<'a> {
Show 14 variants
    Scalar(Scalar),
    Vector {
        size: VectorSize,
        ty: Handle<Type<'a>>,
        ty_span: Span,
    },
    Matrix {
        columns: VectorSize,
        rows: VectorSize,
        ty: Handle<Type<'a>>,
        ty_span: Span,
    },
    Atomic(Scalar),
    Pointer {
        base: Handle<Type<'a>>,
        space: AddressSpace,
    },
    Array {
        base: Handle<Type<'a>>,
        size: ArraySize<'a>,
    },
    Image {
        dim: ImageDimension,
        arrayed: bool,
        class: ImageClass,
    },
    Sampler {
        comparison: bool,
    },
    AccelerationStructure {
        vertex_return: bool,
    },
    RayQuery {
        vertex_return: bool,
    },
    RayDesc,
    RayIntersection,
    BindingArray {
        base: Handle<Type<'a>>,
        size: ArraySize<'a>,
    },
    User(Ident<'a>),
}Variants§
Scalar(Scalar)
Vector
Matrix
Atomic(Scalar)
Pointer
Array
Image
Sampler
AccelerationStructure
RayQuery
RayDesc
RayIntersection
BindingArray
User(Ident<'a>)
A user-defined type, like a struct or a type alias.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Type<'a>
impl<'a> RefUnwindSafe for Type<'a>
impl<'a> Send for Type<'a>
impl<'a> Sync for Type<'a>
impl<'a> Unpin for Type<'a>
impl<'a> UnwindSafe for Type<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more