use super::ModuleState; use crate::arena::Handle; #[derive(Debug)] pub enum Error { InvalidHeader, InvalidWordCount, UnknownInstruction(u16), UnknownCapability(spirv::Word), UnsupportedInstruction(ModuleState, spirv::Op), UnsupportedCapability(spirv::Capability), UnsupportedExtension(String), UnsupportedExtSet(String), UnsupportedExtInstSet(spirv::Word), UnsupportedExtInst(spirv::Word), UnsupportedType(Handle), UnsupportedExecutionModel(spirv::Word), UnsupportedExecutionMode(spirv::Word), UnsupportedStorageClass(spirv::Word), UnsupportedImageDim(spirv::Word), UnsupportedImageFormat(spirv::Word), UnsupportedBuiltIn(spirv::Word), UnsupportedControlFlow(spirv::Word), UnsupportedBinaryOperator(spirv::Word), InvalidParameter(spirv::Op), InvalidOperandCount(spirv::Op, u16), InvalidOperand, InvalidId(spirv::Word), InvalidDecoration(spirv::Word), InvalidTypeWidth(spirv::Word), InvalidSign(spirv::Word), InvalidInnerType(spirv::Word), InvalidVectorSize(spirv::Word), InvalidVariableClass(spirv::StorageClass), InvalidAccessType(spirv::Word), InvalidAccess(Handle), InvalidAccessIndex(spirv::Word), InvalidBinding(spirv::Word), InvalidImageExpression(Handle), InvalidImageBaseType(Handle), InvalidSamplerExpression(Handle), InvalidSampleImage(Handle), InvalidSampleSampler(Handle), InvalidSampleCoordinates(Handle), InvalidDepthReference(Handle), InvalidAsType(Handle), InconsistentComparisonSampling(Handle), WrongFunctionResultType(spirv::Word), WrongFunctionArgumentType(spirv::Word), MissingDecoration(spirv::Decoration), BadString, IncompleteData, InvalidTerminator, InvalidEdgeClassification, UnexpectedComparisonType(Handle), }