32 lines
750 B
C#
32 lines
750 B
C#
using Roslyn.Utilities;
|
|
|
|
namespace Microsoft.CodeAnalysis.CSharp.Symbols;
|
|
|
|
internal static class EnumConversions
|
|
{
|
|
internal static TypeKind ToTypeKind(this DeclarationKind kind)
|
|
{
|
|
switch (kind)
|
|
{
|
|
case DeclarationKind.Class:
|
|
case DeclarationKind.Script:
|
|
case DeclarationKind.ImplicitClass:
|
|
case DeclarationKind.Record:
|
|
return (TypeKind)2;
|
|
case DeclarationKind.Submission:
|
|
return (TypeKind)12;
|
|
case DeclarationKind.Delegate:
|
|
return (TypeKind)3;
|
|
case DeclarationKind.Enum:
|
|
return (TypeKind)5;
|
|
case DeclarationKind.Interface:
|
|
return (TypeKind)7;
|
|
case DeclarationKind.Struct:
|
|
case DeclarationKind.RecordStruct:
|
|
return (TypeKind)10;
|
|
default:
|
|
throw ExceptionUtilities.UnexpectedValue((object)kind);
|
|
}
|
|
}
|
|
}
|