| File: Syntax\SyntaxKindExtensions.cs | Web Access |
| Project: src\roslyn\src\Compilers\CSharp\Portable\Microsoft.CodeAnalysis.CSharp.csproj (Microsoft.CodeAnalysis.CSharp) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Roslyn.Utilities; namespace Microsoft.CodeAnalysis.CSharp { internal static partial class SyntaxKindExtensions { internal static SpecialType GetSpecialType(this SyntaxKind kind) { switch (kind) { case SyntaxKind.VoidKeyword: return SpecialType.System_Void; case SyntaxKind.BoolKeyword: return SpecialType.System_Boolean; case SyntaxKind.ByteKeyword: return SpecialType.System_Byte; case SyntaxKind.SByteKeyword: return SpecialType.System_SByte; case SyntaxKind.ShortKeyword: return SpecialType.System_Int16; case SyntaxKind.UShortKeyword: return SpecialType.System_UInt16; case SyntaxKind.IntKeyword: return SpecialType.System_Int32; case SyntaxKind.UIntKeyword: return SpecialType.System_UInt32; case SyntaxKind.LongKeyword: return SpecialType.System_Int64; case SyntaxKind.ULongKeyword: return SpecialType.System_UInt64; case SyntaxKind.DoubleKeyword: return SpecialType.System_Double; case SyntaxKind.FloatKeyword: return SpecialType.System_Single; case SyntaxKind.DecimalKeyword: return SpecialType.System_Decimal; case SyntaxKind.StringKeyword: return SpecialType.System_String; case SyntaxKind.CharKeyword: return SpecialType.System_Char; case SyntaxKind.ObjectKeyword: return SpecialType.System_Object; default: // Note that "dynamic" is a contextual keyword, so it should never show up here. throw ExceptionUtilities.UnexpectedValue(kind); } } } }