public new static BuiltIn Parse(WordReader reader, uint wordCount) { var end = reader.Position + wordCount; var res = new BuiltIn(); res.BuiltInValue = Spv.BuiltIn.Parse(reader, end - reader.Position); return(res); }
public static Decoration Parse(WordReader reader, uint wordCount) { var id = (Enumerant)reader.ReadWord(); switch (id) { case Enumerant.SpecId: return(SpecId.Parse(reader, wordCount - 1)); case Enumerant.ArrayStride: return(ArrayStride.Parse(reader, wordCount - 1)); case Enumerant.MatrixStride: return(MatrixStride.Parse(reader, wordCount - 1)); case Enumerant.BuiltIn: return(BuiltIn.Parse(reader, wordCount - 1)); case Enumerant.Stream: return(Stream.Parse(reader, wordCount - 1)); case Enumerant.Location: return(Location.Parse(reader, wordCount - 1)); case Enumerant.Component: return(Component.Parse(reader, wordCount - 1)); case Enumerant.Index: return(Index.Parse(reader, wordCount - 1)); case Enumerant.Binding: return(Binding.Parse(reader, wordCount - 1)); case Enumerant.DescriptorSet: return(DescriptorSet.Parse(reader, wordCount - 1)); case Enumerant.Offset: return(Offset.Parse(reader, wordCount - 1)); case Enumerant.XfbBuffer: return(XfbBuffer.Parse(reader, wordCount - 1)); case Enumerant.XfbStride: return(XfbStride.Parse(reader, wordCount - 1)); case Enumerant.FuncParamAttr: return(FuncParamAttr.Parse(reader, wordCount - 1)); case Enumerant.FPRoundingMode: return(FPRoundingMode.Parse(reader, wordCount - 1)); case Enumerant.FPFastMathMode: return(FPFastMathMode.Parse(reader, wordCount - 1)); case Enumerant.LinkageAttributes: return(LinkageAttributes.Parse(reader, wordCount - 1)); case Enumerant.InputAttachmentIndex: return(InputAttachmentIndex.Parse(reader, wordCount - 1)); case Enumerant.Alignment: return(Alignment.Parse(reader, wordCount - 1)); case Enumerant.SecondaryViewportRelativeNV: return(SecondaryViewportRelativeNV.Parse(reader, wordCount - 1)); case Enumerant.HlslCounterBufferGOOGLE: return(HlslCounterBufferGOOGLE.Parse(reader, wordCount - 1)); case Enumerant.HlslSemanticGOOGLE: return(HlslSemanticGOOGLE.Parse(reader, wordCount - 1)); default: return(new Decoration(id)); } }