Expand description
Raw bindings to the C API of SPIRV-Cross.
Incorrect use of _init functions can cause undefined behaviour.
Always go through MaybeUninit for anything that sets an enum,
then check for i32::MAX.
spvc_rs functions are unstable and are meant for consumption by spirv-cross2
only.
Structs§
- Buffer
Range - Constant
Id - Hlsl
Binding Flag Bits - Hlsl
Binding Flags - Hlsl
Resource Binding - Hlsl
Resource Binding Mapping - Hlsl
Root Constants - Hlsl
Vertex Attribute Remap - MslConstexpr
Sampler - MslResource
Binding - MslResource
Binding2 - MslSampler
Ycbcr Conversion - MslShader
Interface Var - MslShader
Interface Var2 - MslVertex
Attribute - SpvBuilt
In - SpvCapability
- SpvDecoration
- SpvDim
- SpvExecution
Mode - SpvExecution
Model - SpvFP
Rounding Mode - SpvId
- SpvImage
Format - SpvStorage
Class - TypeId
- Variable
Id - spvc_
combined_ image_ sampler - spvc_
compiler_ option - spvc_
compiler_ options_ s - spvc_
compiler_ s - spvc_
constant_ s - spvc_
context_ s - spvc_
entry_ point - spvc_
parsed_ ir_ s - spvc_
reflected_ builtin_ resource - spvc_
reflected_ resource - spvc_
resources_ s - spvc_
set_ s - spvc_
specialization_ constant - spvc_
type_ s
Enums§
- Base
Type - Builtin
Resource Type - Compiler
Backend - MslChroma
Location - MslComponent
Swizzle - MslFormat
Resolution - MslIndex
Type - MslPlatform
- MslSampler
Address - MslSampler
Border Color - MslSampler
Compare Func - MslSampler
Coord - MslSampler
Filter - MslSampler
MipFilter - MslSampler
Ycbcr Model Conversion - MslSampler
Ycbcr Range - MslShader
Input Format - MslShader
Variable Format - MslShader
Variable Rate - MslVertex
Format - Resource
Type - spvc_
capture_ mode - spvc_
result
Constants§
- SpvAccess
Qualifier_ Max - SpvAccess
Qualifier_ Read Only - SpvAccess
Qualifier_ Read Write - SpvAccess
Qualifier_ Write Only
Traits§
- From
Primitive - A generic trait for converting a number to a value.
- Pod
- Marker trait for “plain old data”.
- ToPrimitive
- A generic trait for converting a value to a number.
- Zeroable
- Trait for types that can be safely created with
zeroed.
Functions§
- spvc_
compiler_ ⚠add_ header_ line - spvc_
compiler_ ⚠buffer_ get_ hlsl_ counter_ buffer - spvc_
compiler_ ⚠buffer_ is_ hlsl_ counter_ buffer - spvc_
compiler_ ⚠build_ combined_ image_ samplers - spvc_
compiler_ ⚠build_ dummy_ sampler_ for_ combined_ images - spvc_
compiler_ ⚠compile - spvc_
compiler_ ⚠create_ compiler_ options - spvc_
compiler_ ⚠create_ shader_ resources - spvc_
compiler_ ⚠create_ shader_ resources_ for_ active_ variables - spvc_
compiler_ ⚠flatten_ buffer_ block - spvc_
compiler_ ⚠get_ active_ buffer_ ranges - spvc_
compiler_ ⚠get_ active_ interface_ variables - spvc_
compiler_ ⚠get_ binary_ offset_ for_ decoration - spvc_
compiler_ ⚠get_ buffer_ block_ decorations - spvc_
compiler_ ⚠get_ cleansed_ entry_ point_ name - spvc_
compiler_ ⚠get_ combined_ image_ samplers - spvc_
compiler_ ⚠get_ constant_ handle - spvc_
compiler_ ⚠get_ current_ id_ bound - spvc_
compiler_ ⚠get_ declared_ capabilities - spvc_
compiler_ ⚠get_ declared_ extensions - spvc_
compiler_ ⚠get_ declared_ struct_ member_ size - spvc_
compiler_ ⚠get_ declared_ struct_ size - spvc_
compiler_ ⚠get_ declared_ struct_ size_ runtime_ array - spvc_
compiler_ ⚠get_ decoration - spvc_
compiler_ ⚠get_ decoration_ string - spvc_
compiler_ ⚠get_ entry_ points - spvc_
compiler_ ⚠get_ execution_ mode_ argument - spvc_
compiler_ ⚠get_ execution_ mode_ argument_ by_ index - spvc_
compiler_ ⚠get_ execution_ model - spvc_
compiler_ ⚠get_ execution_ modes - spvc_
compiler_ ⚠get_ member_ decoration - spvc_
compiler_ ⚠get_ member_ decoration_ string - spvc_
compiler_ ⚠get_ member_ name - spvc_
compiler_ ⚠get_ name - spvc_
compiler_ ⚠get_ num_ required_ extensions - spvc_
compiler_ ⚠get_ remapped_ declared_ block_ name - spvc_
compiler_ ⚠get_ required_ extension - spvc_
compiler_ ⚠get_ specialization_ constants - spvc_
compiler_ ⚠get_ type_ handle - spvc_
compiler_ ⚠get_ work_ group_ size_ specialization_ constants - spvc_
compiler_ ⚠has_ active_ builtin - spvc_
compiler_ ⚠has_ decoration - spvc_
compiler_ ⚠has_ member_ decoration - spvc_
compiler_ ⚠hlsl_ add_ resource_ binding - spvc_
compiler_ ⚠hlsl_ add_ vertex_ attribute_ remap - spvc_
compiler_ ⚠hlsl_ is_ resource_ used - spvc_
compiler_ ⚠hlsl_ remap_ num_ workgroups_ builtin - spvc_
compiler_ ⚠hlsl_ set_ resource_ binding_ flags - spvc_
compiler_ ⚠hlsl_ set_ root_ constants_ layout - spvc_
compiler_ ⚠install_ compiler_ options - spvc_
compiler_ ⚠mask_ stage_ output_ by_ builtin - spvc_
compiler_ ⚠mask_ stage_ output_ by_ location - spvc_
compiler_ ⚠msl_ add_ discrete_ descriptor_ set - spvc_
compiler_ ⚠msl_ add_ dynamic_ buffer - spvc_
compiler_ ⚠msl_ add_ inline_ uniform_ block - spvc_
compiler_ ⚠msl_ add_ resource_ binding - spvc_
compiler_ ⚠msl_ add_ resource_ binding_ 2 - spvc_
compiler_ ⚠msl_ add_ shader_ input - spvc_
compiler_ ⚠msl_ add_ shader_ input_ 2 - spvc_
compiler_ ⚠msl_ add_ shader_ output - spvc_
compiler_ ⚠msl_ add_ shader_ output_ 2 - spvc_
compiler_ ⚠msl_ add_ vertex_ attribute - spvc_
compiler_ ⚠msl_ get_ automatic_ resource_ binding - spvc_
compiler_ ⚠msl_ get_ automatic_ resource_ binding_ secondary - spvc_
compiler_ ⚠msl_ get_ combined_ sampler_ suffix - spvc_
compiler_ ⚠msl_ is_ rasterization_ disabled - spvc_
compiler_ ⚠msl_ is_ resource_ used - spvc_
compiler_ ⚠msl_ is_ shader_ input_ used - spvc_
compiler_ ⚠msl_ is_ shader_ output_ used - spvc_
compiler_ ⚠msl_ is_ vertex_ attribute_ used - spvc_
compiler_ ⚠msl_ needs_ aux_ buffer - spvc_
compiler_ ⚠msl_ needs_ buffer_ size_ buffer - spvc_
compiler_ ⚠msl_ needs_ input_ threadgroup_ mem - spvc_
compiler_ ⚠msl_ needs_ output_ buffer - spvc_
compiler_ ⚠msl_ needs_ patch_ output_ buffer - spvc_
compiler_ ⚠msl_ needs_ swizzle_ buffer - spvc_
compiler_ ⚠msl_ remap_ constexpr_ sampler - spvc_
compiler_ ⚠msl_ remap_ constexpr_ sampler_ by_ binding - spvc_
compiler_ ⚠msl_ remap_ constexpr_ sampler_ by_ binding_ ycbcr - spvc_
compiler_ ⚠msl_ remap_ constexpr_ sampler_ ycbcr - spvc_
compiler_ ⚠msl_ set_ argument_ buffer_ device_ address_ space - spvc_
compiler_ ⚠msl_ set_ combined_ sampler_ suffix - spvc_
compiler_ ⚠msl_ set_ fragment_ output_ components - spvc_
compiler_ ⚠options_ set_ bool - spvc_
compiler_ ⚠options_ set_ uint - spvc_
compiler_ ⚠rename_ entry_ point - spvc_
compiler_ ⚠require_ extension - spvc_
compiler_ ⚠set_ decoration - spvc_
compiler_ ⚠set_ decoration_ string - spvc_
compiler_ ⚠set_ enabled_ interface_ variables - spvc_
compiler_ ⚠set_ entry_ point - spvc_
compiler_ ⚠set_ execution_ mode - spvc_
compiler_ ⚠set_ execution_ mode_ with_ arguments - spvc_
compiler_ ⚠set_ member_ decoration - spvc_
compiler_ ⚠set_ member_ decoration_ string - spvc_
compiler_ ⚠set_ member_ name - spvc_
compiler_ ⚠set_ name - spvc_
compiler_ ⚠type_ struct_ member_ array_ stride - spvc_
compiler_ ⚠type_ struct_ member_ matrix_ stride - spvc_
compiler_ ⚠type_ struct_ member_ offset - spvc_
compiler_ ⚠unset_ decoration - spvc_
compiler_ ⚠unset_ execution_ mode - spvc_
compiler_ ⚠unset_ member_ decoration - spvc_
compiler_ ⚠update_ active_ builtins - spvc_
compiler_ ⚠variable_ is_ depth_ or_ compare - spvc_
constant_ ⚠get_ scalar_ fp16 - spvc_
constant_ ⚠get_ scalar_ fp32 - spvc_
constant_ ⚠get_ scalar_ fp64 - spvc_
constant_ ⚠get_ scalar_ i8 - spvc_
constant_ ⚠get_ scalar_ i16 - spvc_
constant_ ⚠get_ scalar_ i32 - spvc_
constant_ ⚠get_ scalar_ i64 - spvc_
constant_ ⚠get_ scalar_ u8 - spvc_
constant_ ⚠get_ scalar_ u16 - spvc_
constant_ ⚠get_ scalar_ u32 - spvc_
constant_ ⚠get_ scalar_ u64 - spvc_
constant_ ⚠get_ subconstants - spvc_
constant_ ⚠get_ type - spvc_
constant_ ⚠set_ scalar_ fp16 - spvc_
constant_ ⚠set_ scalar_ fp32 - spvc_
constant_ ⚠set_ scalar_ fp64 - spvc_
constant_ ⚠set_ scalar_ i8 - spvc_
constant_ ⚠set_ scalar_ i16 - spvc_
constant_ ⚠set_ scalar_ i32 - spvc_
constant_ ⚠set_ scalar_ i64 - spvc_
constant_ ⚠set_ scalar_ u8 - spvc_
constant_ ⚠set_ scalar_ u16 - spvc_
constant_ ⚠set_ scalar_ u32 - spvc_
constant_ ⚠set_ scalar_ u64 - spvc_
context_ ⚠create - spvc_
context_ ⚠create_ compiler - spvc_
context_ ⚠destroy - spvc_
context_ ⚠get_ last_ error_ string - spvc_
context_ ⚠parse_ spirv - spvc_
context_ ⚠release_ allocations - spvc_
context_ ⚠set_ error_ callback - spvc_
get_ ⚠commit_ revision_ and_ timestamp - spvc_
get_ ⚠version - spvc_
hlsl_ ⚠resource_ binding_ init - spvc_
msl_ ⚠constexpr_ sampler_ init - spvc_
msl_ ⚠get_ aux_ buffer_ struct_ version - spvc_
msl_ ⚠resource_ binding_ init - spvc_
msl_ ⚠resource_ binding_ init_ 2 - spvc_
msl_ ⚠sampler_ ycbcr_ conversion_ init - spvc_
msl_ ⚠shader_ input_ init - spvc_
msl_ ⚠shader_ interface_ var_ init - spvc_
msl_ ⚠shader_ interface_ var_ init_ 2 - spvc_
msl_ ⚠vertex_ attribute_ init - spvc_
resources_ ⚠get_ builtin_ resource_ list_ for_ type - spvc_
resources_ ⚠get_ resource_ list_ for_ type - spvc_
rs_ ⚠compiler_ get_ execution_ model_ indirect - spvc_
rs_ ⚠compiler_ variable_ get_ type - spvc_
rs_ ⚠constant_ get_ matrix_ colsize - spvc_
rs_ ⚠constant_ get_ vecsize - spvc_
rs_ ⚠constant_ is_ scalar - spvc_
rs_ ⚠expose_ set - spvc_
rs_ ⚠type_ is_ forward_ pointer - spvc_
rs_ ⚠type_ is_ pointer - spvc_
type_ ⚠array_ dimension_ is_ literal - spvc_
type_ ⚠get_ array_ dimension - spvc_
type_ ⚠get_ base_ type_ id - spvc_
type_ ⚠get_ basetype - spvc_
type_ ⚠get_ bit_ width - spvc_
type_ ⚠get_ columns - spvc_
type_ ⚠get_ image_ access_ qualifier - spvc_
type_ ⚠get_ image_ arrayed - spvc_
type_ ⚠get_ image_ dimension - spvc_
type_ ⚠get_ image_ is_ depth - spvc_
type_ ⚠get_ image_ is_ storage - spvc_
type_ ⚠get_ image_ multisampled - spvc_
type_ ⚠get_ image_ sampled_ type - spvc_
type_ ⚠get_ image_ storage_ format - spvc_
type_ ⚠get_ member_ type - spvc_
type_ ⚠get_ num_ array_ dimensions - spvc_
type_ ⚠get_ num_ member_ types - spvc_
type_ ⚠get_ storage_ class - spvc_
type_ ⚠get_ vector_ size