ShaderTools.Hlsl.Binding.Binder.BindVariableQualifier C# (CSharp) Method

BindVariableQualifier() private method

private BindVariableQualifier ( VariableDeclaratorQualifierSyntax syntax ) : BoundVariableQualifier
syntax ShaderTools.Hlsl.Syntax.VariableDeclaratorQualifierSyntax
return ShaderTools.Hlsl.Binding.BoundNodes.BoundVariableQualifier
        private BoundVariableQualifier BindVariableQualifier(VariableDeclaratorQualifierSyntax syntax)
        {
            switch (syntax.Kind)
            {
                case SyntaxKind.SemanticName:
                    var semanticSyntax = (SemanticSyntax) syntax;
                    var semanticSymbol = IntrinsicSemantics.AllSemantics.FirstOrDefault(x => string.Equals(x.Name, semanticSyntax.Semantic.Text, StringComparison.OrdinalIgnoreCase))
                        ?? new SemanticSymbol(semanticSyntax.Semantic.Text, string.Empty, false, SemanticUsages.AllShaders);
                    return new BoundSemantic(semanticSymbol);
                case SyntaxKind.RegisterLocation:
                    return new BoundRegisterLocation();
                case SyntaxKind.PackOffsetLocation:
                    return new BoundPackOffsetLocation();
                default:
                    throw new ArgumentOutOfRangeException(syntax.Kind.ToString());
            }
        }