Skip to main content

rspirv/sr/
autogen_types.rs

1// AUTOMATICALLY GENERATED from the SPIR-V JSON grammar:
2//   external/spirv.core.grammar.json.
3// DO NOT MODIFY!
4
5#[allow(clippy::upper_case_acronyms)]
6#[derive(Clone, Debug)]
7pub enum Type {
8    Void,
9    Bool,
10    Int {
11        width: u32,
12        signedness: u32,
13    },
14    Float {
15        width: u32,
16        floating_point_encoding: Option<spirv::FPEncoding>,
17    },
18    Vector {
19        component_type: Token<Type>,
20        component_count: u32,
21    },
22    Matrix {
23        column_type: Token<Type>,
24        column_count: u32,
25    },
26    Image {
27        sampled_type: Token<Type>,
28        dim: spirv::Dim,
29        depth: u32,
30        arrayed: u32,
31        ms: u32,
32        sampled: u32,
33        image_format: spirv::ImageFormat,
34        access_qualifier: Option<spirv::AccessQualifier>,
35    },
36    Sampler,
37    SampledImage {
38        image_type: Token<Type>,
39    },
40    Array {
41        element_type: Token<Type>,
42        length: Token<Constant>,
43    },
44    RuntimeArray {
45        element_type: Token<Type>,
46    },
47    Struct {
48        member_0_type_member_1_type: Vec<StructMember>,
49    },
50    Opaque {
51        the_name_of_the_opaque_type: String,
52    },
53    Pointer {
54        storage_class: spirv::StorageClass,
55        ty: Token<Type>,
56    },
57    Function {
58        return_type: Token<Type>,
59        parameter_0_type_parameter_1_type: Vec<Token<Type>>,
60    },
61    Event,
62    DeviceEvent,
63    ReserveId,
64    Queue,
65    Pipe {
66        qualifier: spirv::AccessQualifier,
67    },
68    ForwardPointer {
69        pointer_type: Token<Type>,
70        storage_class: spirv::StorageClass,
71    },
72    PipeStorage,
73    NamedBarrier,
74    TensorARM {
75        element_type: Token<Type>,
76        rank: Option<spirv::Word>,
77        shape: Option<spirv::Word>,
78    },
79    GraphARM {
80        num_inputs: u32,
81        in_out_types: Vec<spirv::Word>,
82    },
83    UntypedPointerKHR {
84        storage_class: spirv::StorageClass,
85    },
86    CooperativeMatrixKHR {
87        component_type: Token<Type>,
88        scope: spirv::Word,
89        rows: spirv::Word,
90        columns: spirv::Word,
91        usage: spirv::Word,
92    },
93    RayQueryKHR,
94    NodePayloadArrayAMDX {
95        payload_type: spirv::Word,
96    },
97    BufferEXT {
98        storage_class: spirv::StorageClass,
99    },
100    HitObjectNV,
101    VectorIdEXT {
102        component_type: Token<Type>,
103        component_count: spirv::Word,
104    },
105    HitObjectEXT,
106    AccelerationStructureKHR,
107    CooperativeMatrixNV {
108        component_type: Token<Type>,
109        execution: spirv::Word,
110        rows: spirv::Word,
111        columns: spirv::Word,
112    },
113    TensorLayoutNV {
114        dim: spirv::Word,
115        clamp_mode: spirv::Word,
116    },
117    TensorViewNV {
118        dim: spirv::Word,
119        has_dimensions: spirv::Word,
120        p: Vec<spirv::Word>,
121    },
122    BufferSurfaceINTEL {
123        access_qualifier: spirv::AccessQualifier,
124    },
125    StructContinuedINTEL {
126        member_0_type_member_1_type: Vec<spirv::Word>,
127    },
128}