ShaderTools.Hlsl.Parser.HlslParser.ParseUnderlyingType C# (CSharp) Method

ParseUnderlyingType() private method

private ParseUnderlyingType ( bool allowVoid, bool parentIsParameter ) : TypeSyntax
allowVoid bool
parentIsParameter bool
return ShaderTools.Hlsl.Syntax.TypeSyntax
        private TypeSyntax ParseUnderlyingType(bool allowVoid, bool parentIsParameter)
        {
            if (SyntaxFacts.IsPredefinedType(Current))
                return ParsePredefinedType(allowVoid, parentIsParameter);

            switch (Current.Kind)
            {
                case SyntaxKind.IdentifierToken:
                    return ParseName();
                case SyntaxKind.StructKeyword:
                    return ParseStructType();
                case SyntaxKind.ClassKeyword:
                    return ParseClassType();
                case SyntaxKind.InterfaceKeyword:
                    return ParseInterfaceType();
                default:
                    return WithDiagnostic(CreateMissingIdentifierName(), DiagnosticId.TypeExpected);
            }
        }
HlslParser