10671 references to SpecialType
Aspire.Hosting.Analyzers (2)
AppHostAnalyzer.cs (1)
92SymbolEqualityComparer.Default.Equals(parameterData.Symbol.Type, wellKnownTypes.Get(SpecialType.System_String))
Infrastructure\WellKnownTypes.cs (1)
53public INamedTypeSymbol Get(SpecialType type)
Aspire.Hosting.Integration.Analyzers (19)
AspireExportAnalyzer.cs (18)
859if (type.SpecialType == SpecialType.System_Void) 921namedType.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T && 983SpecialType.System_Boolean => true, 984SpecialType.System_Byte => true, 985SpecialType.System_SByte => true, 986SpecialType.System_Int16 => true, 987SpecialType.System_UInt16 => true, 988SpecialType.System_Int32 => true, 989SpecialType.System_UInt32 => true, 990SpecialType.System_Int64 => true, 991SpecialType.System_UInt64 => true, 992SpecialType.System_Single => true, 993SpecialType.System_Double => true, 994SpecialType.System_Decimal => true, 995SpecialType.System_Char => true, 996SpecialType.System_String => true, 997SpecialType.System_DateTime => true, 998SpecialType.System_Object => true, // Maps to 'any' in ATS
src\Aspire.Hosting.Analyzers\Infrastructure\WellKnownTypes.cs (1)
53public INamedTypeSymbol Get(SpecialType type)
ConfigurationSchemaGenerator (43)
RuntimeSource\Configuration.Binder\ConfigurationBindingGenerator.Parser.cs (24)
67type.SpecialType is SpecialType.System_Object or SpecialType.System_Void || 223unboundGeneric.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 235if (type is IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Byte }) 253SpecialType specialType = namedType.SpecialType; 257case SpecialType.System_String: 258case SpecialType.System_Object: 263case SpecialType.System_Boolean: 264case SpecialType.System_Char: 269case SpecialType.System_Single: 270case SpecialType.System_Double: 271case SpecialType.System_Decimal: 276case SpecialType.System_Byte: 277case SpecialType.System_Int16: 278case SpecialType.System_Int32: 279case SpecialType.System_Int64: 280case SpecialType.System_SByte: 281case SpecialType.System_UInt16: 282case SpecialType.System_UInt32: 283case SpecialType.System_UInt64: 288case SpecialType.System_DateTime: 293case SpecialType.None: 542if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 962if (firstParam.Name == "argument" && firstParam.Type.SpecialType == SpecialType.System_Object
RuntimeSource\Configuration.Binder\Parser\ConfigurationBinder.cs (5)
58if (@params[1].Type.SpecialType is SpecialType.System_String) 82if (instanceArg.Parameter?.Type.SpecialType is not SpecialType.System_Object) 200if (paramCount > 3 || @params[1].Type.SpecialType is not SpecialType.System_String) 222if (@params[2].Type.SpecialType is not SpecialType.System_String) 234else if (paramCount is 4 && @params[3].Type.SpecialType is SpecialType.System_Object)
RuntimeSource\Configuration.Binder\Parser\KnownTypeSymbols.cs (9)
73String = compilation.GetSpecialType(SpecialType.System_String); 100IEnumerable = compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable); 106GenericICollection = compilation.GetSpecialType(SpecialType.System_Collections_Generic_ICollection_T); 117GenericIEnumerable_Unbound = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).ConstructUnboundGenericType(); 118GenericIList_Unbound = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IList_T).ConstructUnboundGenericType(); 126Enum = compilation.GetSpecialType(SpecialType.System_Enum); 132IntPtr = Compilation.GetSpecialType(SpecialType.System_IntPtr); 133UIntPtr = Compilation.GetSpecialType(SpecialType.System_UIntPtr); 134Delegate = Compilation.GetSpecialType(SpecialType.System_Delegate);
RuntimeSource\Configuration.Binder\Parser\OptionsBuilderConfigurationExtensions.cs (1)
79@params[1].Type.SpecialType is SpecialType.System_String &&
RuntimeSource\Configuration.Binder\Parser\OptionsConfigurationServiceCollectionExtensions.cs (2)
44if (secondParamType.SpecialType is SpecialType.System_String && 60@params[1].Type.SpecialType is SpecialType.System_String &&
RuntimeSource\SourceGenerators\TypeRef.cs (2)
34public SpecialType SpecialType { get; } 36public bool CanBeNull => !IsValueType || SpecialType is SpecialType.System_Nullable_T;
GenerateDocumentationAndConfigFiles (429)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DiagnosticHelpers.cs (11)
11public static bool TryConvertToUInt64(object? value, SpecialType specialType, out ulong convertedValue) 19case SpecialType.System_Int16: 23case SpecialType.System_Int32: 27case SpecialType.System_Int64: 31case SpecialType.System_UInt16: 35case SpecialType.System_UInt32: 39case SpecialType.System_UInt64: 43case SpecialType.System_Byte: 47case SpecialType.System_SByte: 51case SpecialType.System_Char: 55case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DoNotCatchGeneralUnlessRethrown.cs (1)
104compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IMethodSymbolExtensions.cs (16)
31method.ReturnType.SpecialType == SpecialType.System_Boolean && 33method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 43method.ContainingType.SpecialType == SpecialType.System_Object && 46method.ReturnType.SpecialType == SpecialType.System_Boolean && 48method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 58method.ContainingType.SpecialType == SpecialType.System_Object && 60method.ReturnType.SpecialType == SpecialType.System_Boolean && 61method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 62method.Parameters[1].Type.SpecialType == SpecialType.System_Object && 74if (overriddenMethod.ContainingType.SpecialType == SpecialType.System_Object) 185Name: "Dispose", MethodKind: MethodKind.Ordinary, ReturnsVoid: true, Parameters: [{ Type.SpecialType: SpecialType.System_Boolean, RefKind: RefKind.None }] 230method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 397method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean && 411method.Parameters[1].Type.SpecialType == SpecialType.System_Boolean && 490method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 530method.ReturnType.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (16)
22SpecialType.System_Boolean 23or SpecialType.System_Byte 24or SpecialType.System_Char 25or SpecialType.System_Double 26or SpecialType.System_Int16 27or SpecialType.System_Int32 28or SpecialType.System_Int64 29or SpecialType.System_UInt16 30or SpecialType.System_UInt32 31or SpecialType.System_UInt64 32or SpecialType.System_SByte 33or SpecialType.System_Single 34or SpecialType.System_String => true, 249=> typeSymbol.IsValueType || typeSymbol.SpecialType == SpecialType.System_String; 257=> typeSymbol != null && typeSymbol.IsValueType && typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (4)
330generator.TypeExpression(SpecialType.System_Boolean), 386generator.ParameterDeclaration(argumentName.ToString(), generator.TypeExpression(SpecialType.System_Object)) 388returnType: generator.TypeExpression(SpecialType.System_Boolean), 409returnType: generator.TypeExpression(SpecialType.System_Int32),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (5)
14protected abstract SyntaxNode CreateExplicitlyCastedLiteralValue(INamedTypeSymbol enumType, SpecialType underlyingSpecialType, object constantValue); 77var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 171var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 187var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (12)
83public static bool IsSpecialType([NotNullWhen(true)] ITypeSymbol? type, SpecialType specialType) 136SpecialType.System_SByte => value is sbyte, 137SpecialType.System_Byte => value is byte, 138SpecialType.System_Int16 => value is short, 139SpecialType.System_UInt16 => value is ushort, 140SpecialType.System_Int32 => value is int, 141SpecialType.System_UInt32 => value is uint, 142SpecialType.System_Int64 => value is long, 143SpecialType.System_UInt64 => value is ulong, 144SpecialType.System_Decimal => value is decimal, 145SpecialType.System_Single => value is float, 146SpecialType.System_Double => value is double,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
422SpecialType specialType = SpecialType.None, 441SpecialType specialType = SpecialType.None, 493specialType: SpecialType.None,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\LiteralSpecialValues.cs (11)
16public static bool HasSpecialValues(SpecialType specialType) 20case SpecialType.System_SByte: 21case SpecialType.System_Int16: 22case SpecialType.System_UInt16: 23case SpecialType.System_Int32: 24case SpecialType.System_UInt32: 25case SpecialType.System_Int64: 26case SpecialType.System_UInt64: 27case SpecialType.System_Single: 28case SpecialType.System_Double: 29case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
29SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationArrayTypeSymbol.cs (1)
10internal sealed class CodeGenerationArrayTypeSymbol(ITypeSymbol elementType, int rank, NullableAnnotation nullableAnnotation) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, nullableAnnotation), IArrayTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationMethodSymbol.cs (1)
75=> this.ReturnType == null || this.ReturnType.SpecialType == SpecialType.System_Void;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationNamedTypeSymbol.cs (1)
34SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationPointerTypeSymbol.cs (1)
9internal sealed class CodeGenerationPointerTypeSymbol(ITypeSymbol pointedAtType) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, NullableAnnotation.None), IPointerTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeParameterSymbol.cs (1)
24int ordinal) : CodeGenerationTypeSymbol(containingType?.ContainingAssembly, containingType, attributes, Accessibility.NotApplicable, default, name, SpecialType.None, nullableAnnotation), ITypeParameterSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (2)
19SpecialType specialType, 23public SpecialType SpecialType { get; protected set; } = specialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
85_ => compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (19)
58parameterType ??= compilation.GetSpecialType(SpecialType.System_Object); 66returnType: compilation.GetSpecialType(SpecialType.System_Boolean), 436case SpecialType.System_Boolean: 437case SpecialType.System_Char: 438case SpecialType.System_SByte: 439case SpecialType.System_Byte: 440case SpecialType.System_Int16: 441case SpecialType.System_UInt16: 442case SpecialType.System_Int32: 443case SpecialType.System_UInt32: 444case SpecialType.System_Int64: 445case SpecialType.System_UInt64: 446case SpecialType.System_Decimal: 447case SpecialType.System_Single: 448case SpecialType.System_Double: 449case SpecialType.System_String: 450case SpecialType.System_DateTime: 468method.ReturnType.SpecialType == SpecialType.System_Boolean && 469method.Parameters[0].Type.SpecialType == SpecialType.System_Object &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateGetHashCodeMethod.cs (4)
136? factory.SimpleLocalDeclarationStatement(generatorInternal, compilation.GetSpecialType(SpecialType.System_Int32), HashCodeName, CreateLiteralExpression(factory, initHash)) 137: factory.LocalDeclarationStatement(compilation.GetSpecialType(SpecialType.System_Int64), HashCodeName, CreateLiteralExpression(factory, initHash))); 166compilation.GetSpecialType(SpecialType.System_Int32), 210method.ReturnType.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_Negate.cs (12)
60SpecialType? patternValueType, 182else if (operation is IIsTypeOperation { TypeOperand.SpecialType: SpecialType.System_Object } && generatorInternal.SupportsPatterns(semanticModel.SyntaxTree.Options)) 303SpecialType? patternValueType) 305if (patternValueType is SpecialType specialType && specialType.IsNumericType()) 445if (containingType?.SpecialType == SpecialType.System_Array || 446containingType?.SpecialType == SpecialType.System_String) 456case SpecialType.System_Byte: 457case SpecialType.System_UInt16: 458case SpecialType.System_UInt32: 459case SpecialType.System_UInt64: 501SpecialType? patternValueType) 508if (patternValueType == SpecialType.System_Boolean)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (2)
78protected IEnumerable<TypeInferenceInfo> CreateResult(SpecialType type, NullableAnnotation nullableAnnotation = NullableAnnotation.None) 120symbol.ContainingType?.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.cs (1)
46? [semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean)]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Simplification\SimplificationHelpers.cs (2)
77var specialType = SpecialTypeAnnotation.GetSpecialType(annotation2); 78if (specialType != SpecialType.None)
ILLink.RoslynAnalyzer (23)
ISymbolExtensions.cs (1)
222methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
ITypeSymbolExtensions.cs (5)
21if (type.SpecialType is SpecialType.System_String && !isByRef) 76SpecialType.System_String => WellKnownType.System_String, 77SpecialType.System_Nullable_T => WellKnownType.System_Nullable_T, 78SpecialType.System_Array => WellKnownType.System_Array, 79SpecialType.System_Object => WellKnownType.System_Object,
RequiresAnalyzerBase.cs (1)
369if (!propertySymbol.IsStatic || propertySymbol.Type.SpecialType != SpecialType.System_Boolean || propertySymbol.SetMethod != null)
RequiresAssemblyFilesAnalyzer.cs (1)
136attribute.ConstructorArguments.Length >= 1 && attribute.ConstructorArguments is [{ Type.SpecialType: SpecialType.System_String }, ..];
RequiresDynamicCodeAnalyzer.cs (1)
190attribute.ConstructorArguments.Length >= 1 && attribute.ConstructorArguments is [{ Type.SpecialType: SpecialType.System_String }, ..];
RequiresUnreferencedCodeUtils.cs (1)
37=> attribute.ConstructorArguments.Length >= 1 && attribute.ConstructorArguments is [{ Type.SpecialType: SpecialType.System_String }, ..];
TrimAnalysis\FeatureCheckReturnValuePattern.cs (1)
40if (!OwningSymbol.IsStatic || OwningSymbol.Type.SpecialType != SpecialType.System_Boolean || OwningSymbol.SetMethod != null)
TrimAnalysis\GenericParameterProxy.cs (1)
21if (constraintType.SpecialType == SpecialType.System_Enum)
TrimAnalysis\MethodProxy.cs (1)
56internal partial bool ReturnsVoid() => Method.ReturnType.SpecialType == SpecialType.System_Void;
TrimAnalysis\SingleValueExtensions.cs (1)
16if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T)
TrimAnalysis\TrimAnalysisVisitor.cs (9)
202(operation.Type?.TypeKind == TypeKind.Enum || operation.Type?.SpecialType == SpecialType.System_Int32)) 532case SpecialType.System_String when constantValue is string stringConstantValue: 535case SpecialType.System_Boolean when constantValue is bool boolConstantValue: 538case SpecialType.System_SByte when constantValue is sbyte sbyteConstantValue: 541case SpecialType.System_Byte when constantValue is byte byteConstantValue: 544case SpecialType.System_Int16 when constantValue is short int16ConstantValue: 547case SpecialType.System_UInt16 when constantValue is ushort uint16ConstantValue: 550case SpecialType.System_Int32 when constantValue is int int32ConstantValue: 553case SpecialType.System_UInt32 when constantValue is uint uint32ConstantValue:
Microsoft.Analyzers.Extra (5)
CallAnalysis\Arrays.cs (2)
109|| keyType.SpecialType == SpecialType.System_Byte 110|| keyType.SpecialType == SpecialType.System_SByte)
CallAnalysis\StartsEndsWith.cs (1)
19var stringType = reg.Compilation.GetSpecialType(SpecialType.System_String);
CoalesceAnalyzer.cs (2)
37&& type.OriginalDefinition.SpecialType != SpecialType.System_Nullable_T) 64&& type.OriginalDefinition.SpecialType != SpecialType.System_Nullable_T)
Microsoft.Analyzers.Local (9)
ApiLifecycle\AssemblyAnalysis.cs (3)
148if (type.EnumUnderlyingType.SpecialType != SpecialType.System_Int32) 155if (baseType != null && baseType.SpecialType != SpecialType.System_Object && baseType.SpecialType != SpecialType.System_ValueType)
CallAnalysis\ToInvariantString.cs (6)
16private static readonly SpecialType[] _intTypes = new[] 18SpecialType.System_Byte, 19SpecialType.System_Int16, 20SpecialType.System_Int32, 21SpecialType.System_Int64, 28foreach (var type in _intTypes)
Microsoft.AspNetCore.App.Analyzers (15)
Http\HeaderDictionaryIndexerAnalyzer.cs (1)
30property.Parameters[0].Type.SpecialType == SpecialType.System_String &&
RouteEmbeddedLanguage\Infrastructure\MvcDetector.cs (1)
30var disposable = wellKnownTypes.Get(SpecialType.System_IDisposable);
RouteEmbeddedLanguage\Infrastructure\RouteUsageDetector.cs (2)
277var delegateSymbol = semanticModel.Compilation.GetSpecialType(SpecialType.System_Delegate); 290var stringSymbol = semanticModel.Compilation.GetSpecialType(SpecialType.System_String);
RouteHandlers\DisallowNonParsableComplexTypesOnParameters.cs (1)
132if (parameterTypeSymbol!.ConstructedFrom.SpecialType == SpecialType.System_Nullable_T &&
src\aspnetcore\src\Shared\Roslyn\MvcFacts.cs (2)
74if (declaringType == null || declaringType.SpecialType == SpecialType.System_Object) 137if (method.ExplicitInterfaceImplementations[i].ContainingType.SpecialType == SpecialType.System_IDisposable)
src\aspnetcore\src\Shared\RoslynUtils\ParsabilityHelper.cs (5)
40if (typeSymbol.SpecialType == SpecialType.System_String) 98methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean && 100methodSymbol.Parameters[0].Type.SpecialType == SpecialType.System_String && 108methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean && 110methodSymbol.Parameters[0].Type.SpecialType == SpecialType.System_String &&
src\aspnetcore\src\Shared\RoslynUtils\SymbolExtensions.cs (2)
34if (unwrapNullable && unwrappedTypeSymbol?.ConstructedFrom.SpecialType == SpecialType.System_Nullable_T) 317if (typeSymbol.OriginalDefinition?.SpecialType == SpecialType.System_Nullable_T &&
src\aspnetcore\src\Shared\RoslynUtils\WellKnownTypes.cs (1)
58public INamedTypeSymbol Get(SpecialType type)
Microsoft.AspNetCore.Components.Analyzers (3)
ComponentSymbols.cs (2)
40var @string = compilation.GetSpecialType(SpecialType.System_String); 41var @object = compilation.GetSpecialType(SpecialType.System_Object);
InvokeAsyncOfObjectAnalyzer.cs (1)
43var objectType = compilationContext.Compilation.GetSpecialType(SpecialType.System_Object);
Microsoft.AspNetCore.Components.SdkAnalyzers (2)
ComponentSymbols.cs (2)
40var @string = compilation.GetSpecialType(SpecialType.System_String); 41var @object = compilation.GetSpecialType(SpecialType.System_Object);
Microsoft.AspNetCore.Mvc.Analyzers (4)
src\aspnetcore\src\Shared\Roslyn\MvcFacts.cs (2)
74if (declaringType == null || declaringType.SpecialType == SpecialType.System_Object) 137if (method.ExplicitInterfaceImplementations[i].ContainingType.SpecialType == SpecialType.System_IDisposable)
TopLevelParameterNameAnalyzer.cs (2)
165namedArgumentValue.Type.SpecialType == SpecialType.System_String && 277var disposable = compilation.GetSpecialType(SpecialType.System_IDisposable);
Microsoft.AspNetCore.Mvc.Api.Analyzers (8)
AddResponseTypeAttributeCodeFixAction.cs (1)
156field.Type.SpecialType == SpecialType.System_Int32 &&
ApiControllerSymbolCache.cs (1)
97var disposable = compilation.GetSpecialType(SpecialType.System_IDisposable);
src\aspnetcore\src\Shared\Roslyn\MvcFacts.cs (2)
74if (declaringType == null || declaringType.SpecialType == SpecialType.System_Object) 137if (method.ExplicitInterfaceImplementations[i].ContainingType.SpecialType == SpecialType.System_IDisposable)
SymbolApiResponseMetadataProvider.cs (4)
195(namedArgumentValue.Type.SpecialType & SpecialType.System_Int32) == SpecialType.System_Int32 && 212(parameter.Type.SpecialType & SpecialType.System_Int32) == SpecialType.System_Int32)
Microsoft.CodeAnalysis (1826)
CodeGen\PermissionSetAttribute.cs (1)
86member => member.Kind == SymbolKind.Property && ((IPropertySymbol)member).Type.SpecialType == SpecialType.System_String));
CommandLine\SarifV2ErrorLogger.cs (1)
80string? justification = suppressionInfo?.Attribute?.DecodeNamedArgument<string>("Justification", SpecialType.System_String);
Compilation\Compilation.cs (4)
992public INamedTypeSymbol GetSpecialType(SpecialType specialType) 994if (specialType <= SpecialType.None || specialType > SpecialType.Count) 1012private protected abstract INamedTypeSymbolInternal CommonGetSpecialType(SpecialType specialType);
Compilation\Expression.cs (13)
13case SpecialType.System_Int32: 15case SpecialType.System_Int64: 17case SpecialType.System_UInt32: 19case SpecialType.System_UInt64: 21case SpecialType.System_UInt16: 23case SpecialType.System_Int16: 25case SpecialType.System_SByte: 27case SpecialType.System_Byte: 29case SpecialType.System_Char: 31case SpecialType.System_Boolean: 33case SpecialType.System_Single: 35case SpecialType.System_Double: 37case SpecialType.System_Object:
ConstantValue.cs (41)
43internal abstract SpecialType SpecialType { get; } 355public static ConstantValue Create(object value, SpecialType st) 362public static ConstantValue? CreateSizeOf(SpecialType st) 399public static ConstantValue Default(SpecialType st) 436internal static ConstantValueTypeDiscriminator GetDiscriminator(SpecialType st) 440case SpecialType.System_SByte: return ConstantValueTypeDiscriminator.SByte; 441case SpecialType.System_Byte: return ConstantValueTypeDiscriminator.Byte; 442case SpecialType.System_Int16: return ConstantValueTypeDiscriminator.Int16; 443case SpecialType.System_UInt16: return ConstantValueTypeDiscriminator.UInt16; 444case SpecialType.System_Int32: return ConstantValueTypeDiscriminator.Int32; 445case SpecialType.System_UInt32: return ConstantValueTypeDiscriminator.UInt32; 446case SpecialType.System_Int64: return ConstantValueTypeDiscriminator.Int64; 447case SpecialType.System_UInt64: return ConstantValueTypeDiscriminator.UInt64; 448case SpecialType.System_IntPtr: return ConstantValueTypeDiscriminator.NInt; 449case SpecialType.System_UIntPtr: return ConstantValueTypeDiscriminator.NUInt; 450case SpecialType.System_Char: return ConstantValueTypeDiscriminator.Char; 451case SpecialType.System_Boolean: return ConstantValueTypeDiscriminator.Boolean; 452case SpecialType.System_Single: return ConstantValueTypeDiscriminator.Single; 453case SpecialType.System_Double: return ConstantValueTypeDiscriminator.Double; 454case SpecialType.System_Decimal: return ConstantValueTypeDiscriminator.Decimal; 455case SpecialType.System_DateTime: return ConstantValueTypeDiscriminator.DateTime; 456case SpecialType.System_String: return ConstantValueTypeDiscriminator.String; 488private static SpecialType GetSpecialType(ConstantValueTypeDiscriminator discriminator) 492case ConstantValueTypeDiscriminator.SByte: return SpecialType.System_SByte; 493case ConstantValueTypeDiscriminator.Byte: return SpecialType.System_Byte; 494case ConstantValueTypeDiscriminator.Int16: return SpecialType.System_Int16; 495case ConstantValueTypeDiscriminator.UInt16: return SpecialType.System_UInt16; 496case ConstantValueTypeDiscriminator.Int32: return SpecialType.System_Int32; 497case ConstantValueTypeDiscriminator.UInt32: return SpecialType.System_UInt32; 498case ConstantValueTypeDiscriminator.Int64: return SpecialType.System_Int64; 499case ConstantValueTypeDiscriminator.UInt64: return SpecialType.System_UInt64; 500case ConstantValueTypeDiscriminator.NInt: return SpecialType.System_IntPtr; 501case ConstantValueTypeDiscriminator.NUInt: return SpecialType.System_UIntPtr; 502case ConstantValueTypeDiscriminator.Char: return SpecialType.System_Char; 503case ConstantValueTypeDiscriminator.Boolean: return SpecialType.System_Boolean; 504case ConstantValueTypeDiscriminator.Single: return SpecialType.System_Single; 505case ConstantValueTypeDiscriminator.Double: return SpecialType.System_Double; 506case ConstantValueTypeDiscriminator.Decimal: return SpecialType.System_Decimal; 507case ConstantValueTypeDiscriminator.DateTime: return SpecialType.System_DateTime; 508case ConstantValueTypeDiscriminator.String: return SpecialType.System_String; 509default: return SpecialType.None;
ConstantValueSpecialized.cs (11)
42internal override SpecialType SpecialType 44get { return SpecialType.None; } 83internal override SpecialType SpecialType 85get { return SpecialType.None; } 167internal override SpecialType SpecialType 169get { return SpecialType.System_String; } 246internal override SpecialType SpecialType 248get { return SpecialType.System_Decimal; } 287internal override SpecialType SpecialType 289get { return SpecialType.System_DateTime; } 330internal override SpecialType SpecialType
DiagnosticAnalyzer\SuppressMessageAttributeState.cs (3)
425var scopeString = attribute.DecodeNamedArgument<string>("Scope", SpecialType.System_String); 432info.Target = attribute.DecodeNamedArgument<string>("Target", SpecialType.System_String); 433info.MessageId = attribute.DecodeNamedArgument<string>("MessageId", SpecialType.System_String);
Emit\CommonPEModuleBuilder.cs (8)
712internal abstract Cci.INamedTypeReference GetSpecialType(SpecialType specialType, TSyntaxNode syntaxNodeOpt, DiagnosticBag diagnostics); 1147this.GetSpecialType(SpecialType.System_Object, syntaxNodeOpt, diagnostics), 1148this.GetSpecialType(SpecialType.System_ValueType, syntaxNodeOpt, diagnostics), 1149this.GetSpecialType(SpecialType.System_Byte, syntaxNodeOpt, diagnostics), 1150this.GetSpecialType(SpecialType.System_Int16, syntaxNodeOpt, diagnostics), 1151this.GetSpecialType(SpecialType.System_Int32, syntaxNodeOpt, diagnostics), 1152this.GetSpecialType(SpecialType.System_Int64, syntaxNodeOpt, diagnostics), 1195return GetSpecialType((SpecialType)platformType, (TSyntaxNode)context.SyntaxNode, context.Diagnostics);
ExtendedSpecialType.cs (9)
11/// A structure meant to represent a union of <see cref="SpecialType"/> and <see cref="InternalSpecialType"/> values 25public static implicit operator ExtendedSpecialType(SpecialType value) => new ExtendedSpecialType((int)value); 26public static explicit operator SpecialType(ExtendedSpecialType value) => value._value < (int)InternalSpecialType.First ? (SpecialType)value._value : SpecialType.None; 44case SpecialType other: 65if (_value > (int)SpecialType.None && _value <= (int)SpecialType.Count) 67return ((SpecialType)_value).ToString();
InternalSpecialType.cs (3)
11/// Unlike ids in <see cref="SpecialType"/> enum, these ids are not meant for public consumption 17Unknown = SpecialType.None, 28System_ReadOnlySpan_T = SpecialType.Count + 1,
MetadataReader\MetadataDecoder.cs (4)
1010if (type.SpecialType == SpecialType.System_Decimal) 1014else if (type.SpecialType == SpecialType.System_DateTime) 1033var specialType = typeCode.ToSpecialType(); 1355type = GetSpecialType(SpecialType.System_Object);
MetadataReader\MetadataTypeCodeExtensions.cs (54)
14internal static SpecialType ToSpecialType(this SignatureTypeCode typeCode) 19return SpecialType.System_TypedReference; 22return SpecialType.System_Void; 25return SpecialType.System_Boolean; 28return SpecialType.System_SByte; 31return SpecialType.System_Byte; 34return SpecialType.System_Int16; 37return SpecialType.System_UInt16; 40return SpecialType.System_Int32; 43return SpecialType.System_UInt32; 46return SpecialType.System_Int64; 49return SpecialType.System_UInt64; 52return SpecialType.System_Single; 55return SpecialType.System_Double; 58return SpecialType.System_Char; 61return SpecialType.System_String; 64return SpecialType.System_IntPtr; 67return SpecialType.System_UIntPtr; 70return SpecialType.System_Object; 77internal static bool HasShortFormSignatureEncoding(this SpecialType type) 105case SpecialType.System_String: 106case SpecialType.System_Object: 107case SpecialType.System_Void: 108case SpecialType.System_Boolean: 109case SpecialType.System_Char: 110case SpecialType.System_Byte: 111case SpecialType.System_SByte: 112case SpecialType.System_Int16: 113case SpecialType.System_UInt16: 114case SpecialType.System_Int32: 115case SpecialType.System_UInt32: 116case SpecialType.System_Int64: 117case SpecialType.System_UInt64: 118case SpecialType.System_IntPtr: 119case SpecialType.System_UIntPtr: 120case SpecialType.System_TypedReference: 121case SpecialType.System_Single: 122case SpecialType.System_Double: 129internal static SerializationTypeCode ToSerializationType(this SpecialType specialType) 141internal static SerializationTypeCode ToSerializationTypeOrInvalid(this SpecialType specialType) 145case SpecialType.System_Boolean: 148case SpecialType.System_SByte: 151case SpecialType.System_Byte: 154case SpecialType.System_Int16: 157case SpecialType.System_Int32: 160case SpecialType.System_Int64: 163case SpecialType.System_UInt16: 166case SpecialType.System_UInt32: 169case SpecialType.System_UInt64: 172case SpecialType.System_Single: 175case SpecialType.System_Double: 178case SpecialType.System_Char: 181case SpecialType.System_String: 184case SpecialType.System_Object:
MetadataReader\SymbolFactory.cs (1)
44internal abstract TypeSymbol GetSpecialType(ModuleSymbol moduleSymbol, SpecialType specialType);
MetadataReader\TypeNameDecoder.cs (1)
85protected TypeSymbol GetSpecialType(SpecialType specialType)
Operations\ControlFlowGraphBuilder.cs (21)
2421INamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 2479INamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 2580INamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 3139if (operation.Target?.Type?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T && 3319return MakeIsNullOperation(operand, _compilation.GetSpecialType(SpecialType.System_Boolean)); 3973: _compilation.GetSpecialType(SpecialType.System_IDisposable); 4206return new AwaitOperation(invocation, semanticModel: null, value.Syntax, _compilation.GetSpecialType(SpecialType.System_Void), isImplicit: true); 4223Debug.Assert(iDisposable.SpecialType == SpecialType.System_IDisposable || 4284ITypeSymbol objectType = _compilation.GetSpecialType(SpecialType.System_Object); 4550: _compilation.GetSpecialType(SpecialType.System_IDisposable); 4633return new AwaitOperation(moveNext, semanticModel: null, operation.Syntax, _compilation.GetSpecialType(SpecialType.System_Boolean), isImplicit: true); 4640return MakeInvalidOperation(_compilation.GetSpecialType(SpecialType.System_Boolean), enumeratorRef); 4753ITypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 5173_compilation.GetSpecialType(SpecialType.System_Boolean), 5254var shiftConst = new LiteralOperation(semanticModel: null, operand.Syntax, _compilation.GetSpecialType(SpecialType.System_Int32), 5356_compilation.GetSpecialType(SpecialType.System_Boolean), 5477INamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 5843ITypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 6858Debug.Assert(outParameterArgument is { Parameter: { RefKind: RefKind.Out, Type.SpecialType: SpecialType.System_Boolean } }); 7782INamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean); 7837? MakeInvalidOperation(operation.Syntax, type: _compilation.GetSpecialType(SpecialType.System_Object), ImmutableArray<IOperation>.Empty)
PEWriter\Types.cs (6)
18SystemObject = CodeAnalysis.SpecialType.System_Object, 19SystemDecimal = CodeAnalysis.SpecialType.System_Decimal, 20SystemTypedReference = CodeAnalysis.SpecialType.System_TypedReference, 22SystemInt32 = CodeAnalysis.SpecialType.System_Int32, 23SystemVoid = CodeAnalysis.SpecialType.System_Void, 24SystemString = CodeAnalysis.SpecialType.System_String,
SpecialMembers.cs (479)
21(byte)SpecialType.System_String, // DeclaringTypeId 24(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 25(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 29(byte)SpecialType.System_String, // DeclaringTypeId 32(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 33(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 34(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 38(byte)SpecialType.System_String, // DeclaringTypeId 41(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 42(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 43(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 44(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 48(byte)SpecialType.System_String, // DeclaringTypeId 51(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 52(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 53(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 54(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 55(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 59(byte)SpecialType.System_String, // DeclaringTypeId 62(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 63(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 67(byte)SpecialType.System_String, // DeclaringTypeId 70(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 71(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 75(byte)SpecialType.System_String, // DeclaringTypeId 78(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 79(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 80(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 84(byte)SpecialType.System_String, // DeclaringTypeId 87(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 88(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 89(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 90(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 94(byte)SpecialType.System_String, // DeclaringTypeId 97(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 98(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 102(byte)SpecialType.System_String, // DeclaringTypeId 105(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 108(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 111(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 115(byte)SpecialType.System_String, // DeclaringTypeId 118(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 121(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 124(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 127(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 131(byte)SpecialType.System_String, // DeclaringTypeId 134(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 137(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 140(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 143(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 146(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 150(byte)SpecialType.System_String, // DeclaringTypeId 153(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 154(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 155(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 159(byte)SpecialType.System_String, // DeclaringTypeId 162(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 163(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 164(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 168(byte)SpecialType.System_String, // DeclaringTypeId 171(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 175(byte)SpecialType.System_String, // DeclaringTypeId 178(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 179(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 183(byte)SpecialType.System_String, // DeclaringTypeId 186(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 187(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 188(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 192(byte)SpecialType.System_String, // DeclaringTypeId 195(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 197(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 198(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 202(byte)SpecialType.System_String, // DeclaringTypeId 205(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 206(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 207(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 211(byte)SpecialType.System_String, // DeclaringTypeId 214(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 215(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 219(byte)SpecialType.System_String, // DeclaringTypeId 224(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 225(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 229(byte)SpecialType.System_Double, // DeclaringTypeId 232(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 233(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 237(byte)SpecialType.System_Single, // DeclaringTypeId 240(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 241(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 245(byte)SpecialType.System_Delegate, // DeclaringTypeId 248(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 249(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 250(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 254(byte)SpecialType.System_Delegate, // DeclaringTypeId 257(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 258(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 259(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 263(byte)SpecialType.System_Delegate, // DeclaringTypeId 266(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 267(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 268(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 272(byte)SpecialType.System_Delegate, // DeclaringTypeId 275(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 276(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 277(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 281(byte)SpecialType.System_Delegate, // DeclaringTypeId 284(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, // Return Type 286(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 291(byte)SpecialType.System_Delegate, // DeclaringTypeId 294(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, // Return Type 296(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 298(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 302(byte)SpecialType.System_Decimal, // DeclaringTypeId 304(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Field Signature 308(byte)SpecialType.System_Decimal, // DeclaringTypeId 310(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Field Signature 314(byte)SpecialType.System_Decimal, // DeclaringTypeId 316(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Field Signature 320(byte)SpecialType.System_Decimal, // DeclaringTypeId 323(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 324(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 328(byte)SpecialType.System_Decimal, // DeclaringTypeId 331(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 332(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 336(byte)SpecialType.System_Decimal, // DeclaringTypeId 339(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 340(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 344(byte)SpecialType.System_Decimal, // DeclaringTypeId 347(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 348(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 352(byte)SpecialType.System_Decimal, // DeclaringTypeId 355(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 356(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 360(byte)SpecialType.System_Decimal, // DeclaringTypeId 363(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 364(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 368(byte)SpecialType.System_Decimal, // DeclaringTypeId 371(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 372(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 373(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 374(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 375(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 376(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 380(byte)SpecialType.System_Decimal, // DeclaringTypeId 383(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 384(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 385(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 389(byte)SpecialType.System_Decimal, // DeclaringTypeId 392(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 393(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 394(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 398(byte)SpecialType.System_Decimal, // DeclaringTypeId 401(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 402(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 403(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 407(byte)SpecialType.System_Decimal, // DeclaringTypeId 410(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 411(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 412(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 416(byte)SpecialType.System_Decimal, // DeclaringTypeId 419(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 420(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 421(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 425(byte)SpecialType.System_Decimal, // DeclaringTypeId 428(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 429(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 433(byte)SpecialType.System_Decimal, // DeclaringTypeId 436(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 437(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 441(byte)SpecialType.System_Decimal, // DeclaringTypeId 444(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 445(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 449(byte)SpecialType.System_Decimal, // DeclaringTypeId 452(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 453(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 457(byte)SpecialType.System_Decimal, // DeclaringTypeId 460(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 461(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 462(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 466(byte)SpecialType.System_Decimal, // DeclaringTypeId 469(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 470(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 471(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 475(byte)SpecialType.System_Decimal, // DeclaringTypeId 478(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 479(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 480(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 484(byte)SpecialType.System_Decimal, // DeclaringTypeId 487(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 488(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 489(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 493(byte)SpecialType.System_Decimal, // DeclaringTypeId 496(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 497(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 498(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 502(byte)SpecialType.System_Decimal, // DeclaringTypeId 505(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 506(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 507(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 511(byte)SpecialType.System_Decimal, // DeclaringTypeId 514(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 515(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 516(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 520(byte)SpecialType.System_Decimal, // DeclaringTypeId 523(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 524(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 525(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 529(byte)SpecialType.System_Decimal, // DeclaringTypeId 532(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 533(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 534(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 538(byte)SpecialType.System_Decimal, // DeclaringTypeId 541(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 542(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 543(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 547(byte)SpecialType.System_Decimal, // DeclaringTypeId 550(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 551(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 552(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 556(byte)SpecialType.System_Decimal, // DeclaringTypeId 559(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 560(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 561(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 565(byte)SpecialType.System_Decimal, // DeclaringTypeId 568(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 569(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 570(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 574(byte)SpecialType.System_Decimal, // DeclaringTypeId 577(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 578(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 582(byte)SpecialType.System_Decimal, // DeclaringTypeId 585(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 586(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 590(byte)SpecialType.System_Decimal, // DeclaringTypeId 593(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 594(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, 598(byte)SpecialType.System_Decimal, // DeclaringTypeId 601(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 602(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 606(byte)SpecialType.System_Decimal, // DeclaringTypeId 609(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 610(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 614(byte)SpecialType.System_Decimal, // DeclaringTypeId 617(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 618(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, 622(byte)SpecialType.System_Decimal, // DeclaringTypeId 625(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 626(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, 630(byte)SpecialType.System_Decimal, // DeclaringTypeId 633(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 634(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 638(byte)SpecialType.System_Decimal, // DeclaringTypeId 641(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 642(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 646(byte)SpecialType.System_Decimal, // DeclaringTypeId 649(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 650(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 654(byte)SpecialType.System_Decimal, // DeclaringTypeId 657(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, 658(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 662(byte)SpecialType.System_Decimal, // DeclaringTypeId 665(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, 666(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 670(byte)SpecialType.System_Decimal, // DeclaringTypeId 673(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, 674(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 678(byte)SpecialType.System_Decimal, // DeclaringTypeId 681(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 682(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 686(byte)SpecialType.System_Decimal, // DeclaringTypeId 689(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 690(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 694(byte)SpecialType.System_Decimal, // DeclaringTypeId 697(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 698(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 702(byte)SpecialType.System_Decimal, // DeclaringTypeId 705(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 706(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 710(byte)SpecialType.System_Decimal, // DeclaringTypeId 713(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 714(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 718(byte)SpecialType.System_Decimal, // DeclaringTypeId 721(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 722(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 726(byte)SpecialType.System_Decimal, // DeclaringTypeId 729(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 730(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 734(byte)SpecialType.System_Decimal, // DeclaringTypeId 737(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 738(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 742(byte)SpecialType.System_Decimal, // DeclaringTypeId 745(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 746(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 750(byte)SpecialType.System_DateTime, // DeclaringTypeId 752(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, // Field Signature 756(byte)SpecialType.System_DateTime, // DeclaringTypeId 759(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 760(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 764(byte)SpecialType.System_DateTime, // DeclaringTypeId 767(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 768(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 769(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 773(byte)SpecialType.System_DateTime, // DeclaringTypeId 776(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 777(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 778(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 782(byte)SpecialType.System_DateTime, // DeclaringTypeId 785(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 786(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 787(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 791(byte)SpecialType.System_DateTime, // DeclaringTypeId 794(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 795(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 796(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 800(byte)SpecialType.System_DateTime, // DeclaringTypeId 803(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 804(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 805(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 809(byte)SpecialType.System_DateTime, // DeclaringTypeId 812(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 813(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 814(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 818(byte)SpecialType.System_DateTime, // DeclaringTypeId 821(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 822(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 823(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 827(byte)SpecialType.System_Collections_IEnumerable, // DeclaringTypeId 830(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_IEnumerator, 834(byte)SpecialType.System_Collections_IEnumerator, // DeclaringTypeId 837(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 841(byte)SpecialType.System_Collections_IEnumerator, // DeclaringTypeId 844(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 848(byte)SpecialType.System_Collections_IEnumerator, // DeclaringTypeId 851(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 855(byte)SpecialType.System_Collections_IEnumerator, // DeclaringTypeId 858(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 862(byte)SpecialType.System_Collections_Generic_IEnumerable_T, // DeclaringTypeId 866(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerator_T, 872(byte)SpecialType.System_Collections_Generic_IEnumerator_T, // DeclaringTypeId 879(byte)SpecialType.System_Collections_Generic_IEnumerator_T, // DeclaringTypeId 886(byte)SpecialType.System_IDisposable, // DeclaringTypeId 889(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 893(byte)SpecialType.System_Array, // DeclaringTypeId 896(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 900(byte)SpecialType.System_Array, // DeclaringTypeId 903(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 907(byte)SpecialType.System_Array, // DeclaringTypeId 910(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 911(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 915(byte)SpecialType.System_Array, // DeclaringTypeId 918(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 919(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 923(byte)SpecialType.System_Object, // DeclaringTypeId 926(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 930(byte)SpecialType.System_Object, // DeclaringTypeId 933(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 934(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 938(byte)SpecialType.System_Object, // DeclaringTypeId 941(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 942(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 943(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 947(byte)SpecialType.System_Object, // DeclaringTypeId 950(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 954(byte)SpecialType.System_Object, // DeclaringTypeId 957(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 958(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 959(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 963(byte)SpecialType.System_IntPtr, // DeclaringTypeId 966(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 967(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 971(byte)SpecialType.System_IntPtr, // DeclaringTypeId 974(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 975(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 979(byte)SpecialType.System_IntPtr, // DeclaringTypeId 982(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 983(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 987(byte)SpecialType.System_IntPtr, // DeclaringTypeId 990(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 991(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 995(byte)SpecialType.System_IntPtr, // DeclaringTypeId 998(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 999(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1003(byte)SpecialType.System_IntPtr, // DeclaringTypeId 1006(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_IntPtr, 1007(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 1011(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1014(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 1015(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1019(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1022(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 1023(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1027(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1030(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 1031(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1035(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1038(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1039(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 1043(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1046(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1047(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 1051(byte)SpecialType.System_UIntPtr, // DeclaringTypeId 1054(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UIntPtr, 1055(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 1059(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1066(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1074(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1081(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1084(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1088(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1091(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 1096(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1099(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Nullable_T, 1104(byte)SpecialType.System_Nullable_T, // DeclaringTypeId 1108(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Nullable_T, 1112(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1114(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1118(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1120(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1124(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1126(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1130(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1132(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1136(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1138(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1142(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1144(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1148(byte)SpecialType.System_Runtime_CompilerServices_RuntimeFeature, // DeclaringTypeId 1150(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Field Signature 1154(byte)SpecialType.System_Runtime_CompilerServices_PreserveBaseOverridesAttribute, // DeclaringTypeId 1157(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1161(byte)SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute, // DeclaringTypeId 1164(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1165(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1172(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1177(byte)SpecialType.System_Collections_Generic_IReadOnlyCollection_T, // DeclaringTypeId 1180(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1184(byte)SpecialType.System_Collections_Generic_IReadOnlyList_T, // DeclaringTypeId 1188(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1192(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1195(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1199(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1202(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1206(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1209(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1214(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1217(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1221(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1224(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1229(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1232(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1234(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1238(byte)SpecialType.System_Collections_Generic_ICollection_T, // DeclaringTypeId 1241(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1246(byte)SpecialType.System_Collections_Generic_IList_T, // DeclaringTypeId 1250(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1254(byte)SpecialType.System_Collections_Generic_IList_T, // DeclaringTypeId 1257(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1262(byte)SpecialType.System_Collections_Generic_IList_T, // DeclaringTypeId 1265(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1266(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1271(byte)SpecialType.System_Collections_Generic_IList_T, // DeclaringTypeId 1274(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1275(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1283(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeMethodHandle, 1291(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeMethodHandle, 1292(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeTypeHandle, 1296(byte)SpecialType.System_Array, // DeclaringTypeId 1299(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1303(byte)SpecialType.System_Array, // DeclaringTypeId 1310(byte)SpecialType.System_Array, // DeclaringTypeId 1313(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1314(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1315(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1323(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeTypeHandle, 1330(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1338(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1346(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1354(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1358(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1365(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type
SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
SpecialTypes.cs (38)
91private static readonly SpecialType[] s_typeCodeToTypeIdMap; 107s_typeIdToTypeCodeMap = new Microsoft.Cci.PrimitiveTypeCode[(int)SpecialType.Count + 1]; 114s_typeIdToTypeCodeMap[(int)SpecialType.System_Boolean] = Microsoft.Cci.PrimitiveTypeCode.Boolean; 115s_typeIdToTypeCodeMap[(int)SpecialType.System_Char] = Microsoft.Cci.PrimitiveTypeCode.Char; 116s_typeIdToTypeCodeMap[(int)SpecialType.System_Void] = Microsoft.Cci.PrimitiveTypeCode.Void; 117s_typeIdToTypeCodeMap[(int)SpecialType.System_String] = Microsoft.Cci.PrimitiveTypeCode.String; 118s_typeIdToTypeCodeMap[(int)SpecialType.System_Int64] = Microsoft.Cci.PrimitiveTypeCode.Int64; 119s_typeIdToTypeCodeMap[(int)SpecialType.System_Int32] = Microsoft.Cci.PrimitiveTypeCode.Int32; 120s_typeIdToTypeCodeMap[(int)SpecialType.System_Int16] = Microsoft.Cci.PrimitiveTypeCode.Int16; 121s_typeIdToTypeCodeMap[(int)SpecialType.System_SByte] = Microsoft.Cci.PrimitiveTypeCode.Int8; 122s_typeIdToTypeCodeMap[(int)SpecialType.System_UInt64] = Microsoft.Cci.PrimitiveTypeCode.UInt64; 123s_typeIdToTypeCodeMap[(int)SpecialType.System_UInt32] = Microsoft.Cci.PrimitiveTypeCode.UInt32; 124s_typeIdToTypeCodeMap[(int)SpecialType.System_UInt16] = Microsoft.Cci.PrimitiveTypeCode.UInt16; 125s_typeIdToTypeCodeMap[(int)SpecialType.System_Byte] = Microsoft.Cci.PrimitiveTypeCode.UInt8; 126s_typeIdToTypeCodeMap[(int)SpecialType.System_Single] = Microsoft.Cci.PrimitiveTypeCode.Float32; 127s_typeIdToTypeCodeMap[(int)SpecialType.System_Double] = Microsoft.Cci.PrimitiveTypeCode.Float64; 128s_typeIdToTypeCodeMap[(int)SpecialType.System_IntPtr] = Microsoft.Cci.PrimitiveTypeCode.IntPtr; 129s_typeIdToTypeCodeMap[(int)SpecialType.System_UIntPtr] = Microsoft.Cci.PrimitiveTypeCode.UIntPtr; 131s_typeCodeToTypeIdMap = new SpecialType[(int)Microsoft.Cci.PrimitiveTypeCode.Invalid + 1]; 135s_typeCodeToTypeIdMap[i] = SpecialType.None; 138s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Boolean] = SpecialType.System_Boolean; 139s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Char] = SpecialType.System_Char; 140s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Void] = SpecialType.System_Void; 141s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.String] = SpecialType.System_String; 142s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Int64] = SpecialType.System_Int64; 143s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Int32] = SpecialType.System_Int32; 144s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Int16] = SpecialType.System_Int16; 145s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Int8] = SpecialType.System_SByte; 146s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.UInt64] = SpecialType.System_UInt64; 147s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.UInt32] = SpecialType.System_UInt32; 148s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.UInt16] = SpecialType.System_UInt16; 149s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.UInt8] = SpecialType.System_Byte; 150s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Float32] = SpecialType.System_Single; 151s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.Float64] = SpecialType.System_Double; 152s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.IntPtr] = SpecialType.System_IntPtr; 153s_typeCodeToTypeIdMap[(int)Microsoft.Cci.PrimitiveTypeCode.UIntPtr] = SpecialType.System_UIntPtr; 176public static SpecialType GetTypeFromMetadataName(Microsoft.Cci.PrimitiveTypeCode typeCode) 181public static Microsoft.Cci.PrimitiveTypeCode GetTypeCode(SpecialType typeId)
SymbolDisplay\AbstractSymbolDisplayVisitor.cs (5)
124protected abstract void AddLiteralValue(SpecialType type, object value); 125protected abstract void AddExplicitlyCastedLiteralValue(INamedTypeSymbol namedType, SpecialType type, object value); 237var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 316var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 336var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
Symbols\Attributes\CommonAttributeData.cs (31)
147internal T? GetConstructorArgument<T>(int i, SpecialType specialType) 165internal T? DecodeNamedArgument<T>(string name, SpecialType specialType, T? defaultValue = default) 170private static T? DecodeNamedArgument<T>(ImmutableArray<KeyValuePair<string, TypedConstant>> namedArguments, string name, SpecialType specialType, T? defaultValue = default) 208Debug.Assert(parameters[0].Type.SpecialType == SpecialType.System_Byte); 209Debug.Assert(parameters[1].Type.SpecialType == SpecialType.System_Byte); 213byte scale = args[0].DecodeValue<byte>(SpecialType.System_Byte); 214bool isNegative = args[1].DecodeValue<byte>(SpecialType.System_Byte) != 0; 216if (parameters[2].Type.SpecialType == SpecialType.System_Int32) 218Debug.Assert(parameters[2].Type.SpecialType == SpecialType.System_Int32); 219Debug.Assert(parameters[3].Type.SpecialType == SpecialType.System_Int32); 220Debug.Assert(parameters[4].Type.SpecialType == SpecialType.System_Int32); 222high = args[2].DecodeValue<int>(SpecialType.System_Int32); 223mid = args[3].DecodeValue<int>(SpecialType.System_Int32); 224low = args[4].DecodeValue<int>(SpecialType.System_Int32); 228Debug.Assert(parameters[2].Type.SpecialType == SpecialType.System_UInt32); 229Debug.Assert(parameters[3].Type.SpecialType == SpecialType.System_UInt32); 230Debug.Assert(parameters[4].Type.SpecialType == SpecialType.System_UInt32); 232high = unchecked((int)args[2].DecodeValue<uint>(SpecialType.System_UInt32)); 233mid = unchecked((int)args[3].DecodeValue<uint>(SpecialType.System_UInt32)); 234low = unchecked((int)args[4].DecodeValue<uint>(SpecialType.System_UInt32)); 242long value = this.CommonConstructorArguments[0].DecodeValue<long>(SpecialType.System_Int64); 414if (attribute.AttributeConstructor.Parameters[0].Type.SpecialType == SpecialType.System_Int16) 416options = (MethodImplOptions)attribute.CommonConstructorArguments[0].DecodeValue<short>(SpecialType.System_Int16); 420options = attribute.CommonConstructorArguments[0].DecodeValue<MethodImplOptions>(SpecialType.System_Enum); 453var value = (MethodImplAttributes)namedArg.Value.DecodeValue<int>(SpecialType.System_Enum); 490LayoutKind kind = attribute.CommonConstructorArguments[0].DecodeValue<LayoutKind>(SpecialType.System_Enum); 510charSet = namedArg.Value.DecodeValue<CharSet>(SpecialType.System_Enum); 531alignment = namedArg.Value.DecodeValue<int>(SpecialType.System_Int32); 543size = namedArg.Value.DecodeValue<int>(Microsoft.CodeAnalysis.SpecialType.System_Int32); 593bool allowMultiple = DecodeNamedArgument(namedArgs, "AllowMultiple", SpecialType.System_Boolean, false); 594bool inherited = DecodeNamedArgument(namedArgs, "Inherited", SpecialType.System_Boolean, true);
Symbols\Attributes\MarshalAsAttributeDecoder.cs (13)
102if (attribute.AttributeConstructor.Parameters[0].Type.SpecialType == SpecialType.System_Int16) 104unmanagedType = (UnmanagedType)attribute.CommonConstructorArguments[0].DecodeValue<short>(SpecialType.System_Int16); 108unmanagedType = attribute.CommonConstructorArguments[0].DecodeValue<UnmanagedType>(SpecialType.System_Enum); 131typeName = namedArg.Value.DecodeValue<string>(SpecialType.System_String); 142typeSymbol = namedArg.Value.DecodeValue<ITypeSymbolInternal>(SpecialType.None); 147cookie = namedArg.Value.DecodeValue<string>(SpecialType.System_String); 187parameterIndex = namedArg.Value.DecodeValue<int>(SpecialType.System_Int32); 223elementType = namedArg.Value.DecodeValue<UnmanagedType>(SpecialType.System_Enum); 237elementCount = namedArg.Value.DecodeValue<int>(SpecialType.System_Int32); 252parameterIndex = namedArg.Value.DecodeValue<short>(SpecialType.System_Int16); 311elementTypeVariant = namedArg.Value.DecodeValue<Cci.VarEnum>(SpecialType.System_Enum); 321elementTypeSymbol = namedArg.Value.DecodeValue<ITypeSymbolInternal>(SpecialType.None); 379elementCount = namedArg.Value.DecodeValue<int>(SpecialType.System_Int32);
Symbols\INamedTypeSymbolInternal.cs (20)
45case SpecialType.System_Void: 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_SByte: 49case SpecialType.System_Byte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Decimal: 57case SpecialType.System_Single: 58case SpecialType.System_Double: 59case SpecialType.System_IntPtr: 60case SpecialType.System_UIntPtr: 61case SpecialType.System_ArgIterator: 62case SpecialType.System_RuntimeArgumentHandle: 64case SpecialType.System_TypedReference: 66case SpecialType.None:
Symbols\ITypeSymbol.cs (5)
101/// Returns <see cref="Microsoft.CodeAnalysis.SpecialType.None"/> if the type is not special. 103SpecialType SpecialType { get; } 222return typeOpt?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 238return type?.SpecialType == SpecialType.System_Boolean; 243return type?.SpecialType == SpecialType.System_Object;
Symbols\ITypeSymbolInternal.cs (2)
18/// Returns <see cref="Microsoft.CodeAnalysis.SpecialType.None"/> if the type is not special. 20SpecialType SpecialType { get; }
Symbols\TypedConstant.cs (17)
129internal T? DecodeValue<T>(SpecialType specialType) 135internal bool TryDecodeValue<T>(SpecialType specialType, [MaybeNullWhen(false)] out T value) 143if (_type!.SpecialType == specialType || (_type.TypeKind == TypeKind.Enum && specialType == SpecialType.System_Enum)) 164case SpecialType.System_Boolean: 165case SpecialType.System_SByte: 166case SpecialType.System_Int16: 167case SpecialType.System_Int32: 168case SpecialType.System_Int64: 169case SpecialType.System_Byte: 170case SpecialType.System_UInt16: 171case SpecialType.System_UInt32: 172case SpecialType.System_UInt64: 173case SpecialType.System_Single: 174case SpecialType.System_Double: 175case SpecialType.System_Char: 176case SpecialType.System_String: 177case SpecialType.System_Object:
WellKnownMembers.cs (880)
25(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 26(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 33(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 34(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 35(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 42(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 43(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 50(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 51(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 58(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 59(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 66(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 67(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 74(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 75(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 82(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 83(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 90(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 91(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 98(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, // Return Type 99(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 106(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, // Return Type 107(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 114(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, // Return Type 115(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 122(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Return Type 123(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 130(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Return Type 131(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 138(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Return Type 139(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 146(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Return Type 147(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 154(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Return Type 155(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 162(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Return Type 163(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 170(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Return Type 171(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 178(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Return Type 179(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 186(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Return Type 187(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 194(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 195(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 202(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 203(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 210(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 211(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 218(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Return Type 219(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 226(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Return Type 227(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 234(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Return Type 235(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 242(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, // Return Type 243(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 250(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, // Return Type 251(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 258(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, // Return Type 259(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 266(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 267(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 274(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 275(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 282(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 283(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 290(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Return Type 291(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 298(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 299(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 306(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 307(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 314(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 321(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 322(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 338(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeTypeHandle, 344(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Field Signature 351(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 360(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 361(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 368(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 369(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 377(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeMethodHandle, 385(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeMethodHandle, 386(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeTypeHandle, 393(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, // Return Type 395(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 403(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeFieldHandle, 411(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeFieldHandle, 412(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeTypeHandle, 425(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 433(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 442(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 451(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 466(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 474(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 481(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 488(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 495(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 502(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 503(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 510(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 517(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 518(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 525(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 532(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 539(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 546(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 554(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 561(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 593(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 594(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 601(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 602(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 609(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 617(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 625(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 627(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 634(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 635(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 636(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 643(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 644(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 645(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Delegate, 652(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 661(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 662(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 669(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 670(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 677(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 678(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 685(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 686(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 693(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 701(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 702(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, 717(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 724(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 725(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 726(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 733(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 734(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 741(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 742(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 749(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 750(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 757(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 770(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 782(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 818(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 826(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 843(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 854(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 866(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 867(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 874(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 875(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 876(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 877(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 878(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 879(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 886(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 887(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 888(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 889(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 890(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 891(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 898(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 905(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 912(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 913(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 920(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 921(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 928(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 935(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 942(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 949(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 951(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 958(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 965(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 966(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 994(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeFieldHandle, 1001(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1002(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1009(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1010(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Array, 1011(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_RuntimeFieldHandle, 1018(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1034(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1043(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1074(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1081(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1094(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1102(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1109(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1124(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1125(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1126(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1127(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1144(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1145(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1152(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1153(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1154(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1161(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 1162(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1176(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1188(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1211(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1222(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1225(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1238(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1251(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1262(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1264(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1269(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1280(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1292(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1303(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1306(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1320(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 1331(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1338(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Return Type 1339(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1346(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1347(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1354(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, // Return Type 1355(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1362(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Return Type 1363(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1370(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Return Type 1371(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1378(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Return Type 1379(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1386(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1387(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1394(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Return Type 1395(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1402(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, // Return Type 1403(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1410(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 1411(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1418(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Return Type 1419(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1426(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 1427(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1434(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Return Type 1435(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1442(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, // Return Type 1443(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1450(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, // Return Type 1451(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1458(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 1459(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1466(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1467(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1474(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1475(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 1482(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1483(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 1490(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1491(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, 1498(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1499(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, 1506(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1507(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, 1514(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1515(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, 1522(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1523(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 1530(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1531(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, 1538(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1539(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, 1546(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1547(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 1554(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 1555(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1562(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1563(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1570(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_SByte, // Return Type 1571(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1578(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Return Type 1579(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1586(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Return Type 1587(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1594(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Return Type 1595(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1602(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1603(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1610(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Return Type 1611(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1618(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int64, // Return Type 1619(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1626(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 1627(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1634(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Return Type 1635(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1642(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 1643(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1650(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Return Type 1651(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1658(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_DateTime, // Return Type 1659(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1666(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, // Return Type 1667(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1674(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 1675(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1683(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1690(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1691(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1699(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1700(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1707(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1708(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1715(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1716(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1723(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1724(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1725(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1732(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1733(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1734(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1741(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1742(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1743(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1750(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1751(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1752(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1759(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1760(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1761(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1768(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1769(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1770(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1777(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1778(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1779(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1786(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1787(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1788(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1795(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1796(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1797(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1804(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1805(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1806(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1813(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1814(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1815(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1822(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1823(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1824(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1831(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1832(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1833(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1840(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1841(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1842(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1843(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1850(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1851(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1852(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1853(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1860(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1861(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1862(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1863(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1870(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1871(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1872(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1873(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1880(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1881(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1882(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1883(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1890(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1891(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1892(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1893(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1900(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1901(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1902(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1903(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1910(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1911(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1912(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1913(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1920(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1921(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1922(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1923(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1930(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1931(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1932(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1933(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1940(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1941(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1942(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1943(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1950(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 1951(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1952(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1953(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1960(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1961(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1962(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1963(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1970(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 1971(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1972(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1973(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1980(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1981(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1983(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1984(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1985(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1987(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1988(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 1995(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 1996(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 1998(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 1999(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2000(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2002(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2009(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2010(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2012(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2013(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2014(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2022(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2023(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2025(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2026(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2027(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2029(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2030(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2037(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 2038(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2039(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2040(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2047(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2048(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2049(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2050(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2057(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2058(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2059(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2060(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2061(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2062(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2069(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2076(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2082(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Field Signature 2089(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2090(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2091(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2092(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2093(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2100(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2107(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2114(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Array, // Return Type 2115(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Array, 2116(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Array, 2123(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2124(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2125(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2133(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 2134(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2135(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2144(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2151(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2159(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2161(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2168(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2175(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2182(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2183(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2184(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2185(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2186(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2187(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2188(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2195(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2196(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2197(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2198(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2205(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2206(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2213(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 2214(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2215(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2217(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2224(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2225(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2232(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2233(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2240(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2241(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2248(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2249(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2256(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2257(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2264(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2265(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2272(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2273(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2280(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 2281(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2288(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 2289(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2290(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2292(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2299(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2306(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2321(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2329(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2336(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2338(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2345(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2347(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2354(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2362(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2377(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2385(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2392(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2394(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2401(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2403(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2410(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2418(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2440(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2448(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2456(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2458(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2465(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2467(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 2474(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2482(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2500(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2508(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2516(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 2517(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 2524(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 2525(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2532(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 2533(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 2540(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 2541(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2548(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 2549(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2556(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, // Return Type 2557(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2564(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2566(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2573(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2575(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 2583(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2590(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2598(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 2605(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2835(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2843(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2852(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2862(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2873(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2885(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2898(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2912(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2928(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 2929(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 2936(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2938(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2939(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2940(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2941(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2948(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 2950(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2951(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2952(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 2953(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 2961(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Method id 2969(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Method id 2970(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Lambda id 2978(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Method id 2979(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // State machine instance id 2987(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Method id 2988(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Lambda id 2989(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // State machine instance id 2996(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3003(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Return Type 3010(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3011(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Value 3012(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3019(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3020(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Value 3021(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3028(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3029(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Value 3030(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3037(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3038(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Value 3039(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3046(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3047(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Value 3048(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3055(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3056(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Value 3057(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3064(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3065(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Value 3066(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3073(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3074(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Value 3075(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3082(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3083(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Value 3084(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3091(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3092(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Value 3093(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3100(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3101(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Value 3102(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3109(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3110(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Value address 3111(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Size 3112(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3119(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3120(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Source parameter index 3121(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Target local index 3128(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3129(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean,// Value 3130(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3137(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3138(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Value 3139(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3146(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3147(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt16, // Value 3148(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3155(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3156(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt32, // Value 3157(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3164(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3165(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_UInt64, // Value 3166(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3173(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3174(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Value 3175(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3182(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3183(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Value 3184(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3191(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3192(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Decimal, // Value 3193(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3200(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3201(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Value 3202(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3209(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3210(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Value 3211(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3218(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3219(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Value 3220(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Local index 3227(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3228(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Value address 3229(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Size 3230(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Parameter index 3237(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3238(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Source parameter index 3239(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Target parameter index 3246(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3247(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Source local index 3248(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Target local index 3255(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3256(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 3263(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3264(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 3271(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3272(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, 3280(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3281(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 3288(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3295(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3302(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3309(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3316(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3317(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 3318(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 3325(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3326(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3327(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3334(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3342(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3351(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3358(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 3369(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3370(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3377(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3378(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3379(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3386(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3394(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3396(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3397(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3404(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3413(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3420(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 3431(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3432(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3439(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3446(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Return type 3447(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Number As System.Single 3454(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return type 3455(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Number As System.Double 3462(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Return type 3463(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Single, // Number As System.Single 3470(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return type 3471(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Number As System.Double 3478(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 3479(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 3486(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 3487(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 3494(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, // Return Type 3495(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Double, 3502(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3503(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3504(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 3511(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3512(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3519(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3565(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3595(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 3610(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3618(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3625(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3629(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 3630(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Argument 3631(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument 3639(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3646(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3654(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3662(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, 3670(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3678(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3685(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3689(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 3690(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Argument 3691(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument 3699(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3700(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3708(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument: short 3715(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3719(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 3720(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Argument 3721(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument 3729(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3734(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument 3741(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3749(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3751(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int16, // Argument 3765(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3772(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3774(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 3781(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3783(byte)SignatureTypeCode.ByReference, (byte)SignatureTypeCode.GenericMethodParameter, (byte)SpecialType.System_Object, 3790(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3798(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 3799(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3806(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 3813(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3814(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 3821(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3828(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3835(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 3836(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 3843(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 3851(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3874(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type, 3881(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3882(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Argument 3889(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3896(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3897(byte)SignatureTypeCode.SZArray, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 3905(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 3913(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 3921(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 3928(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3935(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 3942(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3949(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3956(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3963(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3964(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3971(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3972(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 3979(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3986(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 3993(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 4008(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 4026(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Char, 4027(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 4034(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4035(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 4042(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4049(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 4056(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 4063(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4064(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 4065(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4072(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4080(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4087(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 4094(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 4101(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 4108(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4109(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Array, 4110(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4117(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, // Return Type 4118(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4125(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 4132(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 4139(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 4140(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4147(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4154(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 4155(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4162(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 4163(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4170(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4171(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4172(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4179(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4180(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4187(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4188(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4195(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, 4202(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4203(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4210(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4218(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 4225(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, // Return Type 4233(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4235(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4243(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4250(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Return Type 4279(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4284(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 4316(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4327(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4357(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4359(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 4368(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4375(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type 4376(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 4388(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 4399(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 4427(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Object, 4506(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 4527(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Collections_Generic_IEnumerable_T, 4650(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, 5101(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5121(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5141(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5161(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5181(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5201(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Boolean, 5234(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_String, // Return Type 5235(byte)SignatureTypeCode.Pointer, (byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Byte, // Argument: byte* 5236(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, // Argument: int 5247(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5258(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5269(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5270(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5281(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5292(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5293(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5304(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Int32, 5311(byte)SignatureTypeCode.TypeHandle, (byte)SpecialType.System_Void, // Return Type
WellKnownTypes.cs (1)
18Unknown = SpecialType.None,
Microsoft.CodeAnalysis.Analyzers (462)
MetaAnalyzers\CompareSymbolsCorrectlyAnalyzer.cs (3)
135&& containingType.SpecialType != SpecialType.System_Object) 298operation.Type.SpecialType != SpecialType.System_Object) 323return conversion.Type?.SpecialType == SpecialType.System_Object;
MetaAnalyzers\CompilerExtensionStrictApiAnalyzer.cs (1)
203if (argument is { Kind: TypedConstantKind.Primitive, Type.SpecialType: SpecialType.System_String })
MetaAnalyzers\DiagnosticAnalyzerAttributeAnalyzer.cs (1)
151argument.Type.SpecialType == SpecialType.System_String)
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer.cs (5)
550method.Parameters[0].Type.SpecialType == SpecialType.System_String; 572firstParamArgument.Parameter?.Type.SpecialType == SpecialType.System_String && 600invocation.Arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String && 628if (titleArgument.Parameter?.Type.SpecialType == SpecialType.System_String) 1207argument.Value.Type.SpecialType == SpecialType.System_String &&
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer_IdRangeAndCategoryValidation.cs (2)
155argument.Value.Type.SpecialType == SpecialType.System_String && 162fieldReference.Field.Type.SpecialType == SpecialType.System_String)
MetaAnalyzers\Fixers\CompareSymbolsCorrectlyFix.cs (1)
274generator.TypeExpression(semanticModel.Compilation.GetSpecialType(SpecialType.System_Object)),
MetaAnalyzers\PreferIsKindAnalyzer.cs (1)
82if (conditionalAccess.Operation.Type!.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (19)
339(binaryOperation.Type.SpecialType == SpecialType.System_Boolean && 373SpecialType.System_Boolean 374or SpecialType.System_Byte 375or SpecialType.System_Char 376or SpecialType.System_Double 377or SpecialType.System_Int16 378or SpecialType.System_Int32 379or SpecialType.System_Int64 380or SpecialType.System_UInt16 381or SpecialType.System_UInt32 382or SpecialType.System_UInt64 383or SpecialType.System_IntPtr 384or SpecialType.System_UIntPtr 385or SpecialType.System_SByte 386or SpecialType.System_Single 387or SpecialType.System_String 388or SpecialType.System_Object 389or SpecialType.System_ValueType 390or SpecialType.System_Void => true,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DiagnosticHelpers.cs (11)
11public static bool TryConvertToUInt64(object? value, SpecialType specialType, out ulong convertedValue) 19case SpecialType.System_Int16: 23case SpecialType.System_Int32: 27case SpecialType.System_Int64: 31case SpecialType.System_UInt16: 35case SpecialType.System_UInt32: 39case SpecialType.System_UInt64: 43case SpecialType.System_Byte: 47case SpecialType.System_SByte: 51case SpecialType.System_Char: 55case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DoNotCatchGeneralUnlessRethrown.cs (1)
104compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IMethodSymbolExtensions.cs (16)
31method.ReturnType.SpecialType == SpecialType.System_Boolean && 33method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 43method.ContainingType.SpecialType == SpecialType.System_Object && 46method.ReturnType.SpecialType == SpecialType.System_Boolean && 48method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 58method.ContainingType.SpecialType == SpecialType.System_Object && 60method.ReturnType.SpecialType == SpecialType.System_Boolean && 61method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 62method.Parameters[1].Type.SpecialType == SpecialType.System_Object && 74if (overriddenMethod.ContainingType.SpecialType == SpecialType.System_Object) 185Name: "Dispose", MethodKind: MethodKind.Ordinary, ReturnsVoid: true, Parameters: [{ Type.SpecialType: SpecialType.System_Boolean, RefKind: RefKind.None }] 230method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 397method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean && 411method.Parameters[1].Type.SpecialType == SpecialType.System_Boolean && 490method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 530method.ReturnType.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (16)
22SpecialType.System_Boolean 23or SpecialType.System_Byte 24or SpecialType.System_Char 25or SpecialType.System_Double 26or SpecialType.System_Int16 27or SpecialType.System_Int32 28or SpecialType.System_Int64 29or SpecialType.System_UInt16 30or SpecialType.System_UInt32 31or SpecialType.System_UInt64 32or SpecialType.System_SByte 33or SpecialType.System_Single 34or SpecialType.System_String => true, 249=> typeSymbol.IsValueType || typeSymbol.SpecialType == SpecialType.System_String; 257=> typeSymbol != null && typeSymbol.IsValueType && typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (4)
330generator.TypeExpression(SpecialType.System_Boolean), 386generator.ParameterDeclaration(argumentName.ToString(), generator.TypeExpression(SpecialType.System_Object)) 388returnType: generator.TypeExpression(SpecialType.System_Boolean), 409returnType: generator.TypeExpression(SpecialType.System_Int32),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (5)
14protected abstract SyntaxNode CreateExplicitlyCastedLiteralValue(INamedTypeSymbol enumType, SpecialType underlyingSpecialType, object constantValue); 77var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 171var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 187var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (12)
83public static bool IsSpecialType([NotNullWhen(true)] ITypeSymbol? type, SpecialType specialType) 136SpecialType.System_SByte => value is sbyte, 137SpecialType.System_Byte => value is byte, 138SpecialType.System_Int16 => value is short, 139SpecialType.System_UInt16 => value is ushort, 140SpecialType.System_Int32 => value is int, 141SpecialType.System_UInt32 => value is uint, 142SpecialType.System_Int64 => value is long, 143SpecialType.System_UInt64 => value is ulong, 144SpecialType.System_Decimal => value is decimal, 145SpecialType.System_Single => value is float, 146SpecialType.System_Double => value is double,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
422SpecialType specialType = SpecialType.None, 441SpecialType specialType = SpecialType.None, 493specialType: SpecialType.None,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\LiteralSpecialValues.cs (11)
16public static bool HasSpecialValues(SpecialType specialType) 20case SpecialType.System_SByte: 21case SpecialType.System_Int16: 22case SpecialType.System_UInt16: 23case SpecialType.System_Int32: 24case SpecialType.System_UInt32: 25case SpecialType.System_Int64: 26case SpecialType.System_UInt64: 27case SpecialType.System_Single: 28case SpecialType.System_Double: 29case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
29SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationArrayTypeSymbol.cs (1)
10internal sealed class CodeGenerationArrayTypeSymbol(ITypeSymbol elementType, int rank, NullableAnnotation nullableAnnotation) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, nullableAnnotation), IArrayTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationMethodSymbol.cs (1)
75=> this.ReturnType == null || this.ReturnType.SpecialType == SpecialType.System_Void;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationNamedTypeSymbol.cs (1)
34SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationPointerTypeSymbol.cs (1)
9internal sealed class CodeGenerationPointerTypeSymbol(ITypeSymbol pointedAtType) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, NullableAnnotation.None), IPointerTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeParameterSymbol.cs (1)
24int ordinal) : CodeGenerationTypeSymbol(containingType?.ContainingAssembly, containingType, attributes, Accessibility.NotApplicable, default, name, SpecialType.None, nullableAnnotation), ITypeParameterSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (2)
19SpecialType specialType, 23public SpecialType SpecialType { get; protected set; } = specialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
85_ => compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (19)
58parameterType ??= compilation.GetSpecialType(SpecialType.System_Object); 66returnType: compilation.GetSpecialType(SpecialType.System_Boolean), 436case SpecialType.System_Boolean: 437case SpecialType.System_Char: 438case SpecialType.System_SByte: 439case SpecialType.System_Byte: 440case SpecialType.System_Int16: 441case SpecialType.System_UInt16: 442case SpecialType.System_Int32: 443case SpecialType.System_UInt32: 444case SpecialType.System_Int64: 445case SpecialType.System_UInt64: 446case SpecialType.System_Decimal: 447case SpecialType.System_Single: 448case SpecialType.System_Double: 449case SpecialType.System_String: 450case SpecialType.System_DateTime: 468method.ReturnType.SpecialType == SpecialType.System_Boolean && 469method.Parameters[0].Type.SpecialType == SpecialType.System_Object &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateGetHashCodeMethod.cs (4)
136? factory.SimpleLocalDeclarationStatement(generatorInternal, compilation.GetSpecialType(SpecialType.System_Int32), HashCodeName, CreateLiteralExpression(factory, initHash)) 137: factory.LocalDeclarationStatement(compilation.GetSpecialType(SpecialType.System_Int64), HashCodeName, CreateLiteralExpression(factory, initHash))); 166compilation.GetSpecialType(SpecialType.System_Int32), 210method.ReturnType.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_Negate.cs (12)
60SpecialType? patternValueType, 182else if (operation is IIsTypeOperation { TypeOperand.SpecialType: SpecialType.System_Object } && generatorInternal.SupportsPatterns(semanticModel.SyntaxTree.Options)) 303SpecialType? patternValueType) 305if (patternValueType is SpecialType specialType && specialType.IsNumericType()) 445if (containingType?.SpecialType == SpecialType.System_Array || 446containingType?.SpecialType == SpecialType.System_String) 456case SpecialType.System_Byte: 457case SpecialType.System_UInt16: 458case SpecialType.System_UInt32: 459case SpecialType.System_UInt64: 501SpecialType? patternValueType) 508if (patternValueType == SpecialType.System_Boolean)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (2)
78protected IEnumerable<TypeInferenceInfo> CreateResult(SpecialType type, NullableAnnotation nullableAnnotation = NullableAnnotation.None) 120symbol.ContainingType?.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.cs (1)
46? [semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean)]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Simplification\SimplificationHelpers.cs (2)
77var specialType = SpecialTypeAnnotation.GetSpecialType(annotation2); 78if (specialType != SpecialType.None)
Microsoft.CodeAnalysis.AnalyzerUtilities (437)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (19)
339(binaryOperation.Type.SpecialType == SpecialType.System_Boolean && 373SpecialType.System_Boolean 374or SpecialType.System_Byte 375or SpecialType.System_Char 376or SpecialType.System_Double 377or SpecialType.System_Int16 378or SpecialType.System_Int32 379or SpecialType.System_Int64 380or SpecialType.System_UInt16 381or SpecialType.System_UInt32 382or SpecialType.System_UInt64 383or SpecialType.System_IntPtr 384or SpecialType.System_UIntPtr 385or SpecialType.System_SByte 386or SpecialType.System_Single 387or SpecialType.System_String 388or SpecialType.System_Object 389or SpecialType.System_ValueType 390or SpecialType.System_Void => true,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DiagnosticHelpers.cs (11)
11public static bool TryConvertToUInt64(object? value, SpecialType specialType, out ulong convertedValue) 19case SpecialType.System_Int16: 23case SpecialType.System_Int32: 27case SpecialType.System_Int64: 31case SpecialType.System_UInt16: 35case SpecialType.System_UInt32: 39case SpecialType.System_UInt64: 43case SpecialType.System_Byte: 47case SpecialType.System_SByte: 51case SpecialType.System_Char: 55case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DoNotCatchGeneralUnlessRethrown.cs (1)
104compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IMethodSymbolExtensions.cs (16)
31method.ReturnType.SpecialType == SpecialType.System_Boolean && 33method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 43method.ContainingType.SpecialType == SpecialType.System_Object && 46method.ReturnType.SpecialType == SpecialType.System_Boolean && 48method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 58method.ContainingType.SpecialType == SpecialType.System_Object && 60method.ReturnType.SpecialType == SpecialType.System_Boolean && 61method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 62method.Parameters[1].Type.SpecialType == SpecialType.System_Object && 74if (overriddenMethod.ContainingType.SpecialType == SpecialType.System_Object) 185Name: "Dispose", MethodKind: MethodKind.Ordinary, ReturnsVoid: true, Parameters: [{ Type.SpecialType: SpecialType.System_Boolean, RefKind: RefKind.None }] 230method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 397method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean && 411method.Parameters[1].Type.SpecialType == SpecialType.System_Boolean && 490method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 530method.ReturnType.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (16)
22SpecialType.System_Boolean 23or SpecialType.System_Byte 24or SpecialType.System_Char 25or SpecialType.System_Double 26or SpecialType.System_Int16 27or SpecialType.System_Int32 28or SpecialType.System_Int64 29or SpecialType.System_UInt16 30or SpecialType.System_UInt32 31or SpecialType.System_UInt64 32or SpecialType.System_SByte 33or SpecialType.System_Single 34or SpecialType.System_String => true, 249=> typeSymbol.IsValueType || typeSymbol.SpecialType == SpecialType.System_String; 257=> typeSymbol != null && typeSymbol.IsValueType && typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysis.DisposeDataFlowOperationVisitor.cs (2)
194invocation.TargetMethod.ReturnType.SpecialType == SpecialType.System_Boolean && 343invocation.TargetMethod.ReturnType.SpecialType == SpecialType.System_Boolean)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToDataFlowOperationVisitor.cs (2)
1000method.ContainingType.SpecialType != SpecialType.None || 1021(symbol.ContainingType.SpecialType != SpecialType.None ||
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\TaintedDataAnalysis\HardcodedBytesSources.cs (4)
50arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String, 63arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String, 79arrayTypeSymbol.ElementType.SpecialType == SpecialType.System_Char, 88arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String,
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\TaintedDataAnalysis\HardcodedSymmetricAlgorithmKeysSources.cs (4)
59arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String, 72arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String, 89arrayTypeSymbol.ElementType.SpecialType == SpecialType.System_Char, 96arguments[0].Parameter?.Type.SpecialType == SpecialType.System_String,
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\TaintedDataAnalysis\StringTransferSources.cs (7)
38(firstParameter.Type.SpecialType == SpecialType.System_String || 39firstParameter.Type.SpecialType == SpecialType.System_Char || 42arrayType.ElementType.SpecialType == SpecialType.System_Char) || 44pointerType.PointedAtType.SpecialType == SpecialType.System_Char)), 87(secondParameter.Type.SpecialType == SpecialType.System_String || 88secondParameter.Type.SpecialType == SpecialType.System_Char || 91arrayType.ElementType.SpecialType == SpecialType.System_Char)),
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\TaintedDataAnalysis\TaintedDataAnalysis.TaintedDataOperationVisitor.cs (1)
697&& taintedArgument.Parameter.Type.SpecialType == SpecialType.System_String)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\ValueContentAnalysis\ValueContentAbstractValue.cs (42)
47case SpecialType.System_Byte: 48case SpecialType.System_Double: 49case SpecialType.System_Int16: 50case SpecialType.System_Int32: 51case SpecialType.System_Int64: 52case SpecialType.System_UInt16: 53case SpecialType.System_UInt32: 54case SpecialType.System_UInt64: 55case SpecialType.System_SByte: 56case SpecialType.System_Single: 65case SpecialType.System_String: 73case SpecialType.System_Boolean: 302case SpecialType.System_String: 303return type2.SpecialType == SpecialType.System_String && 306case SpecialType.System_Char: 307return type2.SpecialType == SpecialType.System_Char && 310case SpecialType.System_Boolean: 311return type2.SpecialType == SpecialType.System_Boolean && 314case SpecialType.System_Byte: 315case SpecialType.System_Int16: 316case SpecialType.System_Int32: 317case SpecialType.System_Int64: 318case SpecialType.System_UInt16: 319case SpecialType.System_UInt32: 320case SpecialType.System_SByte: 321case SpecialType.System_UInt64: 328case SpecialType.System_SByte: 332case SpecialType.System_Int16: 336case SpecialType.System_Int32: 340case SpecialType.System_Int64: 344case SpecialType.System_Byte: 348case SpecialType.System_UInt16: 352case SpecialType.System_UInt32: 356case SpecialType.System_UInt64: 360case SpecialType.System_Boolean: 368case SpecialType.System_Double: 369case SpecialType.System_Single: 372case SpecialType.System_Single: 373case SpecialType.System_Double: 378case SpecialType.System_Single: 382case SpecialType.System_Double: 386case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\ValueContentAnalysis\ValueContentAnalysis.ValueContentDataFlowOperationVisitor.cs (2)
244var incrementValueType = WellKnownTypeProvider.Compilation.GetSpecialType(SpecialType.System_Int32); 262operation.Field.ContainingType.SpecialType == SpecialType.System_String)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntity.cs (2)
295=> Type.SpecialType == SpecialType.System_Boolean || 297Type.Language == LanguageNames.VisualBasic && Type.SpecialType == SpecialType.System_Object;
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityFactory.cs (1)
416type ??= _wellKnownTypeProvider.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (7)
350method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 747if (branch.BranchValue.Type?.SpecialType == SpecialType.System_Boolean && 993var validationMethods = requiresMethods.Concat(assumeMethods).Concat(assertMethods).OfType<IMethodSymbol>().Where(m => m.IsStatic && m.ReturnsVoid && !m.Parameters.IsEmpty && (m.Parameters[0].Type.SpecialType == SpecialType.System_Boolean)); 1697if (invocation.Type?.SpecialType != SpecialType.System_Boolean) 1861operation.Type?.SpecialType == SpecialType.System_Boolean && 2405argument.Parameter?.Type.SpecialType == SpecialType.System_Object) 3231operation.Type?.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\ThrownExceptionInfo.cs (1)
55nestedRegion.ExceptionType.SpecialType == SpecialType.System_Object ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
Microsoft.CodeAnalysis.CodeStyle (334)
src\roslyn\src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (7)
98if (collectionElementType.SpecialType == SpecialType.System_Object) 100var ienumerableOfT = collectionType.AllInterfaces.FirstOrDefault(i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T); 141var isFixable = collectionType.SpecialType == SpecialType.System_Collections_IEnumerable || collectionType.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 157=> collectionElementType.SpecialType != SpecialType.System_Object || 158collectionType.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T || 159collectionType.AllInterfaces.Any(static i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T);
src\roslyn\src\Analyzers\Core\Analyzers\Helpers\HashCodeAnalyzer\HashCodeAnalyzer.cs (1)
30var objectType = compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\AbstractPopulateSwitchDiagnosticAnalyzer.cs (2)
97if (typeWithoutNullable.SpecialType == SpecialType.System_Boolean) 105if (type.RemoveNullableIfPresent() is not { SpecialType: SpecialType.System_Boolean })
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveRedundantEquality\AbstractRemoveRedundantEqualityDiagnosticAnalyzer.cs (2)
88if (leftType?.SpecialType != SpecialType.System_Boolean || 89rightType?.SpecialType != SpecialType.System_Boolean)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnnecessarySuppressions\AbstractRemoveUnnecessaryPragmaSuppressionsDiagnosticAnalyzer.cs (2)
849attribute.AttributeConstructor?.Parameters is [_, { Name: "checkId", Type.SpecialType: SpecialType.System_String }, ..] && 858attribute.AttributeConstructor.Parameters[0].Type.SpecialType == SpecialType.System_String &&
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (3)
902if (attribute.ConstructorArguments is [{ Kind: TypedConstantKind.Primitive, Type.SpecialType: SpecialType.System_String, Value: string value }]) 913Value: { Kind: TypedConstantKind.Primitive, Type.SpecialType: SpecialType.System_String, Value: string namedValue }, 1078(IsSpecialMethodWithMatchingProperty("ShouldSerialize") && methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean ||
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedParametersAndValues\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (1)
177value.Type.SpecialType == SpecialType.System_Void)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedParametersAndValues\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (3)
233method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 273if (method is { MetadataName: "GetInstance", IsStatic: true, Parameters: [{ Type.SpecialType: SpecialType.System_String }] } && 295if (parameter.Type.SpecialType != SpecialType.System_Int32)
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyBooleanExpression\AbstractSimplifyConditionalDiagnosticAnalyzer.cs (2)
154typeInfo.Type?.SpecialType == SpecialType.System_Boolean && 155typeInfo.ConvertedType?.SpecialType == SpecialType.System_Boolean;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationDiagnosticAnalyzer.cs (1)
39var readOnlySpanOfCharType = compilation.ReadOnlySpanOfTType()?.Construct(compilation.GetSpecialType(SpecialType.System_Char));
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationHelpers.cs (2)
35var dateTimeType = compilation.GetSpecialType(SpecialType.System_DateTime); 200return method.ContainingType.SpecialType == SpecialType.System_Object
src\roslyn\src\Analyzers\Core\Analyzers\UseIsNullCheck\AbstractUseIsNullForReferenceEqualsDiagnosticAnalyzer.cs (1)
34var objectType = context.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer.cs (5)
26ContainingType.OriginalDefinition.SpecialType: SpecialType.System_Nullable_T, 85var objectType = compilation.GetSpecialType(SpecialType.System_Object); 199if (type is not INamedTypeSymbol namedType || namedType.ConstructedFrom.SpecialType != SpecialType.System_Nullable_T) 240var whenPartIsNullable = whenPartType?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 420if (typeSymbol?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer_IfStatement.cs (1)
144var whenPartIsNullable = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
src\roslyn\src\Analyzers\Core\Analyzers\ValidateFormatString\AbstractValidateFormatStringDiagnosticAnalyzer.cs (1)
303if (containingType.SpecialType != SpecialType.System_String)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
Microsoft.CodeAnalysis.CodeStyle.Fixes (99)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateConstructor\AbstractGenerateConstructorService.State.cs (9)
381case SpecialType.System_Boolean: 382case SpecialType.System_Byte: 383case SpecialType.System_Char: 384case SpecialType.System_Int16: 385case SpecialType.System_Int32: 386case SpecialType.System_Int64: 387case SpecialType.System_Double: 388case SpecialType.System_Single: 389case SpecialType.System_String:
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\AbstractGenerateDeconstructMethodService.State.cs (1)
75returnType: semanticModel.Compilation.GetSpecialType(SpecialType.System_Void),
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\AbstractGenerateParameterizedMemberService.cs (1)
64if (typeParameters.Length == 0 && returnType.SpecialType != SpecialType.System_Void)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
451inferredType = inferredType.SpecialType == SpecialType.System_Void
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
248var idisposable = compilation.GetSpecialType(SpecialType.System_IDisposable);
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator.cs (1)
274var condition3 = typeParameter.HasReferenceTypeConstraint && typeParameter.ConstraintTypes.Any(static ts => ts.IsReferenceType && ts.SpecialType != SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (2)
176compilation.GetSpecialType(SpecialType.System_Boolean), 239var boolType = compilation.GetSpecialType(SpecialType.System_Boolean);
src\roslyn\src\Analyzers\Core\CodeFixes\SimplifyInterpolation\AbstractSimplifyInterpolationCodeFixProvider.cs (1)
57var readOnlySpanOfCharType = compilation.ReadOnlySpanOfTType()?.Construct(compilation.GetSpecialType(SpecialType.System_Char));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (5)
14protected abstract SyntaxNode CreateExplicitlyCastedLiteralValue(INamedTypeSymbol enumType, SpecialType underlyingSpecialType, object constantValue); 77var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 171var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 187var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (12)
83public static bool IsSpecialType([NotNullWhen(true)] ITypeSymbol? type, SpecialType specialType) 136SpecialType.System_SByte => value is sbyte, 137SpecialType.System_Byte => value is byte, 138SpecialType.System_Int16 => value is short, 139SpecialType.System_UInt16 => value is ushort, 140SpecialType.System_Int32 => value is int, 141SpecialType.System_UInt32 => value is uint, 142SpecialType.System_Int64 => value is long, 143SpecialType.System_UInt64 => value is ulong, 144SpecialType.System_Decimal => value is decimal, 145SpecialType.System_Single => value is float, 146SpecialType.System_Double => value is double,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
422SpecialType specialType = SpecialType.None, 441SpecialType specialType = SpecialType.None, 493specialType: SpecialType.None,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\LiteralSpecialValues.cs (11)
16public static bool HasSpecialValues(SpecialType specialType) 20case SpecialType.System_SByte: 21case SpecialType.System_Int16: 22case SpecialType.System_UInt16: 23case SpecialType.System_Int32: 24case SpecialType.System_UInt32: 25case SpecialType.System_Int64: 26case SpecialType.System_UInt64: 27case SpecialType.System_Single: 28case SpecialType.System_Double: 29case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
29SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationArrayTypeSymbol.cs (1)
10internal sealed class CodeGenerationArrayTypeSymbol(ITypeSymbol elementType, int rank, NullableAnnotation nullableAnnotation) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, nullableAnnotation), IArrayTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationMethodSymbol.cs (1)
75=> this.ReturnType == null || this.ReturnType.SpecialType == SpecialType.System_Void;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationNamedTypeSymbol.cs (1)
34SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationPointerTypeSymbol.cs (1)
9internal sealed class CodeGenerationPointerTypeSymbol(ITypeSymbol pointedAtType) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, NullableAnnotation.None), IPointerTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeParameterSymbol.cs (1)
24int ordinal) : CodeGenerationTypeSymbol(containingType?.ContainingAssembly, containingType, attributes, Accessibility.NotApplicable, default, name, SpecialType.None, nullableAnnotation), ITypeParameterSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (2)
19SpecialType specialType, 23public SpecialType SpecialType { get; protected set; } = specialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
85_ => compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (19)
58parameterType ??= compilation.GetSpecialType(SpecialType.System_Object); 66returnType: compilation.GetSpecialType(SpecialType.System_Boolean), 436case SpecialType.System_Boolean: 437case SpecialType.System_Char: 438case SpecialType.System_SByte: 439case SpecialType.System_Byte: 440case SpecialType.System_Int16: 441case SpecialType.System_UInt16: 442case SpecialType.System_Int32: 443case SpecialType.System_UInt32: 444case SpecialType.System_Int64: 445case SpecialType.System_UInt64: 446case SpecialType.System_Decimal: 447case SpecialType.System_Single: 448case SpecialType.System_Double: 449case SpecialType.System_String: 450case SpecialType.System_DateTime: 468method.ReturnType.SpecialType == SpecialType.System_Boolean && 469method.Parameters[0].Type.SpecialType == SpecialType.System_Object &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateGetHashCodeMethod.cs (4)
136? factory.SimpleLocalDeclarationStatement(generatorInternal, compilation.GetSpecialType(SpecialType.System_Int32), HashCodeName, CreateLiteralExpression(factory, initHash)) 137: factory.LocalDeclarationStatement(compilation.GetSpecialType(SpecialType.System_Int64), HashCodeName, CreateLiteralExpression(factory, initHash))); 166compilation.GetSpecialType(SpecialType.System_Int32), 210method.ReturnType.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_Negate.cs (12)
60SpecialType? patternValueType, 182else if (operation is IIsTypeOperation { TypeOperand.SpecialType: SpecialType.System_Object } && generatorInternal.SupportsPatterns(semanticModel.SyntaxTree.Options)) 303SpecialType? patternValueType) 305if (patternValueType is SpecialType specialType && specialType.IsNumericType()) 445if (containingType?.SpecialType == SpecialType.System_Array || 446containingType?.SpecialType == SpecialType.System_String) 456case SpecialType.System_Byte: 457case SpecialType.System_UInt16: 458case SpecialType.System_UInt32: 459case SpecialType.System_UInt64: 501SpecialType? patternValueType) 508if (patternValueType == SpecialType.System_Boolean)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (2)
78protected IEnumerable<TypeInferenceInfo> CreateResult(SpecialType type, NullableAnnotation nullableAnnotation = NullableAnnotation.None) 120symbol.ContainingType?.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.cs (1)
46? [semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean)]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Simplification\SimplificationHelpers.cs (2)
77var specialType = SpecialTypeAnnotation.GetSpecialType(annotation2); 78if (specialType != SpecialType.None)
Microsoft.CodeAnalysis.CSharp (2100)
Binder\Binder.ValueChecks.cs (3)
972if ((expr.ConstantValueOpt != null) || (expr.Type.GetSpecialTypeSafe() == SpecialType.System_Void)) 3728if (expr.Type?.GetSpecialTypeSafe() == SpecialType.System_Void) 4013if (expr.Type?.GetSpecialTypeSafe() == SpecialType.System_Void)
Binder\Binder_Attributes.cs (2)
931if (type.SpecialType == SpecialType.System_Object || 933((ArrayTypeSymbol)type).ElementType.SpecialType == SpecialType.System_Object)
Binder\Binder_Await.cs (1)
663if (isCompletedProperty.Type.SpecialType != SpecialType.System_Boolean)
Binder\Binder_Constraints.cs (11)
270GetSpecialType(SpecialType.System_ValueType, diagnostics, typeSyntax); 522case SpecialType.System_Enum: 523case SpecialType.System_Delegate: 524case SpecialType.System_MulticastDelegate: 533else if (type.SpecialType != SpecialType.System_Enum) 566case SpecialType.System_Enum: 570case SpecialType.System_Delegate: 571case SpecialType.System_MulticastDelegate: 575case SpecialType.System_Object: 576case SpecialType.System_ValueType: 577case SpecialType.System_Array:
Binder\Binder_Conversions.cs (221)
234Debug.Assert(destination.SpecialType != SpecialType.System_String); 733Debug.Assert(((NamedTypeSymbol)readOnlySpanType).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].SpecialType is SpecialType.System_Char); 746Parameters: [{ Type.SpecialType: SpecialType.System_String }] 2861destination.SpecialType == SpecialType.System_Object; 3028SpecialType.System_Decimal => WellKnownMember.System_Runtime_CompilerServices_DecimalConstantAttribute__ctor, 3029SpecialType.System_DateTime => WellKnownMember.System_Runtime_CompilerServices_DateTimeConstantAttribute__ctor, 3871case SpecialType.System_Single: 3873case SpecialType.System_Double: 3917SpecialType destinationType; 3922Debug.Assert(underlyingType.SpecialType != SpecialType.None); 3944else if (destinationType == SpecialType.System_Decimal) 3969else if (destinationType == SpecialType.System_IntPtr || destinationType == SpecialType.System_UIntPtr) 3981private static object DoUncheckedConversion(SpecialType destinationType, ConstantValue value) 4016case SpecialType.System_Byte: return (byte)byteValue; 4017case SpecialType.System_Char: return (char)byteValue; 4018case SpecialType.System_UInt16: return (ushort)byteValue; 4019case SpecialType.System_UInt32: return (uint)byteValue; 4020case SpecialType.System_UInt64: return (ulong)byteValue; 4021case SpecialType.System_SByte: return (sbyte)byteValue; 4022case SpecialType.System_Int16: return (short)byteValue; 4023case SpecialType.System_Int32: return (int)byteValue; 4024case SpecialType.System_Int64: return (long)byteValue; 4025case SpecialType.System_IntPtr: return (int)byteValue; 4026case SpecialType.System_UIntPtr: return (uint)byteValue; 4027case SpecialType.System_Single: 4028case SpecialType.System_Double: return (double)byteValue; 4029case SpecialType.System_Decimal: return (decimal)byteValue; 4036case SpecialType.System_Byte: return (byte)charValue; 4037case SpecialType.System_Char: return (char)charValue; 4038case SpecialType.System_UInt16: return (ushort)charValue; 4039case SpecialType.System_UInt32: return (uint)charValue; 4040case SpecialType.System_UInt64: return (ulong)charValue; 4041case SpecialType.System_SByte: return (sbyte)charValue; 4042case SpecialType.System_Int16: return (short)charValue; 4043case SpecialType.System_Int32: return (int)charValue; 4044case SpecialType.System_Int64: return (long)charValue; 4045case SpecialType.System_IntPtr: return (int)charValue; 4046case SpecialType.System_UIntPtr: return (uint)charValue; 4047case SpecialType.System_Single: 4048case SpecialType.System_Double: return (double)charValue; 4049case SpecialType.System_Decimal: return (decimal)charValue; 4056case SpecialType.System_Byte: return (byte)uint16Value; 4057case SpecialType.System_Char: return (char)uint16Value; 4058case SpecialType.System_UInt16: return (ushort)uint16Value; 4059case SpecialType.System_UInt32: return (uint)uint16Value; 4060case SpecialType.System_UInt64: return (ulong)uint16Value; 4061case SpecialType.System_SByte: return (sbyte)uint16Value; 4062case SpecialType.System_Int16: return (short)uint16Value; 4063case SpecialType.System_Int32: return (int)uint16Value; 4064case SpecialType.System_Int64: return (long)uint16Value; 4065case SpecialType.System_IntPtr: return (int)uint16Value; 4066case SpecialType.System_UIntPtr: return (uint)uint16Value; 4067case SpecialType.System_Single: 4068case SpecialType.System_Double: return (double)uint16Value; 4069case SpecialType.System_Decimal: return (decimal)uint16Value; 4076case SpecialType.System_Byte: return (byte)uint32Value; 4077case SpecialType.System_Char: return (char)uint32Value; 4078case SpecialType.System_UInt16: return (ushort)uint32Value; 4079case SpecialType.System_UInt32: return (uint)uint32Value; 4080case SpecialType.System_UInt64: return (ulong)uint32Value; 4081case SpecialType.System_SByte: return (sbyte)uint32Value; 4082case SpecialType.System_Int16: return (short)uint32Value; 4083case SpecialType.System_Int32: return (int)uint32Value; 4084case SpecialType.System_Int64: return (long)uint32Value; 4085case SpecialType.System_IntPtr: return (int)uint32Value; 4086case SpecialType.System_UIntPtr: return (uint)uint32Value; 4087case SpecialType.System_Single: return (double)(float)uint32Value; 4088case SpecialType.System_Double: return (double)uint32Value; 4089case SpecialType.System_Decimal: return (decimal)uint32Value; 4096case SpecialType.System_Byte: return (byte)uint64Value; 4097case SpecialType.System_Char: return (char)uint64Value; 4098case SpecialType.System_UInt16: return (ushort)uint64Value; 4099case SpecialType.System_UInt32: return (uint)uint64Value; 4100case SpecialType.System_UInt64: return (ulong)uint64Value; 4101case SpecialType.System_SByte: return (sbyte)uint64Value; 4102case SpecialType.System_Int16: return (short)uint64Value; 4103case SpecialType.System_Int32: return (int)uint64Value; 4104case SpecialType.System_Int64: return (long)uint64Value; 4105case SpecialType.System_IntPtr: return (int)uint64Value; 4106case SpecialType.System_UIntPtr: return (uint)uint64Value; 4107case SpecialType.System_Single: return (double)(float)uint64Value; 4108case SpecialType.System_Double: return (double)uint64Value; 4109case SpecialType.System_Decimal: return (decimal)uint64Value; 4116case SpecialType.System_Byte: return (byte)nuintValue; 4117case SpecialType.System_Char: return (char)nuintValue; 4118case SpecialType.System_UInt16: return (ushort)nuintValue; 4119case SpecialType.System_UInt32: return (uint)nuintValue; 4120case SpecialType.System_UInt64: return (ulong)nuintValue; 4121case SpecialType.System_SByte: return (sbyte)nuintValue; 4122case SpecialType.System_Int16: return (short)nuintValue; 4123case SpecialType.System_Int32: return (int)nuintValue; 4124case SpecialType.System_Int64: return (long)nuintValue; 4125case SpecialType.System_IntPtr: return (int)nuintValue; 4126case SpecialType.System_Single: return (double)(float)nuintValue; 4127case SpecialType.System_Double: return (double)nuintValue; 4128case SpecialType.System_Decimal: return (decimal)nuintValue; 4135case SpecialType.System_Byte: return (byte)sbyteValue; 4136case SpecialType.System_Char: return (char)sbyteValue; 4137case SpecialType.System_UInt16: return (ushort)sbyteValue; 4138case SpecialType.System_UInt32: return (uint)sbyteValue; 4139case SpecialType.System_UInt64: return (ulong)sbyteValue; 4140case SpecialType.System_SByte: return (sbyte)sbyteValue; 4141case SpecialType.System_Int16: return (short)sbyteValue; 4142case SpecialType.System_Int32: return (int)sbyteValue; 4143case SpecialType.System_Int64: return (long)sbyteValue; 4144case SpecialType.System_IntPtr: return (int)sbyteValue; 4145case SpecialType.System_UIntPtr: return (uint)sbyteValue; 4146case SpecialType.System_Single: 4147case SpecialType.System_Double: return (double)sbyteValue; 4148case SpecialType.System_Decimal: return (decimal)sbyteValue; 4155case SpecialType.System_Byte: return (byte)int16Value; 4156case SpecialType.System_Char: return (char)int16Value; 4157case SpecialType.System_UInt16: return (ushort)int16Value; 4158case SpecialType.System_UInt32: return (uint)int16Value; 4159case SpecialType.System_UInt64: return (ulong)int16Value; 4160case SpecialType.System_SByte: return (sbyte)int16Value; 4161case SpecialType.System_Int16: return (short)int16Value; 4162case SpecialType.System_Int32: return (int)int16Value; 4163case SpecialType.System_Int64: return (long)int16Value; 4164case SpecialType.System_IntPtr: return (int)int16Value; 4165case SpecialType.System_UIntPtr: return (uint)int16Value; 4166case SpecialType.System_Single: 4167case SpecialType.System_Double: return (double)int16Value; 4168case SpecialType.System_Decimal: return (decimal)int16Value; 4175case SpecialType.System_Byte: return (byte)int32Value; 4176case SpecialType.System_Char: return (char)int32Value; 4177case SpecialType.System_UInt16: return (ushort)int32Value; 4178case SpecialType.System_UInt32: return (uint)int32Value; 4179case SpecialType.System_UInt64: return (ulong)int32Value; 4180case SpecialType.System_SByte: return (sbyte)int32Value; 4181case SpecialType.System_Int16: return (short)int32Value; 4182case SpecialType.System_Int32: return (int)int32Value; 4183case SpecialType.System_Int64: return (long)int32Value; 4184case SpecialType.System_IntPtr: return (int)int32Value; 4185case SpecialType.System_UIntPtr: return (uint)int32Value; 4186case SpecialType.System_Single: return (double)(float)int32Value; 4187case SpecialType.System_Double: return (double)int32Value; 4188case SpecialType.System_Decimal: return (decimal)int32Value; 4195case SpecialType.System_Byte: return (byte)int64Value; 4196case SpecialType.System_Char: return (char)int64Value; 4197case SpecialType.System_UInt16: return (ushort)int64Value; 4198case SpecialType.System_UInt32: return (uint)int64Value; 4199case SpecialType.System_UInt64: return (ulong)int64Value; 4200case SpecialType.System_SByte: return (sbyte)int64Value; 4201case SpecialType.System_Int16: return (short)int64Value; 4202case SpecialType.System_Int32: return (int)int64Value; 4203case SpecialType.System_Int64: return (long)int64Value; 4204case SpecialType.System_IntPtr: return (int)int64Value; 4205case SpecialType.System_UIntPtr: return (uint)int64Value; 4206case SpecialType.System_Single: return (double)(float)int64Value; 4207case SpecialType.System_Double: return (double)int64Value; 4208case SpecialType.System_Decimal: return (decimal)int64Value; 4215case SpecialType.System_Byte: return (byte)nintValue; 4216case SpecialType.System_Char: return (char)nintValue; 4217case SpecialType.System_UInt16: return (ushort)nintValue; 4218case SpecialType.System_UInt32: return (uint)nintValue; 4219case SpecialType.System_UInt64: return (ulong)nintValue; 4220case SpecialType.System_SByte: return (sbyte)nintValue; 4221case SpecialType.System_Int16: return (short)nintValue; 4222case SpecialType.System_Int32: return (int)nintValue; 4223case SpecialType.System_Int64: return (long)nintValue; 4224case SpecialType.System_IntPtr: return (int)nintValue; 4225case SpecialType.System_UIntPtr: return (uint)nintValue; 4226case SpecialType.System_Single: return (double)(float)nintValue; 4227case SpecialType.System_Double: return (double)nintValue; 4228case SpecialType.System_Decimal: return (decimal)nintValue; 4239case SpecialType.System_Byte: return (byte)doubleValue; 4240case SpecialType.System_Char: return (char)doubleValue; 4241case SpecialType.System_UInt16: return (ushort)doubleValue; 4242case SpecialType.System_UInt32: return (uint)doubleValue; 4243case SpecialType.System_UInt64: return (ulong)doubleValue; 4244case SpecialType.System_SByte: return (sbyte)doubleValue; 4245case SpecialType.System_Int16: return (short)doubleValue; 4246case SpecialType.System_Int32: return (int)doubleValue; 4247case SpecialType.System_Int64: return (long)doubleValue; 4248case SpecialType.System_IntPtr: return (int)doubleValue; 4249case SpecialType.System_UIntPtr: return (uint)doubleValue; 4250case SpecialType.System_Single: return (double)(float)doubleValue; 4251case SpecialType.System_Double: return (double)doubleValue; 4252case SpecialType.System_Decimal: return (value.Discriminator == ConstantValueTypeDiscriminator.Single) ? (decimal)(float)doubleValue : (decimal)doubleValue; 4259case SpecialType.System_Byte: return (byte)decimalValue; 4260case SpecialType.System_Char: return (char)decimalValue; 4261case SpecialType.System_UInt16: return (ushort)decimalValue; 4262case SpecialType.System_UInt32: return (uint)decimalValue; 4263case SpecialType.System_UInt64: return (ulong)decimalValue; 4264case SpecialType.System_SByte: return (sbyte)decimalValue; 4265case SpecialType.System_Int16: return (short)decimalValue; 4266case SpecialType.System_Int32: return (int)decimalValue; 4267case SpecialType.System_Int64: return (long)decimalValue; 4268case SpecialType.System_IntPtr: return (int)decimalValue; 4269case SpecialType.System_UIntPtr: return (uint)decimalValue; 4270case SpecialType.System_Single: return (double)(float)decimalValue; 4271case SpecialType.System_Double: return (double)decimalValue; 4272case SpecialType.System_Decimal: return (decimal)decimalValue; 4284public static bool CheckConstantBounds(SpecialType destinationType, ConstantValue value, out bool maySucceedAtRuntime) 4302private static bool CheckConstantBounds(SpecialType destinationType, double value, out bool maySucceedAtRuntime) 4310case SpecialType.System_Byte: return (byte.MinValue - 1D) < value && value < (byte.MaxValue + 1D); 4311case SpecialType.System_Char: return (char.MinValue - 1D) < value && value < (char.MaxValue + 1D); 4312case SpecialType.System_UInt16: return (ushort.MinValue - 1D) < value && value < (ushort.MaxValue + 1D); 4313case SpecialType.System_UInt32: return (uint.MinValue - 1D) < value && value < (uint.MaxValue + 1D); 4314case SpecialType.System_UInt64: return (ulong.MinValue - 1D) < value && value < (ulong.MaxValue + 1D); 4315case SpecialType.System_SByte: return (sbyte.MinValue - 1D) < value && value < (sbyte.MaxValue + 1D); 4316case SpecialType.System_Int16: return (short.MinValue - 1D) < value && value < (short.MaxValue + 1D); 4317case SpecialType.System_Int32: return (int.MinValue - 1D) < value && value < (int.MaxValue + 1D); 4319case SpecialType.System_Int64: return (long.MinValue - 1D) <= value && value < (long.MaxValue + 1D); 4320case SpecialType.System_Decimal: return ((double)decimal.MinValue - 1D) < value && value < ((double)decimal.MaxValue + 1D); 4321case SpecialType.System_IntPtr: 4324case SpecialType.System_UIntPtr: 4332private static bool CheckConstantBounds(SpecialType destinationType, decimal value, out bool maySucceedAtRuntime) 4340case SpecialType.System_Byte: return (byte.MinValue - 1M) < value && value < (byte.MaxValue + 1M); 4341case SpecialType.System_Char: return (char.MinValue - 1M) < value && value < (char.MaxValue + 1M); 4342case SpecialType.System_UInt16: return (ushort.MinValue - 1M) < value && value < (ushort.MaxValue + 1M); 4343case SpecialType.System_UInt32: return (uint.MinValue - 1M) < value && value < (uint.MaxValue + 1M); 4344case SpecialType.System_UInt64: return (ulong.MinValue - 1M) < value && value < (ulong.MaxValue + 1M); 4345case SpecialType.System_SByte: return (sbyte.MinValue - 1M) < value && value < (sbyte.MaxValue + 1M); 4346case SpecialType.System_Int16: return (short.MinValue - 1M) < value && value < (short.MaxValue + 1M); 4347case SpecialType.System_Int32: return (int.MinValue - 1M) < value && value < (int.MaxValue + 1M); 4348case SpecialType.System_Int64: return (long.MinValue - 1M) < value && value < (long.MaxValue + 1M); 4349case SpecialType.System_IntPtr: 4352case SpecialType.System_UIntPtr:
Binder\Binder_Crefs.cs (2)
572builder.Add(this.GetSpecialType(memberName == "nint" ? SpecialType.System_IntPtr : SpecialType.System_UIntPtr, diagnostics, syntax).AsNativeInteger());
Binder\Binder_Deconstruct.cs (2)
126var voidType = GetSpecialType(SpecialType.System_Void, diagnostics, node); 696if (deconstructMethod.ReturnType.GetSpecialTypeSafe() != SpecialType.System_Void)
Binder\Binder_Expressions.cs (74)
1076if (boundArgument.Type?.SpecialType == SpecialType.System_Void) 1259TypeSymbol typedReferenceType = this.Compilation.GetSpecialType(SpecialType.System_TypedReference); 1283TypeSymbol typedReferenceType = GetSpecialType(SpecialType.System_TypedReference, diagnostics, node); 1307TypeSymbol typedReferenceType = this.Compilation.GetSpecialType(SpecialType.System_TypedReference); 1349TypeSymbol runtimeArgumentHandleType = GetSpecialType(SpecialType.System_RuntimeArgumentHandle, diagnostics, node); 1474this.GetSpecialType(SpecialType.System_Int32, diagnostics, node), hasErrors); 2683GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 2686TypeSymbol intType = GetSpecialType(SpecialType.System_Int32, diagnostics, node); 2693NamedTypeSymbol nullableType = GetSpecialType(SpecialType.System_Nullable_T, diagnostics, node); 2771GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 2773NamedTypeSymbol nullableType = GetSpecialType(SpecialType.System_Nullable_T, diagnostics, node); 2800NamedTypeSymbol nullableType = GetSpecialType(SpecialType.System_Nullable_T, diagnostics, operand); 4461this.Compilation.CreateArrayTypeSymbol(GetSpecialType(SpecialType.System_Object, diagnostics, node)), 4562GetSpecialType(SpecialType.System_Int32, diagnostics, nonNullSyntax)) 4643count = GenerateConversionForAssignment(GetSpecialType(SpecialType.System_Int32, diagnostics, node), count, diagnostics); 4787GetSpecialType(SpecialType.System_Int32, diagnostics, node)) 4808if (constantValue == null || constantValue.IsBad || expression.Type.SpecialType != SpecialType.System_Int32) 4831var type = expression.Type.SpecialType; 4832if (type == SpecialType.System_Int32) 4837if (type == SpecialType.System_Int64) 4844Debug.Assert(type == SpecialType.System_UInt32 || type == SpecialType.System_UInt64); 4948containingType.SpecialType == SpecialType.System_Object || 4951if ((object)initializerType == null || containingType.SpecialType == SpecialType.System_Object) //e.g. when defining System.Object in source 5202if (baseType.SpecialType == SpecialType.System_Object) 5204if (resultMember is null || resultMember.ContainingType.SpecialType != SpecialType.System_Object) 5424lengthOrCount = new BoundLiteral(expression.Syntax, ConstantValue.Create(length), @this.GetSpecialType(SpecialType.System_Int32, diagnostics, expression.Syntax)) { WasCompilerGenerated = true }; 5469type: @this.Compilation.GetSpecialType(SpecialType.System_Object)); 6450NamedTypeSymbol collectionsIEnumerableType = this.GetSpecialType(SpecialType.System_Collections_IEnumerable, diagnostics, node); 6631type: GetSpecialType(SpecialType.System_Void, diagnostics, elementInitializer), 7495var specialType = type.SpecialType; 7504case SpecialType.System_SByte: 7505case SpecialType.System_Int16: 7506case SpecialType.System_Int32: 7507case SpecialType.System_Int64: 7508case SpecialType.System_Byte: 7509case SpecialType.System_UInt16: 7510case SpecialType.System_UInt32: 7511case SpecialType.System_UInt64: 7512case SpecialType.System_Single: 7513case SpecialType.System_Double: 7514case SpecialType.System_Decimal: 7515case SpecialType.System_Boolean: 7516case SpecialType.System_Char: 7557var specialType = SpecialTypeExtensions.FromRuntimeTypeOfLiteralValue(value); 7561specialType != SpecialType.None && 7562specialType != SpecialType.System_Byte && 7563specialType != SpecialType.System_SByte && 7564specialType != SpecialType.System_Int16 && 7565specialType != SpecialType.System_UInt16); 7592var type = GetWellKnownType(WellKnownType.System_ReadOnlySpan_T, diagnostics, node).Construct(GetSpecialType(SpecialType.System_Byte, diagnostics, node)); 9717BoundExpression convertedIndex = TryImplicitConversionToArrayIndex(index, SpecialType.System_Int32, node, diagnostics); 9805if (convertedIndex.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: int constIndex }) 9886if (hatExpression.Operand.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: int constIndex }) 9892else if (convertedIndex is BoundConversion { Operand: { ConstantValueOpt: { SpecialType: SpecialType.System_Int32, Int32Value: int constIndex } } operand }) 9899arguments[0] is { ConstantValueOpt: { SpecialType: SpecialType.System_Int32, Int32Value: int constIndex1 } } index && 9900arguments[1] is { ConstantValueOpt: { SpecialType: SpecialType.System_Boolean, BooleanValue: bool isFromEnd } }) 10021var int32 = GetSpecialType(SpecialType.System_Int32, diagnostics, node); 10056TryImplicitConversionToArrayIndex(index, SpecialType.System_Int32, node, diagnostics) ?? 10057TryImplicitConversionToArrayIndex(index, SpecialType.System_UInt32, node, diagnostics) ?? 10058TryImplicitConversionToArrayIndex(index, SpecialType.System_Int64, node, diagnostics) ?? 10059TryImplicitConversionToArrayIndex(index, SpecialType.System_UInt64, node, diagnostics); 10093NamedTypeSymbol int32 = GetSpecialType(SpecialType.System_Int32, diagnostics, node); 10127private BoundExpression TryImplicitConversionToArrayIndex(BoundExpression expr, SpecialType specialType, SyntaxNode node, BindingDiagnosticBag diagnostics) 10689original.Parameters[0] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None }) 10691var intPlaceholder = new BoundImplicitIndexerValuePlaceholder(syntax, Compilation.GetSpecialType(SpecialType.System_Int32)) { WasCompilerGenerated = true }; 10707else if (receiver.Type.SpecialType == SpecialType.System_String) 10762var startArgumentPlaceholder = new BoundImplicitIndexerValuePlaceholder(syntax, Compilation.GetSpecialType(SpecialType.System_Int32)) { WasCompilerGenerated = true }; 10763var lengthArgumentPlaceholder = new BoundImplicitIndexerValuePlaceholder(syntax, Compilation.GetSpecialType(SpecialType.System_Int32)) { WasCompilerGenerated = true }; 10790original.Parameters[0] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None } && 10791original.Parameters[1] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None }; 10853getMethod.ReturnType.SpecialType == SpecialType.System_Int32 && 11686accessType = GetSpecialType(SpecialType.System_Void, diagnostics, node); 11697accessType = GetSpecialType(SpecialType.System_Nullable_T, diagnostics, node).Construct(accessType);
Binder\Binder_InterpolatedString.cs (18)
41var stringType = GetSpecialType(SpecialType.System_String, diagnostics, node); 55var intType = GetSpecialType(SpecialType.System_Int32, diagnostics, node); 167var constantValue = ConstantValue.Create(text, SpecialType.System_String); 219Debug.Assert(unconvertedInterpolatedString.Type?.SpecialType == SpecialType.System_String); 245Debug.Assert(unconvertedInterpolatedString.Parts.All(static part => part.Type is null or { SpecialType: SpecialType.System_String })); 304fillin.Value.Type?.SpecialType != SpecialType.System_String || 414expressions[0] = new BoundLiteral(syntax, ConstantValue.Create(formatString.ToStringAndFree()), GetSpecialType(Microsoft.CodeAnalysis.SpecialType.System_String, diagnostics, syntax)) { WasCompilerGenerated = true }; 436=> parts.All(p => p is BoundLiteral or BoundStringInsert { Value.Type.SpecialType: SpecialType.System_String, Alignment: null, Format: null }); 517var @string = GetSpecialType(SpecialType.System_String, diagnostics, rootSyntax); 674TypeSymbol objectType = GetSpecialType(SpecialType.System_Object, diagnostics, syntax); 711var intType = GetSpecialType(SpecialType.System_Int32, diagnostics, syntax); 722var boolType = GetSpecialType(SpecialType.System_Boolean, diagnostics, syntax); 853var objectType = GetSpecialType(SpecialType.System_Object, diagnostics, unconvertedInterpolatedString.Syntax); 887Debug.Assert(part is BoundLiteral { Type: { SpecialType: SpecialType.System_String }, ConstantValueOpt.IsString: true }); 985bool methodReturnsBool = returnType.SpecialType == SpecialType.System_Boolean; 986if (!methodReturnsBool && returnType.SpecialType != SpecialType.System_Void) 998var expected = builderPatternExpectsBool == true ? Compilation.GetSpecialType(SpecialType.System_Boolean) : Compilation.GetSpecialType(SpecialType.System_Void);
Binder\Binder_Invocation.cs (13)
276TypeSymbol objType = GetSpecialType(SpecialType.System_Object, diagnostics, node); 1431Debug.Assert(parameterType.IsDynamic() || parameterType.SpecialType == SpecialType.System_Object); 1696defaultValue = new BoundLiteral(syntax, ConstantValue.Create(line), Compilation.GetSpecialType(SpecialType.System_Int32)) { WasCompilerGenerated = true }; 1701defaultValue = new BoundLiteral(syntax, ConstantValue.Create(path), Compilation.GetSpecialType(SpecialType.System_String)) { WasCompilerGenerated = true }; 1706defaultValue = new BoundLiteral(syntax, ConstantValue.Create(memberName), Compilation.GetSpecialType(SpecialType.System_String)) { WasCompilerGenerated = true }; 1711&& Conversions.ClassifyBuiltInConversion(Compilation.GetSpecialType(SpecialType.System_String), parameterType, isChecked: false, ref discardedUseSiteInfo).Exists 1714defaultValue = new BoundLiteral(syntax, ConstantValue.Create(argument.Syntax.ToString()), Compilation.GetSpecialType(SpecialType.System_String)) { WasCompilerGenerated = true }; 1719if (parameterType.IsDynamic() || parameterType.SpecialType == SpecialType.System_Object) 1739if (InAttributeArgument && parameterType.SpecialType == SpecialType.System_Object) 1750if (!conversion.IsValid && defaultConstantValue is { SpecialType: SpecialType.System_Decimal or SpecialType.System_DateTime }) 1843TypeSymbol int32Type = GetSpecialType(SpecialType.System_Int32, diagnostics, node); 2434return new BoundNameOfOperator(node, boundArgument, ConstantValue.Create(name), Compilation.GetSpecialType(SpecialType.System_String));
Binder\Binder_Lookup.cs (10)
1016var iFaceSpecial = iFaceOriginal.SpecialType; 1019return iFaceSpecial == SpecialType.System_Collections_Generic_IEnumerable_T || 1020iFaceSpecial == SpecialType.System_Collections_Generic_IList_T || 1021iFaceSpecial == SpecialType.System_Collections_Generic_ICollection_T || 1023iFaceSpecial == SpecialType.System_Collections_Generic_IReadOnlyList_T || 1024iFaceSpecial == SpecialType.System_Collections_Generic_IReadOnlyCollection_T || 1026iFaceSpecial == SpecialType.System_Collections_IEnumerable || 1207this.LookupMembersInClass(tmp, this.Compilation.GetSpecialType(SpecialType.System_Object), name, arity, basesBeingResolved, options, originalBinder, type, diagnose, ref useSiteInfo); 1300hiddenContainer.SpecialType != SpecialType.System_Object) 2079this.AddMemberLookupSymbolsInfoInClass(result, Compilation.GetSpecialType(SpecialType.System_Object), options, originalBinder, accessThroughType);
Binder\Binder_Operators.cs (45)
563return ResultIsUsed(node) ? leftType : GetSpecialType(SpecialType.System_Void, diagnostics, node); 721type = this.GetSpecialType(SpecialType.System_Void, diagnostics, node); //we know the return type would have been void 755type = this.GetSpecialType(SpecialType.System_Void, diagnostics, node); 973return new BoundLiteral(node, ConstantValue.Create(kind == BinaryOperatorKind.Equal), GetSpecialType(SpecialType.System_Boolean, diagnostics, node)); 988Debug.Assert(right.Type.SpecialType == SpecialType.System_String); 1202GetSpecialType(SpecialType.System_Boolean, diagnostics, node)); 1381namedType.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics.Single().Type.SpecialType is SpecialType.System_Byte; 1441if ((object)left.Type != null && left.Type.SpecialType == SpecialType.System_Boolean && 1442(object)right.Type != null && right.Type.SpecialType == SpecialType.System_Boolean) 1505bool bothBool = signature.LeftType.SpecialType == SpecialType.System_Boolean && 1506signature.RightType.SpecialType == SpecialType.System_Boolean; 1603var booleanType = Compilation.GetSpecialType(SpecialType.System_Boolean); 2022return GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 2362(operand.Type.SpecialType == SpecialType.System_UInt64 || isNuint(operand.Type))) 2391return type.SpecialType == SpecialType.System_UIntPtr 2656internal static SpecialType GetEnumPromotedType(SpecialType underlyingType) 2660case SpecialType.System_Byte: 2661case SpecialType.System_SByte: 2662case SpecialType.System_Int16: 2663case SpecialType.System_UInt16: 2664return SpecialType.System_Int32; 2666case SpecialType.System_Int32: 2667case SpecialType.System_UInt32: 2668case SpecialType.System_Int64: 2669case SpecialType.System_UInt64: 2706SpecialType operandSpecialType = GetEnumPromotedType(underlyingType.SpecialType); 2732Debug.Assert(resultTypeSymbol.SpecialType == SpecialType.System_Boolean); 2741if (resultTypeSymbol.SpecialType != SpecialType.System_Boolean && constantValue != null && !constantValue.IsBad) 2801SpecialType resultType = resultTypeSymbol.SpecialType; 3671return mode == InstanceUserDefinedIncrementUsageMode.ResultIsUsed ? operandType : GetSpecialType(SpecialType.System_Void, diagnostics, node); 4447var upconvertSpecialType = GetEnumPromotedType(underlyingType.SpecialType); 4496SpecialType resultType = resultTypeSymbol.SpecialType; 4732return new BoundLiteral(node, ConstantValue.Create((int)-2147483648), GetSpecialType(SpecialType.System_Int32, diagnostics, node)); 4747return new BoundLiteral(node, ConstantValue.Create(-9223372036854775808), GetSpecialType(SpecialType.System_Int64, diagnostics, node)); 4847var resultType = (TypeSymbol)GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 4937var pattern = new BoundTypePattern(node, typeExpression, isExplicitNotNullTest: targetType.SpecialType == SpecialType.System_Object, isUnionMatching: true, inputType: unionMatchingInputType, targetType, hasErrors); 4996GetSpecialType(SpecialType.System_Object, diagnostics, node).Name // a pretty way of getting the string "Object" 5004inputType = GetSpecialType(SpecialType.System_Object, diagnostics, node); 5189if (operandType.IsValueType && targetType.IsClassType() && targetType.SpecialType != SpecialType.System_Enum || 5190targetType.IsValueType && operandType.IsClassType() && operandType.SpecialType != SpecialType.System_Enum) 5474type: GetSpecialType(SpecialType.System_Object, diagnostics, node)); 5492operandType = GetSpecialType(SpecialType.System_Object, diagnostics, node); 5499targetType = GetSpecialType(SpecialType.System_Object, diagnostics, node); 5729var objectType = GetSpecialType(SpecialType.System_Object, diagnostics, node);
Binder\Binder_Patterns.cs (32)
27inputType = GetUnionTypeValueProperty(unionTypeOverride, ref useSiteInfo)?.Type ?? Compilation.GetSpecialType(SpecialType.System_Object); 100Type.SpecialType: SpecialType.System_Object 218Type.SpecialType: SpecialType.System_Boolean 371ReturnType.SpecialType: SpecialType.System_Boolean 466node, expression, pattern, hasUnionMatching, GetSpecialType(SpecialType.System_Boolean, diagnostics, node), 896if (convertedType.SpecialType == SpecialType.System_String && inputType.IsSpanOrReadOnlySpanChar()) 935bool isExplicitNotNullTest = boundType.Type.SpecialType == SpecialType.System_Object; 1060strippedInputType.SpecialType is not SpecialType.System_Object and not SpecialType.System_ValueType) 1151if (expression.Type?.SpecialType == SpecialType.System_String && inputType.IsSpanOrReadOnlySpanChar()) 1424expressionType = conversions.CorLibrary.GetSpecialType(SpecialType.System_Object); 1738var objectType = Compilation.GetSpecialType(SpecialType.System_Object); 1872if (declType != (object)Compilation.GetSpecialType(SpecialType.System_Object) && 2100var objectType = Compilation.GetSpecialType(SpecialType.System_Object); 2151if (memberType.SpecialType == SpecialType.System_Int32 && 2299bool isExplicitNotNullTest = patternType.Type.SpecialType == SpecialType.System_Object; 2382SpecialType.System_Single => BinaryOperatorKind.Float, 2383SpecialType.System_Double => BinaryOperatorKind.Double, 2384SpecialType.System_Char => BinaryOperatorKind.Char, 2385SpecialType.System_SByte => BinaryOperatorKind.Int, // operands are converted to int 2386SpecialType.System_Byte => BinaryOperatorKind.Int, // operands are converted to int 2387SpecialType.System_UInt16 => BinaryOperatorKind.Int, // operands are converted to int 2388SpecialType.System_Int16 => BinaryOperatorKind.Int, // operands are converted to int 2389SpecialType.System_Int32 => BinaryOperatorKind.Int, 2390SpecialType.System_UInt32 => BinaryOperatorKind.UInt, 2391SpecialType.System_Int64 => BinaryOperatorKind.Long, 2392SpecialType.System_UInt64 => BinaryOperatorKind.ULong, 2393SpecialType.System_Decimal => BinaryOperatorKind.Decimal, 2394SpecialType.System_String => BinaryOperatorKind.String, 2395SpecialType.System_Boolean => BinaryOperatorKind.Bool, 2396SpecialType.System_IntPtr when type.IsNativeIntegerType => BinaryOperatorKind.NInt, 2397SpecialType.System_UIntPtr when type.IsNativeIntegerType => BinaryOperatorKind.NUInt,
Binder\Binder_QueryErrors.cs (2)
89var ienumerable_t = Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 127var ienumerable = Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable);
Binder\Binder_Statements.cs (11)
1283if (initializerType.SpecialType == SpecialType.System_String && 1284((object)fixedPatternMethod == null || fixedPatternMethod.ContainingType.SpecialType != SpecialType.System_String)) 1287elementType = this.GetSpecialType(SpecialType.System_Char, diagnostics, initializerSyntax); 1535type = this.GetSpecialType(SpecialType.System_Void, diagnostics, node); 2290if (sourceType.SpecialType == SpecialType.System_Double && syntax.Kind() == SyntaxKind.NumericLiteralExpression && 2291(targetType.SpecialType == SpecialType.System_Single || targetType.SpecialType == SpecialType.System_Decimal)) 2293Error(diagnostics, ErrorCode.ERR_LiteralDoubleCast, syntax, (targetType.SpecialType == SpecialType.System_Single) ? "F" : "M", targetType); 2686var boolean = GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 3582else if (expression.Type?.SpecialType == SpecialType.System_Void) 3907if (baseType.SpecialType == SpecialType.System_Object)
Binder\Binder_Symbols.cs (6)
1005var specialType = 1006node.IsNint ? SpecialType.System_IntPtr : 1007node.IsNuint ? SpecialType.System_UIntPtr : SpecialType.None; 1009if (specialType == SpecialType.None) 1072this.GetSpecialType(SpecialType.System_Boolean, diagnostics, node);
Binder\Binder_TupleOperators.cs (3)
33TypeSymbol resultType = GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 132TypeSymbol boolean = GetSpecialType(SpecialType.System_Boolean, diagnostics, node); 427NamedTypeSymbol nullableT = GetSpecialType(SpecialType.System_Nullable_T, diagnostics, syntax);
Binder\DecisionDagBuilder.cs (59)
367(pattern.InputType.SpecialType == SpecialType.System_Object)); 453Type.SpecialType: SpecialType.System_Object 476Property: { Name: WellKnownMemberNames.ValuePropertyName, Type.SpecialType: SpecialType.System_Object } property, 499RoslynDebug.Assert(getLengthProperty.Type.SpecialType == SpecialType.System_Int32); 724Type.SpecialType: SpecialType.System_Boolean, 840if (input.Type.IsDynamic() ? type.SpecialType == SpecialType.System_Object : conversion.IsImplicit) 1145bin.NarrowedType.SpecialType == SpecialType.System_Object)); 2700case (SpecialType.System_SByte, SpecialType.System_Byte): 2701case (SpecialType.System_Byte, SpecialType.System_SByte): 2702case (SpecialType.System_Int16, SpecialType.System_UInt16): 2703case (SpecialType.System_UInt16, SpecialType.System_Int16): 2704case (SpecialType.System_Int32, SpecialType.System_UInt32): 2705case (SpecialType.System_UInt32, SpecialType.System_Int32): 2706case (SpecialType.System_Int64, SpecialType.System_UInt64): 2707case (SpecialType.System_UInt64, SpecialType.System_Int64): 2708case (SpecialType.System_IntPtr, SpecialType.System_UIntPtr): 2709case (SpecialType.System_UIntPtr, SpecialType.System_IntPtr): 2714case (SpecialType.System_Int32, SpecialType.System_IntPtr): 2715case (SpecialType.System_Int32, SpecialType.System_UIntPtr): 2716case (SpecialType.System_UInt32, SpecialType.System_IntPtr): 2717case (SpecialType.System_UInt32, SpecialType.System_UIntPtr): 2718case (SpecialType.System_IntPtr, SpecialType.System_Int32): 2719case (SpecialType.System_IntPtr, SpecialType.System_UInt32): 2720case (SpecialType.System_UIntPtr, SpecialType.System_Int32): 2721case (SpecialType.System_UIntPtr, SpecialType.System_UInt32): 2726case (SpecialType.System_Int64, SpecialType.System_IntPtr): 2727case (SpecialType.System_Int64, SpecialType.System_UIntPtr): 2728case (SpecialType.System_UInt64, SpecialType.System_IntPtr): 2729case (SpecialType.System_UInt64, SpecialType.System_UIntPtr): 2730case (SpecialType.System_IntPtr, SpecialType.System_Int64): 2731case (SpecialType.System_IntPtr, SpecialType.System_UInt64): 2732case (SpecialType.System_UIntPtr, SpecialType.System_Int64): 2733case (SpecialType.System_UIntPtr, SpecialType.System_UInt64):
Binder\ForEachLoopBinder.cs (22)
266if (!hasErrors && (moveNextAwaitableInfo.GetResult ?? moveNextAwaitableInfo.RuntimeAsyncAwaitCall?.Method)?.ReturnType.SpecialType != SpecialType.System_Boolean) 595(collectionConversionClassification.Kind == ConversionKind.ExplicitReference && collectionExpr.Type.SpecialType == SpecialType.System_String)); 705else if (collectionExpr.Type.SpecialType == SpecialType.System_String && builder.CollectionType.SpecialType == SpecialType.System_Collections_IEnumerable) 711inferredType = TypeWithAnnotations.Create(GetSpecialType(SpecialType.System_Char, diagnostics, collectionExpr.Syntax)); 1016if (!isAsync && collectionExprType.SpecialType == SpecialType.System_String) 1084this.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T)); 1122Debug.Assert(collectionType.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T); 1181Debug.Assert(collectionType.SpecialType == SpecialType.System_Collections_IEnumerable); 1186builder.ElementTypeWithAnnotations = builder.CurrentPropertyGetter?.ReturnTypeWithAnnotations ?? TypeWithAnnotations.Create(GetSpecialType(SpecialType.System_Object, diagnostics, errorLocationSyntax)); 1189builder.GetEnumeratorInfo.Method.ReturnType.SpecialType == SpecialType.System_Collections_IEnumerator); 1278NamedTypeSymbol targetInterface = isAsync ? this.Compilation.GetWellKnownType(WellKnownType.System_IAsyncDisposable) : this.Compilation.GetSpecialType(SpecialType.System_IDisposable); 1301builder.CollectionType = GetSpecialType(SpecialType.System_Collections_IEnumerable, diagnostics, syntax); 1308GetSpecialType(SpecialType.System_Object, diagnostics, syntax)); 1312builder.ElementTypeWithAnnotations = collectionExprType.SpecialType == SpecialType.System_String ? 1313TypeWithAnnotations.Create(GetSpecialType(SpecialType.System_Char, diagnostics, syntax)) : 1325TypeSymbol.Equals(builder.GetEnumeratorInfo.Method.ReturnType, this.Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator), TypeCompareKind.ConsiderEverything2)); 1756return moveNextMethodCandidate.OriginalDefinition.ReturnType.SpecialType != SpecialType.System_Boolean; 1774case SpecialType.System_Collections_IEnumerable: 1775case SpecialType.System_Collections_Generic_IEnumerable_T: 1816var implementedNonGeneric = this.Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable); 1896return type.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T;
Binder\InContainerBinder.cs (1)
91return TypeWithAnnotations.Create(this.Compilation.GetSpecialType(SpecialType.System_Object));
Binder\InMethodBinder.cs (5)
154case SpecialType.System_Collections_IEnumerable: 155case SpecialType.System_Collections_IEnumerator: 156var objectType = compilation.GetSpecialType(SpecialType.System_Object); 163case SpecialType.System_Collections_Generic_IEnumerable_T: 164case SpecialType.System_Collections_Generic_IEnumerator_T:
Binder\PatternExplainer.cs (28)
813if (underlyingType.SpecialType == SpecialType.System_IntPtr) 821else if (underlyingType.SpecialType == SpecialType.System_UIntPtr) 839SpecialType.System_Int32 => true, 840SpecialType.System_Int64 => true, 841SpecialType.System_UInt32 => true, 842SpecialType.System_UInt64 => true, 843SpecialType.System_String => true, 844SpecialType.System_Decimal => true, 845SpecialType.System_Single => true, 846SpecialType.System_Double => true, 847SpecialType.System_Boolean => true, 848SpecialType.System_Char => true, 860case SpecialType.System_Boolean: 861case SpecialType.System_Byte: 862case SpecialType.System_SByte: 863case SpecialType.System_UInt16: 864case SpecialType.System_Int16: 865case SpecialType.System_Int32: 866case SpecialType.System_UInt32: 867case SpecialType.System_UInt64: 868case SpecialType.System_Int64: 869case SpecialType.System_IntPtr when type.IsNativeIntegerType: 870case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 871case SpecialType.System_Decimal: 872case SpecialType.System_Char: 873case SpecialType.System_String: 876case SpecialType.System_Single: 885case SpecialType.System_Double:
Binder\RefSafetyAnalysis.cs (3)
289return placeholder.Type?.SpecialType == SpecialType.System_Int32; 903Debug.Assert(placeholder.Type.SpecialType == SpecialType.System_Boolean); 1111Debug.Assert(node.ArgumentPlaceholders.All(p => p is BoundImplicitIndexerValuePlaceholder { Type.SpecialType: SpecialType.System_Int32 }));
Binder\Semantics\Conversions\Conversions.cs (3)
80SpecialType.System_Decimal => WellKnownMember.System_Runtime_CompilerServices_DecimalConstantAttribute__ctor, 81SpecialType.System_DateTime => WellKnownMember.System_Runtime_CompilerServices_DateTimeConstantAttribute__ctor, 450TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Object), customModifiers: parameter.TypeWithAnnotations.CustomModifiers), parameter.RefCustomModifiers,
Binder\Semantics\Conversions\ConversionsBase.cs (85)
250var sourceIsVoid = source?.SpecialType == SpecialType.System_Void; 251var destIsVoid = destination.SpecialType == SpecialType.System_Void; 1378var specialSource = source.Type.GetSpecialTypeSafe(); 1380if (specialSource == SpecialType.System_Int32) 1386case SpecialType.System_Byte: 1388case SpecialType.System_SByte: 1390case SpecialType.System_Int16: 1392case SpecialType.System_IntPtr when destination.IsNativeIntegerType: 1394case SpecialType.System_UInt32: 1395case SpecialType.System_UIntPtr when destination.IsNativeIntegerType: 1397case SpecialType.System_UInt64: 1399case SpecialType.System_UInt16: 1405else if (specialSource == SpecialType.System_Int64 && destination.GetSpecialTypeSafe() == SpecialType.System_UInt64 && (constantValue.IsBad || 0 <= constantValue.Int64Value)) 1634var multicastDelegateType = corLibrary.GetSpecialType(SpecialType.System_MulticastDelegate); 1694else if (implementsSpecialInterface(compilation, destination, SpecialType.System_Collections_IEnumerable)) 1713static bool implementsSpecialInterface(CSharpCompilation compilation, TypeSymbol targetType, SpecialType specialInterface) 1771TypeSymbol expectedAttributeType = corLibrary.GetSpecialType(SpecialType.System_Int32); 1798TypeSymbol expectedAttributeType = corLibrary.GetSpecialType(SpecialType.System_String); 2117case SpecialType.System_Char: 2118case SpecialType.System_SByte: 2119case SpecialType.System_Byte: 2120case SpecialType.System_Int16: 2121case SpecialType.System_UInt16: 2122case SpecialType.System_Int32: 2123case SpecialType.System_UInt32: 2124case SpecialType.System_Int64: 2125case SpecialType.System_UInt64: 2126case SpecialType.System_Single: 2127case SpecialType.System_Double: 2128case SpecialType.System_Decimal: 2129case SpecialType.System_IntPtr when type.IsNativeIntegerType: 2130case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 2202case SpecialType.System_SByte: 2203case SpecialType.System_Byte: 2204case SpecialType.System_Int16: 2205case SpecialType.System_UInt16: 2206case SpecialType.System_Char: 2207case SpecialType.System_Int32: 2208case SpecialType.System_UInt32: 2209case SpecialType.System_Int64: 2210case SpecialType.System_UInt64: 2211case SpecialType.System_Double: 2212case SpecialType.System_Single: 2213case SpecialType.System_Decimal: 2220(type.SpecialType == SpecialType.System_IntPtr || type.SpecialType == SpecialType.System_UIntPtr) && !type.IsNativeIntegerType; 2595if (destination.SpecialType == SpecialType.System_Collections_IEnumerable) 2665if (destination.SpecialType == SpecialType.System_Object || destination.Kind == SymbolKind.DynamicType) 2759if (destination.GetSpecialTypeSafe() == SpecialType.System_Array) 2764if (IsBaseInterface(destination, this.corLibrary.GetDeclaredSpecialType(SpecialType.System_Array), ref useSiteInfo)) 2797var specialDestination = destination.GetSpecialTypeSafe(); 2799if (specialDestination == SpecialType.System_MulticastDelegate || 2800specialDestination == SpecialType.System_Delegate || 2801IsBaseInterface(destination, this.corLibrary.GetDeclaredSpecialType(SpecialType.System_MulticastDelegate), ref useSiteInfo)) 2830if (destination.SpecialType == SpecialType.System_MulticastDelegate) 2840var derivedType = this.corLibrary.GetDeclaredSpecialType(SpecialType.System_MulticastDelegate); 3393return source.IsPointerOrFunctionPointer() && destination is PointerTypeSymbol { PointedAtType: { SpecialType: SpecialType.System_Void } }; 3484if (source.SpecialType == SpecialType.System_Object) 3662if (source.SpecialType == SpecialType.System_Delegate || source.SpecialType == SpecialType.System_MulticastDelegate) 3667if (HasImplicitConversionToInterface(this.corLibrary.GetDeclaredSpecialType(SpecialType.System_Delegate), source, ref useSiteInfo)) 3769if (source.SpecialType == SpecialType.System_Array) 3774foreach (var iface in this.corLibrary.GetDeclaredSpecialType(SpecialType.System_Array).AllInterfacesWithDefinitionUseSiteDiagnostics(ref useSiteInfo)) 3803var specialDefinition = ((TypeSymbol)source.OriginalDefinition).SpecialType; 3805if (specialDefinition == SpecialType.System_Collections_Generic_IList_T || 3806specialDefinition == SpecialType.System_Collections_Generic_ICollection_T || 3807specialDefinition == SpecialType.System_Collections_Generic_IEnumerable_T || 3808specialDefinition == SpecialType.System_Collections_Generic_IReadOnlyList_T || 3809specialDefinition == SpecialType.System_Collections_Generic_IReadOnlyCollection_T) 3852var specialTypeSource = source.SpecialType; 3854if (specialTypeSource == SpecialType.System_Object || specialTypeSource == SpecialType.System_ValueType) 3873if (source.SpecialType == SpecialType.System_Enum && destination.IsEnumType()) 3946case SpecialType.System_SByte: 3947case SpecialType.System_Byte: 3948case SpecialType.System_Int16: 3949case SpecialType.System_UInt16: 3950case SpecialType.System_Int32: 3951case SpecialType.System_UInt32: 3952case SpecialType.System_Int64: 3953case SpecialType.System_UInt64: 3955case SpecialType.System_IntPtr: 3956case SpecialType.System_UIntPtr: 4014return spanElementType.SpecialType is SpecialType.System_Char;
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (1)
889var nullable = this.corLibrary.GetDeclaredSpecialType(SpecialType.System_Nullable_T);
Binder\Semantics\Operators\BinaryOperatorEasyOut.cs (3)
354if (left.Type.SpecialType == SpecialType.System_Int32 || 355left.Type.SpecialType == SpecialType.System_Boolean || 356left.Type.SpecialType == SpecialType.System_String)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (26)
325operators.Add(new BinaryOperatorSignature(kind | BinaryOperatorKind.Delegate, delegateType, delegateType, Compilation.GetSpecialType(SpecialType.System_Boolean))); 393TypeSymbol systemDelegateType = _binder.Compilation.GetSpecialType(SpecialType.System_Delegate); 489Debug.Assert(underlying.SpecialType != SpecialType.None); 540var boolean = Compilation.GetSpecialType(SpecialType.System_Boolean); 564operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndIntAddition, pointerType, Compilation.GetSpecialType(SpecialType.System_Int32), pointerType)); 565operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndUIntAddition, pointerType, Compilation.GetSpecialType(SpecialType.System_UInt32), pointerType)); 566operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndLongAddition, pointerType, Compilation.GetSpecialType(SpecialType.System_Int64), pointerType)); 567operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndULongAddition, pointerType, Compilation.GetSpecialType(SpecialType.System_UInt64), pointerType)); 568operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.IntAndPointerAddition, Compilation.GetSpecialType(SpecialType.System_Int32), pointerType, pointerType)); 569operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.UIntAndPointerAddition, Compilation.GetSpecialType(SpecialType.System_UInt32), pointerType, pointerType)); 570operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.LongAndPointerAddition, Compilation.GetSpecialType(SpecialType.System_Int64), pointerType, pointerType)); 571operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.ULongAndPointerAddition, Compilation.GetSpecialType(SpecialType.System_UInt64), pointerType, pointerType)); 574operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndIntSubtraction, pointerType, Compilation.GetSpecialType(SpecialType.System_Int32), pointerType)); 575operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndUIntSubtraction, pointerType, Compilation.GetSpecialType(SpecialType.System_UInt32), pointerType)); 576operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndLongSubtraction, pointerType, Compilation.GetSpecialType(SpecialType.System_Int64), pointerType)); 577operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerAndULongSubtraction, pointerType, Compilation.GetSpecialType(SpecialType.System_UInt64), pointerType)); 578operators.Add(new BinaryOperatorSignature(BinaryOperatorKind.PointerSubtraction, pointerType, pointerType, Compilation.GetSpecialType(SpecialType.System_Int64))); 595var voidPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(Compilation.GetSpecialType(SpecialType.System_Void))); 596operators.Add(new BinaryOperatorSignature(kind | BinaryOperatorKind.Pointer, voidPointerType, voidPointerType, Compilation.GetSpecialType(SpecialType.System_Boolean))); 781((object)left.Type == null || (!left.Type.IsDelegateType() && left.Type.SpecialType != SpecialType.System_String && left.Type.SpecialType != SpecialType.System_Delegate)) && 782((object)right.Type == null || (!right.Type.IsDelegateType() && right.Type.SpecialType != SpecialType.System_String && right.Type.SpecialType != SpecialType.System_Delegate)); 798var @object = Compilation.GetSpecialType(SpecialType.System_Object); 799operators.Add(new BinaryOperatorSignature(kind | BinaryOperatorKind.Object, @object, @object, Compilation.GetSpecialType(SpecialType.System_Boolean))); 1090return result.SpecialType == SpecialType.System_Boolean ?
Binder\Semantics\Operators\OperatorFacts.cs (23)
34case SpecialType.System_Array: 35case SpecialType.System_Boolean: 36case SpecialType.System_Byte: 37case SpecialType.System_Char: 38case SpecialType.System_Decimal: 39case SpecialType.System_Delegate: 40case SpecialType.System_Double: 41case SpecialType.System_Enum: 42case SpecialType.System_Int16: 43case SpecialType.System_Int32: 44case SpecialType.System_Int64: 45case SpecialType.System_IntPtr when type.IsNativeIntegerType: 46case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 47case SpecialType.System_MulticastDelegate: 48case SpecialType.System_Object: 49case SpecialType.System_SByte: 50case SpecialType.System_Single: 51case SpecialType.System_String: 52case SpecialType.System_UInt16: 53case SpecialType.System_UInt32: 54case SpecialType.System_UInt64: 55case SpecialType.System_ValueType: 56case SpecialType.System_Void:
Binder\Semantics\Operators\OperatorKindExtensions.cs (10)
147public static BinaryOperatorKind WithType(this BinaryOperatorKind kind, SpecialType type) 152case SpecialType.System_Int32: 154case SpecialType.System_UInt32: 156case SpecialType.System_Int64: 158case SpecialType.System_UInt64: 165public static UnaryOperatorKind WithType(this UnaryOperatorKind kind, SpecialType type) 170case SpecialType.System_Int32: 172case SpecialType.System_UInt32: 174case SpecialType.System_Int64: 176case SpecialType.System_UInt64:
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (1)
21return Compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(type);
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (2)
1421if (!returnType.HasType || returnType.SpecialType == SpecialType.System_Void) 1476if (!sourceReturnType.HasType || sourceReturnType.SpecialType == SpecialType.System_Void)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (16)
204members.All(static m => m.ContainingSymbol is NamedTypeSymbol { BaseTypeNoUseSiteDiagnostics.SpecialType: SpecialType.System_Object })); 1653if (type.SpecialType == SpecialType.System_Object && currentType.SpecialType != SpecialType.System_Object) 1715if (type.IsClassType() && type.GetSpecialTypeSafe() != SpecialType.System_Object) 2835t1.IsDynamic() && t2.SpecialType == SpecialType.System_Object || 2836t2.IsDynamic() && t1.SpecialType == SpecialType.System_Object); 3819case SpecialType.System_SByte: 3820case SpecialType.System_Int16: 3821case SpecialType.System_Int32: 3822case SpecialType.System_Int64: 3823case SpecialType.System_IntPtr when type.IsNativeIntegerType: 3840case SpecialType.System_Byte: 3841case SpecialType.System_UInt16: 3842case SpecialType.System_UInt32: 3843case SpecialType.System_UInt64: 3844case SpecialType.System_UIntPtr when type.IsNativeIntegerType:
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (1)
1410=> argument is BoundLiteral { Type.SpecialType: SpecialType.System_String } &&
Binder\SwitchBinder.cs (1)
423if (switchGoverningType.SpecialType == SpecialType.System_Boolean)
Binder\UnionMatchingRewriter.cs (1)
55private NamedTypeSymbol ObjectType => _compilation.GetSpecialType(SpecialType.System_Object);
Binder\UsingStatementBinder.cs (1)
314: originalBinder.Compilation.GetSpecialType(SpecialType.System_IDisposable);
BoundTree\BoundInlineArrayAccess.cs (1)
19{ SpecialType: SpecialType.System_Int32 } or
BoundTree\UnboundLambda.cs (3)
805returnType = TypeWithAnnotations.Create(Binder.Compilation.GetSpecialType(SpecialType.System_Void)); 1023? TypeWithAnnotations.Create(this.Binder.Compilation.GetSpecialType(SpecialType.System_Void)) 1279? this.Binder.Compilation.GetSpecialType(SpecialType.System_Void)
CodeGen\EmitArrayInitializer.cs (16)
442SpecialType specialElementType = SpecialType.None; 684if (elementType.IsReferenceType && elementType.SpecialType != SpecialType.System_String) 790internal static bool IsTypeAllowedInBlobWrapper(SpecialType type) => type is 794SpecialType.System_SByte or SpecialType.System_Byte or SpecialType.System_Boolean or 800SpecialType.System_Int16 or SpecialType.System_UInt16 or SpecialType.System_Char or 803SpecialType.System_Int32 or SpecialType.System_UInt32 or SpecialType.System_Single or 806SpecialType.System_Int64 or SpecialType.System_UInt64 or SpecialType.System_Double;
CodeGen\EmitConversion.cs (4)
416if (parameters[0].Type.SpecialType != SpecialType.System_Object) continue; 417var p1t = parameters[1].Type.SpecialType; 418if (p1t == SpecialType.System_IntPtr || p1t == SpecialType.System_UIntPtr)
CodeGen\EmitExpression.cs (33)
53(expression.Type.SpecialType != SpecialType.System_Decimal && 1150Debug.Assert(!field.IsConst || field.ContainingType.SpecialType == SpecialType.System_Decimal, 1347case SpecialType.System_Byte: 1349case SpecialType.System_Int16: 1351case SpecialType.System_Int32: 1353case SpecialType.System_Int64: 1355case SpecialType.System_Char: 1357case SpecialType.System_Boolean: 1359case SpecialType.System_SByte: 1361case SpecialType.System_UInt16: 1363case SpecialType.System_UInt32: 1365case SpecialType.System_UInt64: 1367case SpecialType.System_IntPtr: 1369case SpecialType.System_UIntPtr: 1371case SpecialType.System_Single: 1373case SpecialType.System_Double: 1375case SpecialType.System_RuntimeTypeHandle: 1377case SpecialType.System_RuntimeFieldHandle: 1379case SpecialType.System_RuntimeMethodHandle: 1381case SpecialType.System_RuntimeArgumentHandle: 2379Debug.Assert(expression.Type.SpecialType == SpecialType.System_Int32 || 2380expression.Type.SpecialType == SpecialType.System_Int64 || 2381expression.Type.SpecialType == SpecialType.System_UIntPtr); 2640if (rightType.IsReferenceType || (right.ConstantValueOpt != null && rightType.SpecialType != SpecialType.System_Decimal)) 3480if (!type.IsTypeParameter() && type.SpecialType != SpecialType.System_Decimal) 3490if (type.IsPointerOrFunctionPointer() || type.SpecialType == SpecialType.System_UIntPtr) 3496else if (type.SpecialType == SpecialType.System_IntPtr) 3510Debug.Assert(expression.Type.SpecialType == SpecialType.System_Decimal || 3577Debug.Assert(node.Type.SpecialType == SpecialType.System_Int32); 3594Debug.Assert(node.Type.SpecialType == SpecialType.System_Int32); 3608Debug.Assert(node.Type.SpecialType == SpecialType.System_Int32); 3631Debug.Assert(node.Type.SpecialType == SpecialType.System_Int32); 3710Debug.Assert(node.Type.SpecialType == SpecialType.System_Int32);
CodeGen\EmitOperators.cs (23)
305Debug.Assert(binOp.Left.Type.SpecialType == SpecialType.System_Boolean); 306Debug.Assert(binOp.Right.Type.SpecialType == SpecialType.System_Boolean); 314Debug.Assert(binOp.Left.Type.SpecialType == SpecialType.System_Boolean); 315Debug.Assert(binOp.Right.Type.SpecialType == SpecialType.System_Boolean); 331Debug.Assert(binOp.Left.Type.SpecialType == SpecialType.System_Boolean); 332Debug.Assert(binOp.Right.Type.SpecialType == SpecialType.System_Boolean); 337Debug.Assert(binOp.Left.Type.SpecialType == SpecialType.System_Boolean); 338Debug.Assert(binOp.Right.Type.SpecialType == SpecialType.System_Boolean); 343Debug.Assert(binOp.Left.Type.SpecialType == SpecialType.System_Boolean); 344Debug.Assert(binOp.Right.Type.SpecialType == SpecialType.System_Boolean); 375if (comparand is BoundConversion { Type.SpecialType: SpecialType.System_Object, ConversionKind: ConversionKind.Boxing, Operand.Type: TypeParameterSymbol { AllowsRefLikeType: true } } && 496Debug.Assert(condition.Type.SpecialType == SpecialType.System_Boolean); 531Debug.Assert(condition.Type.SpecialType == SpecialType.System_Boolean); 678SpecialType type = enumType.GetEnumUnderlyingType().SpecialType; 681case SpecialType.System_Byte: 684case SpecialType.System_SByte: 687case SpecialType.System_Int16: 690case SpecialType.System_UInt16: 763private static bool IsUnsigned(SpecialType type) 767case SpecialType.System_Byte: 768case SpecialType.System_UInt16: 769case SpecialType.System_UInt32: 770case SpecialType.System_UInt64:
CodeGen\EmitStatement.cs (8)
1072_module.GetSpecialType(SpecialType.System_Object, catchBlock.Syntax, _diagnostics.DiagnosticBag); 1335expression.Type.SpecialType == SpecialType.System_String || expression.Type.IsSpanOrReadOnlySpanChar()); 1338if (expression.Type.SpecialType == SpecialType.System_String || expression.Type.IsSpanOrReadOnlySpanChar()) 1420var int32Type = Binder.GetSpecialType(_module.Compilation, SpecialType.System_Int32, syntaxNode, _diagnostics); 1448var charType = Binder.GetSpecialType(_module.Compilation, SpecialType.System_Char, syntaxNode, _diagnostics); 1551var UInt32Type = Binder.GetSpecialType(_module.Compilation, SpecialType.System_UInt32, syntaxNode, _diagnostics); 1572var sequenceEqualsCharMethod = sequenceEqualsTMethod.Construct(Binder.GetSpecialType(_module.Compilation, SpecialType.System_Char, syntaxNode, _diagnostics)); 1833? _module.GetSpecialType(SpecialType.System_IntPtr, syntaxNode, _diagnostics.DiagnosticBag)
Compilation\BuiltInOperators.cs (54)
264case UnaryOperatorKind.SByte: opType = _compilation.GetSpecialType(SpecialType.System_SByte); break; 265case UnaryOperatorKind.Byte: opType = _compilation.GetSpecialType(SpecialType.System_Byte); break; 266case UnaryOperatorKind.Short: opType = _compilation.GetSpecialType(SpecialType.System_Int16); break; 267case UnaryOperatorKind.UShort: opType = _compilation.GetSpecialType(SpecialType.System_UInt16); break; 268case UnaryOperatorKind.Int: opType = _compilation.GetSpecialType(SpecialType.System_Int32); break; 269case UnaryOperatorKind.UInt: opType = _compilation.GetSpecialType(SpecialType.System_UInt32); break; 270case UnaryOperatorKind.Long: opType = _compilation.GetSpecialType(SpecialType.System_Int64); break; 271case UnaryOperatorKind.ULong: opType = _compilation.GetSpecialType(SpecialType.System_UInt64); break; 274case UnaryOperatorKind.Char: opType = _compilation.GetSpecialType(SpecialType.System_Char); break; 275case UnaryOperatorKind.Float: opType = _compilation.GetSpecialType(SpecialType.System_Single); break; 276case UnaryOperatorKind.Double: opType = _compilation.GetSpecialType(SpecialType.System_Double); break; 277case UnaryOperatorKind.Decimal: opType = _compilation.GetSpecialType(SpecialType.System_Decimal); break; 278case UnaryOperatorKind.Bool: opType = _compilation.GetSpecialType(SpecialType.System_Boolean); break; 693Debug.Assert(((NamedTypeSymbol)readonlySpanOfByte).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics.Single().Type.SpecialType is SpecialType.System_Byte); 720TypeSymbol rightType = _compilation.GetSpecialType(SpecialType.System_Int32); 733return new BinaryOperatorSignature(kind, left, left, _compilation.GetSpecialType(SpecialType.System_Boolean)); 748case BinaryOperatorKind.Int: return _compilation.GetSpecialType(SpecialType.System_Int32); 749case BinaryOperatorKind.UInt: return _compilation.GetSpecialType(SpecialType.System_UInt32); 750case BinaryOperatorKind.Long: return _compilation.GetSpecialType(SpecialType.System_Int64); 751case BinaryOperatorKind.ULong: return _compilation.GetSpecialType(SpecialType.System_UInt64); 754case BinaryOperatorKind.Float: return _compilation.GetSpecialType(SpecialType.System_Single); 755case BinaryOperatorKind.Double: return _compilation.GetSpecialType(SpecialType.System_Double); 756case BinaryOperatorKind.Decimal: return _compilation.GetSpecialType(SpecialType.System_Decimal); 757case BinaryOperatorKind.Bool: return _compilation.GetSpecialType(SpecialType.System_Boolean); 760return _compilation.GetSpecialType(SpecialType.System_Object); 763return _compilation.GetSpecialType(SpecialType.System_String); 780case BinaryOperatorKind.Int: return _compilation.GetSpecialType(SpecialType.System_Int32); 781case BinaryOperatorKind.UInt: return _compilation.GetSpecialType(SpecialType.System_UInt32); 782case BinaryOperatorKind.Long: return _compilation.GetSpecialType(SpecialType.System_Int64); 783case BinaryOperatorKind.ULong: return _compilation.GetSpecialType(SpecialType.System_UInt64); 786case BinaryOperatorKind.Float: return _compilation.GetSpecialType(SpecialType.System_Single); 787case BinaryOperatorKind.Double: return _compilation.GetSpecialType(SpecialType.System_Double); 788case BinaryOperatorKind.Decimal: return _compilation.GetSpecialType(SpecialType.System_Decimal); 789case BinaryOperatorKind.Bool: return _compilation.GetSpecialType(SpecialType.System_Boolean); 792return _compilation.GetSpecialType(SpecialType.System_String); 795return _compilation.GetSpecialType(SpecialType.System_Object); 812case BinaryOperatorKind.Int: return _compilation.GetSpecialType(SpecialType.System_Int32); 813case BinaryOperatorKind.UInt: return _compilation.GetSpecialType(SpecialType.System_UInt32); 814case BinaryOperatorKind.Long: return _compilation.GetSpecialType(SpecialType.System_Int64); 815case BinaryOperatorKind.ULong: return _compilation.GetSpecialType(SpecialType.System_UInt64); 818case BinaryOperatorKind.Float: return _compilation.GetSpecialType(SpecialType.System_Single); 819case BinaryOperatorKind.Double: return _compilation.GetSpecialType(SpecialType.System_Double); 820case BinaryOperatorKind.Decimal: return _compilation.GetSpecialType(SpecialType.System_Decimal); 821case BinaryOperatorKind.Bool: return _compilation.GetSpecialType(SpecialType.System_Boolean); 822case BinaryOperatorKind.Object: return _compilation.GetSpecialType(SpecialType.System_Object); 826return _compilation.GetSpecialType(SpecialType.System_String); 839BinaryOperatorKind.Int => _compilation.GetSpecialType(SpecialType.System_Int32), 840BinaryOperatorKind.UInt => _compilation.GetSpecialType(SpecialType.System_UInt32), 841BinaryOperatorKind.Long => _compilation.GetSpecialType(SpecialType.System_Int64), 842BinaryOperatorKind.ULong => _compilation.GetSpecialType(SpecialType.System_UInt64), 845BinaryOperatorKind.Float => _compilation.GetSpecialType(SpecialType.System_Single), 846BinaryOperatorKind.Double => _compilation.GetSpecialType(SpecialType.System_Double), 847BinaryOperatorKind.Decimal => _compilation.GetSpecialType(SpecialType.System_Decimal), 848BinaryOperatorKind.Bool => _compilation.GetSpecialType(SpecialType.System_Boolean),
Compilation\CSharpCompilation.cs (47)
888return info.ConvertedType?.SpecialType != SpecialType.System_Void; 1746if ((int)specialType <= (int)SpecialType.None || (int)specialType >= (int)InternalSpecialType.NextAvailable) 1791constructedNullableInstance = this.GetSpecialType(SpecialType.System_Nullable_T).Construct(typeArgument); 1805case SpecialType.System_SByte: 1806case SpecialType.System_Byte: 1807case SpecialType.System_Int16: 1808case SpecialType.System_UInt16: 1809case SpecialType.System_Int32: 1810case SpecialType.System_UInt32: 1811case SpecialType.System_Int64: 1812case SpecialType.System_UInt64: 1813case SpecialType.System_Char: 1814case SpecialType.System_Single: 1815case SpecialType.System_Double: 1816case SpecialType.System_Decimal: 1817case SpecialType.System_Boolean: 1884SpecialType.None, 2270if (method.ReturnType.IsVoidType() || method.ReturnType.SpecialType == SpecialType.System_Int32) 2300return returnType.IsVoidType() || returnType.SpecialType == SpecialType.System_Int32; 2319if (returnType.SpecialType != SpecialType.System_Int32 && !returnType.IsVoidType()) 2356return (array.IsSZArray && array.ElementType.SpecialType == SpecialType.System_String, returnsTaskOrTaskOfInt); 4221private protected override INamedTypeSymbolInternal CommonGetSpecialType(SpecialType specialType) 4345return GetSpecialType(signed ? SpecialType.System_IntPtr : SpecialType.System_UIntPtr).AsNativeInteger(); 4477if (csharpReturnType.SpecialType != SpecialType.None && 4478csharpLeftType.SpecialType != SpecialType.None && 4479csharpRightType.SpecialType != SpecialType.None) 4500csharpReturnType.SpecialType is SpecialType.System_Boolean) 4503(SpecialType.System_Object, SpecialType.System_Object) or 4504(SpecialType.System_Delegate, SpecialType.System_Delegate)) 4517csharpReturnType.SpecialType == SpecialType.System_Boolean) 4545csharpReturnType.SpecialType is SpecialType.System_Boolean && 4600csharpReturnType.SpecialType is SpecialType.System_Boolean && 4601csharpLeftType is PointerTypeSymbol { PointedAtType.SpecialType: SpecialType.System_Void } && 4602csharpRightType is PointerTypeSymbol { PointedAtType.SpecialType: SpecialType.System_Void }) 4637csharpReturnType.SpecialType is SpecialType.System_Int64 && 4656=> type.SpecialType is SpecialType.System_Int32 or SpecialType.System_UInt32 or SpecialType.System_Int64 or SpecialType.System_UInt64; 4659=> IsReadOnlySpanType(type) && ((NamedTypeSymbol)type).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].SpecialType == SpecialType.System_Byte; 4702if (csharpReturnType.SpecialType != SpecialType.None && csharpOperandType.SpecialType != SpecialType.None) 4893internal bool CanEmitBoolean() => CanEmitSpecialType(SpecialType.System_Boolean); 4895internal bool CanEmitSpecialType(SpecialType type)
Compilation\CSharpSemanticModel.cs (2)
3886binaryOperator.Type.SpecialType == SpecialType.System_Boolean) 3889var objectType = binaryOperator.Type.ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Compiler\AnonymousTypeMethodBodySynthesizer.cs (1)
38Debug.Assert(ContainingType.BaseTypeNoUseSiteDiagnostics.SpecialType == SpecialType.System_Object);
Compiler\ClsComplianceChecker.cs (7)
532System.Diagnostics.Debug.Assert((object)baseType != null || symbol.SpecialType == SpecialType.System_Object || symbol.IsExtension, "Only object or extension has no base."); 1019case SpecialType.System_TypedReference: 1020case SpecialType.System_UIntPtr: 1024case SpecialType.System_SByte: // sic 1025case SpecialType.System_UInt16: 1026case SpecialType.System_UInt32: 1027case SpecialType.System_UInt64:
Compiler\MethodBodySynthesizer.cs (5)
37Debug.Assert((object)constructor.ContainingType.BaseTypeNoUseSiteDiagnostics == null || constructor.ContainingType.BaseTypeNoUseSiteDiagnostics.SpecialType == SpecialType.System_Object); 38var objectType = constructor.ContainingAssembly.GetSpecialType(SpecialType.System_Object); 94var intType = compilation.GetSpecialType(SpecialType.System_Int32); 95var objectType = compilation.GetSpecialType(SpecialType.System_Object); 354TypeSymbol boolType = compilation.GetSpecialType(SpecialType.System_Boolean);
Compiler\MethodBodySynthesizer.Lowered.cs (9)
55LocalSymbol i = F.SynthesizedLocal(F.SpecialType(SpecialType.System_Int32)); 56LocalSymbol hashCode = F.SynthesizedLocal(F.SpecialType(SpecialType.System_UInt32)); 85F.Binary(BinaryOperatorKind.ObjectNotEqual, F.SpecialType(SpecialType.System_Boolean), 112F.Binary(BinaryOperatorKind.LessThan, F.SpecialType(SpecialType.System_Boolean), 151.Construct(F.SpecialType(SpecialType.System_Char)); 153LocalSymbol i = F.SynthesizedLocal(F.SpecialType(SpecialType.System_Int32)); 154LocalSymbol hashCode = F.SynthesizedLocal(F.SpecialType(SpecialType.System_UInt32)); 201F.Binary(BinaryOperatorKind.LessThan, F.SpecialType(SpecialType.System_Boolean), 361Debug.Assert(system_Int32.SpecialType == SpecialType.System_Int32);
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (2)
39new DeepTranslator(otherAssembly.GetSpecialType(SpecialType.System_Object))); 288return _otherAssembly.GetSpecialType(SpecialType.System_Object);
Emitter\EditAndContinue\PEDeltaAssemblyBuilder.cs (3)
73_deepTranslator = new CSharpSymbolMatcher.DeepTranslator(sourceAssembly.GetSpecialType(SpecialType.System_Object)); 311var stringType = Compilation.GetSpecialType(SpecialType.System_String); 312var intType = Compilation.GetSpecialType(SpecialType.System_Int32);
Emitter\Model\NamedTypeSymbolAdapter.cs (3)
297baseType = AdaptedNamedTypeSymbol.ContainingAssembly.GetSpecialType(Microsoft.CodeAnalysis.SpecialType.System_Object); 361else if (method.MethodKind == MethodKind.Destructor && AdaptedNamedTypeSymbol.SpecialType != SpecialType.System_Object) 368TypeSymbol objectType = AdaptedNamedTypeSymbol.DeclaringCompilation.GetSpecialType(CodeAnalysis.SpecialType.System_Object);
Emitter\Model\ParameterSymbolAdapter.cs (3)
86if (constant.SpecialType != SpecialType.None) 244this.ExplicitDefaultConstantValue.SpecialType != SpecialType.System_Decimal && 245this.ExplicitDefaultConstantValue.SpecialType != SpecialType.System_DateTime;
Emitter\Model\PEAssemblyBuilder.cs (9)
381[new TypedConstant(Compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, markerName)], 606GetSpecialType(SpecialType.System_Byte, diagnostics)); 614GetSpecialType(SpecialType.System_Byte, diagnostics)); 622GetSpecialType(SpecialType.System_Boolean, diagnostics)); 630GetSpecialType(SpecialType.System_Boolean, diagnostics)); 645GetSpecialType(SpecialType.System_Int32, diagnostics)); 653int32Type: GetSpecialType(SpecialType.System_Int32, diagnostics)); 661GetSpecialType(SpecialType.System_String, diagnostics)); 741private NamedTypeSymbol GetSpecialType(SpecialType type, BindingDiagnosticBag diagnostics)
Emitter\Model\PEModuleBuilder.cs (19)
966private NamedTypeSymbol GetUntranslatedSpecialType(SpecialType specialType, SyntaxNode syntaxNodeOpt, DiagnosticBag diagnostics) 983internal sealed override Cci.INamedTypeReference GetSpecialType(SpecialType specialType, SyntaxNode syntaxNodeOpt, DiagnosticBag diagnostics) 1006return namedType.SpecialType == (SpecialType)platformType; 1236if ((object)declaredBase != null && declaredBase.SpecialType == SpecialType.System_ValueType) 1594return GetSpecialType(SpecialType.System_Object, syntaxNodeOpt, diagnostics); 1639return new SynthesizedPrivateImplementationDetailsStaticConstructor(GetPrivateImplClass(syntaxOpt, diagnostics), GetUntranslatedSpecialType(SpecialType.System_Void, syntaxOpt, diagnostics)).GetCciAdapter(); 1741NamedTypeSymbol byteType = Compilation.GetSpecialType(SpecialType.System_Byte); 1762NamedTypeSymbol byteType = Compilation.GetSpecialType(SpecialType.System_Byte); 1785ImmutableArray.Create(new TypedConstant(Compilation.GetSpecialType(SpecialType.System_Byte), TypedConstantKind.Primitive, value))); 1825NamedTypeSymbol booleanType = Compilation.GetSpecialType(SpecialType.System_Boolean); 1927[new TypedConstant(Compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, markerName)]); 2018TypeSymbol returnType = factory.SpecialType(SpecialType.System_Void); 2019TypeSymbol unmatchedValueType = factory.SpecialType(SpecialType.System_Object); 2065TypeSymbol returnType = factory.SpecialType(SpecialType.System_Void); 2085TypeSymbol returnType = factory.SpecialType(SpecialType.System_Void); 2099Debug.Assert(intType.SpecialType == SpecialType.System_Int32); 2170Debug.Assert(intType.SpecialType == SpecialType.System_Int32); 2187Debug.Assert(intType.SpecialType == SpecialType.System_Int32); 2203Debug.Assert(intType.SpecialType == SpecialType.System_Int32);
Emitter\Model\SynthesizedPrivateImplementationDetailsStaticConstructor.cs (1)
55factory.Array(payloadArrayType.ElementType, factory.Binary(BinaryOperatorKind.Addition, factory.SpecialType(SpecialType.System_Int32), factory.MaximumMethodDefIndex(), factory.Literal(1))));
Emitter\Model\TypeParameterSymbolAdapter.cs (4)
243SpecialType.System_ValueType, 261case SpecialType.System_Object: 264case SpecialType.System_ValueType: 281var typeRef = moduleBeingBuilt.GetSpecialType(SpecialType.System_ValueType,
Emitter\NoPia\EmbeddedTypesManager.cs (3)
66var typeSymbol = ModuleBeingBuilt.Compilation.GetSpecialType(SpecialType.System_String); 189ImmutableArray.Create(new TypedConstant(ctor.Parameters[0].Type, TypedConstantKind.Type, ctor.ContainingAssembly.GetSpecialType(SpecialType.System_Object))), 311if (namedType.SpecialType != SpecialType.None || namedType.IsErrorType() || !namedType.ContainingAssembly.IsLinked)
FlowAnalysis\AbstractFlowPass.cs (17)
644else if ((object)node.Type == null || node.Type.SpecialType != SpecialType.System_Boolean) 957{ Type.SpecialType: SpecialType.System_Object, Symbol: var possibleUnionValueSymbol } and 1509case SpecialType.System_Boolean: 1510case SpecialType.System_Char: 1511case SpecialType.System_SByte: 1512case SpecialType.System_Byte: 1513case SpecialType.System_Int16: 1514case SpecialType.System_UInt16: 1515case SpecialType.System_Int32: 1516case SpecialType.System_UInt32: 1517case SpecialType.System_Int64: 1518case SpecialType.System_UInt64: 1519case SpecialType.System_Decimal: 1520case SpecialType.System_Single: 1521case SpecialType.System_Double: 1522case SpecialType.System_DateTime: 1723&& node.Type.SpecialType == SpecialType.System_Boolean)
FlowAnalysis\DefiniteAssignment.cs (3)
857type.SpecialType != SpecialType.System_String && 858type is not ArrayTypeSymbol { IsSZArray: true, ElementType.SpecialType: SpecialType.System_Byte }) 1548(elementAccess.Argument.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: 0 } ||
FlowAnalysis\NullableWalker.cs (17)
3115returnType.Type.SpecialType == SpecialType.System_Boolean) 3875&& (type.SpecialType == SpecialType.System_Boolean || type.IsDynamic() || type.IsErrorType()); 5050if (property.Type.SpecialType != SpecialType.System_Void) 5597Debug.Assert(binary.Type.SpecialType == SpecialType.System_Boolean); 5687Debug.Assert(binary.Type!.SpecialType == SpecialType.System_Boolean); 7107|| method.ReturnType.SpecialType != SpecialType.System_Boolean 7397&& GetTypeOrReturnType(parameter.ContainingSymbol).SpecialType != SpecialType.System_Boolean) 7989if (method.ReturnType.SpecialType == SpecialType.System_Boolean) 9475Debug.Assert(containingType.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T); 10805return compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(ImmutableArray.Create(underlying)); 12316if ((object)getMethod != null && getMethod.ContainingType.SpecialType == SpecialType.System_Nullable_T) 12427(conversion.Kind == ConversionKind.ExplicitReference && resultType.SpecialType == SpecialType.System_String)) 12435if (collectionExpression.Type!.SpecialType == SpecialType.System_Collections_IEnumerable) 12494else if (resultType.SpecialType == SpecialType.System_String) 13133Debug.Assert(node.Type.SpecialType == SpecialType.System_Boolean); 13136if (typeExpr.Type?.SpecialType == SpecialType.System_Object) 13185Debug.Assert(node.Type.SpecialType == SpecialType.System_RuntimeArgumentHandle);
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (7)
165_F.Throw(_F.Null(_F.SpecialType(SpecialType.System_Object))) 223var exceptionType = _F.SpecialType(SpecialType.System_Object); 226var pendingBranchVar = new SynthesizedLocal(_F.CurrentFunction, TypeWithAnnotations.Create(_F.SpecialType(SpecialType.System_Int32)), SynthesizedLocalKind.TryAwaitPendingBranch, tryStatementSyntax); 454LocalSymbol obj = _F.SynthesizedLocal(_F.SpecialType(SpecialType.System_Object)); 614var catchType = node.ExceptionTypeOpt ?? _F.SpecialType(SpecialType.System_Object); 1131this.pendingCaughtException = new SynthesizedLocal(F.CurrentFunction, TypeWithAnnotations.Create(F.SpecialType(SpecialType.System_Object)), SynthesizedLocalKind.TryAwaitPendingCaughtException, tryStatementSyntax); 1132this.pendingCatch = new SynthesizedLocal(F.CurrentFunction, TypeWithAnnotations.Create(F.SpecialType(SpecialType.System_Int32)), SynthesizedLocalKind.TryAwaitPendingCatch, tryStatementSyntax);
Lowering\AsyncRewriter\AsyncMethodBuilderMemberCollection.cs (4)
136resultType: F.SpecialType(SpecialType.System_Void), 169resultType: F.SpecialType(SpecialType.System_Void), 241resultType: F.SpecialType(SpecialType.System_Void), 259resultType = F.SpecialType(SpecialType.System_Object);
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
461resultType: F.SpecialType(SpecialType.System_Boolean)).ToExpression(); 473? F.SpecialType(SpecialType.System_Object)
Lowering\AsyncRewriter\AsyncRewriter.AsyncIteratorRewriter.cs (5)
126NamedTypeSymbol boolType = F.SpecialType(SpecialType.System_Boolean); 337var versionSymbol = F.SynthesizedLocal(F.SpecialType(SpecialType.System_Int16)); 498.Construct(F.SpecialType(SpecialType.System_Boolean)); 523.Construct(F.SpecialType(SpecialType.System_Boolean)); 549.Construct(F.SpecialType(SpecialType.System_Boolean));
Lowering\AsyncRewriter\AsyncRewriter.cs (2)
141stateField = F.StateMachineField(F.SpecialType(SpecialType.System_Int32), GeneratedNames.MakeStateMachineStateFieldName(), isPublic: true); 147instanceIdField = F.StateMachineField(F.SpecialType(SpecialType.System_UInt64), GeneratedNames.MakeStateMachineStateIdFieldName(), isPublic: true);
Lowering\AsyncRewriter\AsyncStateMachine.cs (1)
49interfaces.Add(compilation.GetWellKnownType(WellKnownType.System_Threading_Tasks_Sources_IValueTaskSource_T).Construct(compilation.GetSpecialType(SpecialType.System_Boolean)));
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (7)
104_int32Type = _bound.SpecialType(SpecialType.System_Int32); 105_objectType = _bound.SpecialType(SpecialType.System_Object); 106_nullableType = _bound.SpecialType(SpecialType.System_Nullable_T); 107_IEnumerableType = _bound.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 376var operand = _bound.Null(_bound.SpecialType(SpecialType.System_Object)); 588if (underlying.SpecialType == SpecialType.System_Boolean) 593var possiblePromote = Binder.GetEnumPromotedType(underlying.SpecialType);
Lowering\DiagnosticsPass_Warnings.cs (4)
329if (node.Left.Type.SpecialType == SpecialType.System_Object && !IsExplicitCast(node.Left) && !(node.Left.ConstantValueOpt != null && node.Left.ConstantValueOpt.IsNull) && ConvertedHasEqual(node.OperatorKind, node.Right, out t)) 334else if (node.Right.Type.SpecialType == SpecialType.System_Object && !IsExplicitCast(node.Right) && !(node.Right.ConstantValueOpt != null && node.Right.ConstantValueOpt.IsNull) && ConvertedHasEqual(node.OperatorKind, node.Left, out t)) 629SpecialType fromSpecialType = from.SpecialType; 630SpecialType toSpecialType = to.SpecialType;
Lowering\Extensions.cs (1)
132if (expr.Type.IsNullableType() && expr.Type.GetNullableUnderlyingType().SpecialType != SpecialType.System_Boolean)
Lowering\Instrumentation\CodeCoverageInstrumenter.cs (3)
116TypeSymbol payloadElementType = methodBodyFactory.SpecialType(SpecialType.System_Boolean); 219methodBodyFactory.SpecialType(SpecialType.System_Int32), fileIndices.ToImmutable()); 292_methodBodyFactory.SpecialType(SpecialType.System_Boolean),
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (17)
215SpecialType.System_Boolean 217SpecialType.System_SByte or SpecialType.System_Byte 219SpecialType.System_Int16 or SpecialType.System_UInt16 or SpecialType.System_Char 221SpecialType.System_Int32 or SpecialType.System_UInt32 223SpecialType.System_Int64 or SpecialType.System_UInt64 225SpecialType.System_Single 227SpecialType.System_Double 229SpecialType.System_Decimal 231SpecialType.System_String 469if (parameter.Type.SpecialType == SpecialType.System_String && targetType.SpecialType != SpecialType.System_String) 587if (invocation.Type.SpecialType != SpecialType.System_Void)
Lowering\IteratorRewriter\IteratorConstructor.cs (1)
26var intType = container.DeclaringCompilation.GetSpecialType(SpecialType.System_Int32);
Lowering\IteratorRewriter\IteratorFinallyMethodSymbol.cs (1)
147get { return TypeWithAnnotations.Create(ContainingAssembly.GetSpecialType(SpecialType.System_Void)); }
Lowering\IteratorRewriter\IteratorRewriter.cs (15)
70case SpecialType.System_Collections_IEnumerable: 71case SpecialType.System_Collections_Generic_IEnumerable_T: 75case SpecialType.System_Collections_IEnumerator: 76case SpecialType.System_Collections_Generic_IEnumerator_T: 102EnsureSpecialType(SpecialType.System_Int32, bag); 103EnsureSpecialType(SpecialType.System_IDisposable, bag); 107EnsureSpecialType(SpecialType.System_Collections_IEnumerator, bag); 113EnsureSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T, bag); 119EnsureSpecialType(SpecialType.System_Collections_IEnumerable, bag); 121EnsureSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, bag); 146private void EnsureSpecialType(SpecialType type, BindingDiagnosticBag bag) 177stateField = F.StateMachineField(F.SpecialType(SpecialType.System_Int32), GeneratedNames.MakeStateMachineStateFieldName()); 182instanceIdField = F.StateMachineField(F.SpecialType(SpecialType.System_UInt64), GeneratedNames.MakeStateMachineStateIdFieldName()); 218var IEnumeratorOfElementType = F.SpecialType(SpecialType.System_Collections_Generic_IEnumerator_T).Construct(ImmutableArray.Create(_elementType)); 258var IEnumerableOfElementType = F.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(_elementType.Type);
Lowering\IteratorRewriter\IteratorStateMachine.cs (6)
34interfaces.Add(ContainingAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(ElementType.Type)); 35interfaces.Add(ContainingAssembly.GetSpecialType(SpecialType.System_Collections_IEnumerable)); 38interfaces.Add(ContainingAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T).Construct(ElementType.Type)); 39interfaces.Add(ContainingAssembly.GetSpecialType(SpecialType.System_IDisposable)); 40interfaces.Add(ContainingAssembly.GetSpecialType(SpecialType.System_Collections_IEnumerator)); 61internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (15)
538if (t1.Input.Type.SpecialType is SpecialType.System_Double or SpecialType.System_Single) 752bool isStringInput = input.Type.SpecialType == SpecialType.System_String; 790case SpecialType.System_IntPtr: 792NamedTypeSymbol int64Type = _factory.SpecialType(SpecialType.System_Int64); 800case SpecialType.System_UIntPtr: 802NamedTypeSymbol uint64Type = _factory.SpecialType(SpecialType.System_UInt64); 823SpecialType.System_Single => BinaryOperatorKind.FloatLessThanOrEqual, 824SpecialType.System_Double => BinaryOperatorKind.DoubleLessThanOrEqual, 825SpecialType.System_Decimal => BinaryOperatorKind.DecimalLessThanOrEqual, 956TypeSymbol returnType = _factory.SpecialType(SpecialType.System_UInt32); 959StringPatternInput.String => _factory.SpecialType(SpecialType.System_String), 961.Construct(_factory.SpecialType(SpecialType.System_Char)), 963.Construct(_factory.SpecialType(SpecialType.System_Char)), 1074_whenNodeIdentifierLocal ??= _factory.SynthesizedLocal(_factory.SpecialType(SpecialType.System_Int32));
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (16)
196Debug.Assert(method.ReturnType.SpecialType == SpecialType.System_Boolean); 219inputType = _factory.SpecialType(SpecialType.System_Object); 262Debug.Assert(e.Property.GetMethod.Parameters[0].Type.SpecialType == SpecialType.System_Int32); 402TypeSymbol objectType = _factory.SpecialType(SpecialType.System_Object); 403var operandType = new PointerTypeSymbol(TypeWithAnnotations.Create(_factory.SpecialType(SpecialType.System_Void))); 409_factory.SpecialType(SpecialType.System_Boolean), 432if (input.Type.SpecialType == SpecialType.System_Double && double.IsNaN(value.DoubleValue) || 433input.Type.SpecialType == SpecialType.System_Single && float.IsNaN(value.SingleValue)) 441if (operatorKind.OperandTypes() == BinaryOperatorKind.Int && comparisonType.SpecialType != SpecialType.System_Int32) 446SpecialType.System_Byte => true, 447SpecialType.System_SByte => true, 448SpecialType.System_Int16 => true, 449SpecialType.System_UInt16 => true, 452comparisonType = _factory.SpecialType(SpecialType.System_Int32); 463return this._localRewriter.MakeBinaryOperator(_factory.Syntax, operatorKind, input, literal, _factory.SpecialType(SpecialType.System_Boolean), method: null, constrainedToTypeOpt: null); 474.Construct(_factory.SpecialType(SpecialType.System_Char));
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (44)
118Debug.Assert(node.Type.SpecialType == SpecialType.System_String, "Non-string binary addition should have been handled by VisitConversion or VisitArguments"); 600return arrLength.Update(arrLength.Expression, _factory.SpecialType(SpecialType.System_UIntPtr)); 654var boolean = _compilation.GetSpecialType(SpecialType.System_Boolean); 831TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 927return MakeLiteral(syntax, ConstantValue.Create(value), _compilation.GetSpecialType(SpecialType.System_Boolean)); 1016TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1243TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1476TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1661TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1853TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1961Debug.Assert(returnType.SpecialType == SpecialType.System_Boolean); 2051BoundExpression result = method.ReturnType.SpecialType == SpecialType.System_Delegate ? 2059Debug.Assert(loweredLeft.Type is { SpecialType: SpecialType.System_Decimal }); 2060Debug.Assert(loweredRight.Type is { SpecialType: SpecialType.System_Decimal }); 2102TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 2116TypeSymbol objectType = _compilation.GetSpecialType(SpecialType.System_Object); 2158Debug.Assert(rightType.SpecialType == SpecialType.System_Int32); 2225Debug.Assert(leftType.SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr); 2230Debug.Assert(rightType.SpecialType == SpecialType.System_Int32); 2324Debug.Assert(sizeOfExpression.Type is { SpecialType: SpecialType.System_Int32 }); 2335var numericSpecialType = numericOperand.Type.SpecialType; 2348SpecialType destinationType = numericSpecialType; 2351case SpecialType.System_Int32: 2362destinationType = SpecialType.System_IntPtr; 2366case SpecialType.System_UInt32: 2373destinationType = SpecialType.System_UIntPtr; 2377case SpecialType.System_Int64: 2378destinationType = SpecialType.System_IntPtr; 2380case SpecialType.System_UInt64: 2381destinationType = SpecialType.System_UIntPtr; 2398case SpecialType.System_Int32: 2400TypeSymbol nativeIntType = _factory.SpecialType(SpecialType.System_IntPtr); 2412case SpecialType.System_UInt32: 2414TypeSymbol longType = _factory.SpecialType(SpecialType.System_Int64); 2415TypeSymbol nativeIntType = _factory.SpecialType(SpecialType.System_IntPtr); 2425case SpecialType.System_Int64: 2427TypeSymbol longType = _factory.SpecialType(SpecialType.System_Int64); 2428TypeSymbol nativeIntType = _factory.SpecialType(SpecialType.System_IntPtr); 2437case SpecialType.System_UInt64: 2439TypeSymbol ulongType = _factory.SpecialType(SpecialType.System_UInt64); 2440TypeSymbol nativeUIntType = _factory.SpecialType(SpecialType.System_UIntPtr); 2473Debug.Assert(returnType.SpecialType == SpecialType.System_Int64); 2485_factory.SpecialType(SpecialType.System_IntPtr),
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
1500_compilation.GetSpecialType(SpecialType.System_Int32))),
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (7)
202Debug.Assert(targetEnumerableType.OriginalDefinition == (object)_compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T)); 212var iCollectionOfTType = _compilation.GetSpecialType(SpecialType.System_Collections_Generic_ICollection_T); 568SpecialType.System_Collections_Generic_IEnumerable_T or 569SpecialType.System_Collections_Generic_IReadOnlyCollection_T or 570SpecialType.System_Collections_Generic_IReadOnlyList_T); 670var intType = _factory.SpecialType(SpecialType.System_Int32); 859_compilation.GetSpecialType(SpecialType.System_Int32))),
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
207Debug.Assert(node.Operator.ReturnType is { SpecialType: SpecialType.System_String });
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (116)
97Debug.Assert(byteType.SpecialType == SpecialType.System_Byte); 143Debug.Assert(byteArray.ElementType.SpecialType == SpecialType.System_Byte); 226if (type.SpecialType != SpecialType.System_Double && type.SpecialType != SpecialType.System_Single) 439if (rewrittenType.SpecialType == SpecialType.System_Decimal || rewrittenOperand.Type.SpecialType == SpecialType.System_Decimal) 502if (rewrittenType.SpecialType == SpecialType.System_Decimal) 509else if (rewrittenOperand.Type.SpecialType == SpecialType.System_Decimal) 609createSpan = _factory.ModuleBuilderOpt.EnsureInlineArrayAsReadOnlySpanExists(syntax, spanType.OriginalDefinition, _factory.SpecialType(SpecialType.System_Int32), _diagnostics.DiagnosticBag); 614createSpan = _factory.ModuleBuilderOpt.EnsureInlineArrayAsSpanExists(syntax, spanType.OriginalDefinition, _factory.SpecialType(SpecialType.System_Int32), _diagnostics.DiagnosticBag); 777SpecialType GetUnderlyingSpecialType(TypeSymbol type) => 780bool IsInRange(SpecialType type, SpecialType low, SpecialType high) => 783SpecialType sourceST = GetUnderlyingSpecialType(source); 784SpecialType targetST = GetUnderlyingSpecialType(target); 789IsInRange(sourceST, SpecialType.System_Char, SpecialType.System_Double) && 790IsInRange(targetST, SpecialType.System_Char, SpecialType.System_UInt64); 840rewrittenOperand.Type.SpecialType != SpecialType.System_Decimal && 841rewrittenOperand.Type.SpecialType != SpecialType.System_DateTime) 1174if (!TypeSymbol.Equals(typeFrom, typeTo, TypeCompareKind.ConsiderEverything2) && (typeFrom.SpecialType == SpecialType.System_Decimal || typeTo.SpecialType == SpecialType.System_Decimal)) 1657SpecialType t0Type = t0.IsEnumType() ? t0.GetEnumUnderlyingType()!.SpecialType : t0.SpecialType; 1658SpecialType s0Type = s0.IsEnumType() ? s0.GetEnumUnderlyingType()!.SpecialType : s0.SpecialType; 1660if (t0Type == SpecialType.System_IntPtr) 1669case SpecialType.System_Byte: 1670case SpecialType.System_SByte: 1671case SpecialType.System_Int16: 1672case SpecialType.System_UInt16: 1673case SpecialType.System_Char: 1674case SpecialType.System_Int32: 1676case SpecialType.System_UInt32: 1677case SpecialType.System_UInt64: 1678case SpecialType.System_Int64: 1679case SpecialType.System_Single: 1680case SpecialType.System_Double: 1681case SpecialType.System_Decimal: 1685else if (t0Type == SpecialType.System_UIntPtr) 1694case SpecialType.System_Byte: 1695case SpecialType.System_UInt16: 1696case SpecialType.System_Char: 1697case SpecialType.System_UInt32: 1699case SpecialType.System_SByte: 1700case SpecialType.System_Int16: 1701case SpecialType.System_Int32: 1702case SpecialType.System_UInt64: 1703case SpecialType.System_Int64: 1704case SpecialType.System_Single: 1705case SpecialType.System_Double: 1706case SpecialType.System_Decimal: 1710else if (s0Type == SpecialType.System_IntPtr) 1719case SpecialType.System_Byte: 1720case SpecialType.System_SByte: 1721case SpecialType.System_Int16: 1722case SpecialType.System_UInt16: 1723case SpecialType.System_Char: 1724case SpecialType.System_UInt32: 1725case SpecialType.System_Int32: 1727case SpecialType.System_UInt64: 1728case SpecialType.System_Int64: 1729case SpecialType.System_Single: 1730case SpecialType.System_Double: 1731case SpecialType.System_Decimal: 1735else if (s0Type == SpecialType.System_UIntPtr) 1744case SpecialType.System_SByte: 1745case SpecialType.System_Int16: 1746case SpecialType.System_Int32: 1747case SpecialType.System_Byte: 1748case SpecialType.System_UInt16: 1749case SpecialType.System_Char: 1750case SpecialType.System_UInt32: 1752case SpecialType.System_UInt64: 1753case SpecialType.System_Int64: 1754case SpecialType.System_Single: 1755case SpecialType.System_Double: 1756case SpecialType.System_Decimal: 1767if (typeFrom.SpecialType == SpecialType.System_Decimal) 1772case SpecialType.System_Char: return SpecialMember.System_Decimal__op_Explicit_ToChar; 1773case SpecialType.System_SByte: return SpecialMember.System_Decimal__op_Explicit_ToSByte; 1774case SpecialType.System_Byte: return SpecialMember.System_Decimal__op_Explicit_ToByte; 1775case SpecialType.System_Int16: return SpecialMember.System_Decimal__op_Explicit_ToInt16; 1776case SpecialType.System_UInt16: return SpecialMember.System_Decimal__op_Explicit_ToUInt16; 1777case SpecialType.System_Int32: return SpecialMember.System_Decimal__op_Explicit_ToInt32; 1778case SpecialType.System_UInt32: return SpecialMember.System_Decimal__op_Explicit_ToUInt32; 1779case SpecialType.System_Int64: return SpecialMember.System_Decimal__op_Explicit_ToInt64; 1780case SpecialType.System_UInt64: return SpecialMember.System_Decimal__op_Explicit_ToUInt64; 1781case SpecialType.System_Single: return SpecialMember.System_Decimal__op_Explicit_ToSingle; 1782case SpecialType.System_Double: return SpecialMember.System_Decimal__op_Explicit_ToDouble; 1792case SpecialType.System_Char: return SpecialMember.System_Decimal__op_Implicit_FromChar; 1793case SpecialType.System_SByte: return SpecialMember.System_Decimal__op_Implicit_FromSByte; 1794case SpecialType.System_Byte: return SpecialMember.System_Decimal__op_Implicit_FromByte; 1795case SpecialType.System_Int16: return SpecialMember.System_Decimal__op_Implicit_FromInt16; 1796case SpecialType.System_UInt16: return SpecialMember.System_Decimal__op_Implicit_FromUInt16; 1797case SpecialType.System_Int32: return SpecialMember.System_Decimal__op_Implicit_FromInt32; 1798case SpecialType.System_UInt32: return SpecialMember.System_Decimal__op_Implicit_FromUInt32; 1799case SpecialType.System_Int64: return SpecialMember.System_Decimal__op_Implicit_FromInt64; 1800case SpecialType.System_UInt64: return SpecialMember.System_Decimal__op_Implicit_FromUInt64; 1801case SpecialType.System_Single: return SpecialMember.System_Decimal__op_Explicit_FromSingle; 1802case SpecialType.System_Double: return SpecialMember.System_Decimal__op_Explicit_FromDouble; 1811Debug.Assert(fromType.SpecialType == SpecialType.System_Decimal || toType.SpecialType == SpecialType.System_Decimal); 1813if (fromType.SpecialType == SpecialType.System_Decimal) 1817case SpecialType.System_IntPtr: 1818case SpecialType.System_UIntPtr: 1819operand = RewriteDecimalConversionCore(syntax, operand, fromType, get64BitType(_compilation, signed: toType.SpecialType == SpecialType.System_IntPtr), isImplicit, constantValueOpt); 1827case SpecialType.System_IntPtr: 1828case SpecialType.System_UIntPtr: 1829operand = MakeConversionNode(operand, get64BitType(_compilation, signed: fromType.SpecialType == SpecialType.System_IntPtr), @checked); 1837static TypeSymbol get64BitType(CSharpCompilation compilation, bool signed) => compilation.GetSpecialType(signed ? SpecialType.System_Int64 : SpecialType.System_UInt64); 1927if (fromType.SpecialType == SpecialType.System_Decimal || toType.SpecialType == SpecialType.System_Decimal) 1942if (fromType.SpecialType == SpecialType.System_Decimal) 1955else if (toType.SpecialType == SpecialType.System_Decimal)
Lowering\LocalRewriter\LocalRewriter_Event.cs (1)
317Debug.Assert(parameters1Type.SpecialType == SpecialType.System_Delegate);
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (3)
209else if (fixedCollectionInitializer.Expression.Type is { SpecialType: SpecialType.System_String }) 551BoundExpression lengthCheck = factory.Binary(BinaryOperatorKind.IntNotEqual, factory.SpecialType(SpecialType.System_Boolean), lengthCall, factory.Literal(0)); 554BoundExpression condition = factory.Binary(BinaryOperatorKind.LogicalBoolAnd, factory.SpecialType(SpecialType.System_Boolean), notNullCheck, lengthCheck);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (13)
81if (origDefinition.SpecialType == SpecialType.System_String) 403Debug.Assert(enumeratorType.OriginalDefinition.SpecialType != SpecialType.System_Nullable_T); 412var objectType = _factory.SpecialType(SpecialType.System_Object); 469type: _compilation.GetSpecialType(SpecialType.System_Boolean)), 611TypeSymbol intType = _compilation.GetSpecialType(SpecialType.System_Int32); 612TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 645MakeLiteral(forEachSyntax, ConstantValue.Default(SpecialType.System_Int32), intType)); 772NamedTypeSymbol intType = rewriter._factory.SpecialType(SpecialType.System_Int32); 912TypeSymbol intType = _compilation.GetSpecialType(SpecialType.System_Int32); 913TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 934MakeLiteral(forEachSyntax, ConstantValue.Default(SpecialType.System_Int32), intType)); 1062TypeSymbol intType = _compilation.GetSpecialType(SpecialType.System_Int32); 1063TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_Index.cs (1)
17NamedTypeSymbol booleanType = _compilation.GetSpecialType(SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (13)
261if (node.Argument.Type.SpecialType == SpecialType.System_Int32) 336rangeSizeExpr.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: >= 0 and int rangeSizeConst } && 364return expr.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: 0 }; 404Debug.Assert(index.Type?.SpecialType == SpecialType.System_Int32); 408if (index.ConstantValueOpt is { SpecialType: SpecialType.System_Int32, Int32Value: int constIndex }) 626Debug.Assert(integerArgument.Type!.SpecialType == SpecialType.System_Int32); 723Debug.Assert(loweredExpr.Type!.SpecialType == SpecialType.System_Int32); 734Debug.Assert(loweredExpr.Type!.SpecialType == SpecialType.System_Int32); 782Debug.Assert(hatExpression.Operand is { Type: { SpecialType: SpecialType.System_Int32 } }); 786else if (unloweredExpr is BoundConversion { Operand: { Type: { SpecialType: SpecialType.System_Int32 } } operand }) 795arguments[0] is { Type.SpecialType: SpecialType.System_Int32, ConstantValueOpt.Value: int _ and >= 0 } index && 796arguments[1] is { Type.SpecialType: SpecialType.System_Boolean, ConstantValueOpt.Value: bool fromEnd }) 1095if (method is { Name: nameof(string.Substring), ContainingType.SpecialType: SpecialType.System_String }
Lowering\LocalRewriter\LocalRewriter_IsPatternOperator.cs (2)
119Debug.Assert(node.Type is { SpecialType: SpecialType.System_Boolean }); 178Debug.Assert(test.Type.SpecialType == SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_Literal.cs (15)
30Debug.Assert(type is { SpecialType: SpecialType.System_Decimal }); 38Debug.Assert(type is { SpecialType: SpecialType.System_DateTime }); 73curMethod.ContainingType.SpecialType != SpecialType.System_Decimal) && 100arguments.Add(new BoundLiteral(syntax, ConstantValue.Create((int)value), _compilation.GetSpecialType(SpecialType.System_Int32))); 106arguments.Add(new BoundLiteral(syntax, ConstantValue.Create((uint)value), _compilation.GetSpecialType(SpecialType.System_UInt32))); 112arguments.Add(new BoundLiteral(syntax, ConstantValue.Create((long)value), _compilation.GetSpecialType(SpecialType.System_Int64))); 118arguments.Add(new BoundLiteral(syntax, ConstantValue.Create((ulong)value), _compilation.GetSpecialType(SpecialType.System_UInt64))); 124arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(low), _compilation.GetSpecialType(SpecialType.System_Int32))); 125arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(mid), _compilation.GetSpecialType(SpecialType.System_Int32))); 126arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(high), _compilation.GetSpecialType(SpecialType.System_Int32))); 127arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(isNegative), _compilation.GetSpecialType(SpecialType.System_Boolean))); 128arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(scale), _compilation.GetSpecialType(SpecialType.System_Byte))); 133Debug.Assert(ctor.ContainingType.SpecialType == SpecialType.System_Decimal); 148arguments.Add(new BoundLiteral(syntax, ConstantValue.Create(constantValue.DateTimeValue.Ticks), _compilation.GetSpecialType(SpecialType.System_Int64))); 152Debug.Assert(ctor.ContainingType.SpecialType == SpecialType.System_DateTime);
Lowering\LocalRewriter\LocalRewriter_LockStatement.cs (3)
36argumentType = _compilation.GetSpecialType(SpecialType.System_Object); 88argumentType = _compilation.GetSpecialType(SpecialType.System_Object); 141TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
115if (whenNullOpt.IsDefaultValue() && whenNullOpt.Type.SpecialType != SpecialType.System_Decimal) 201if (method.IsStatic && method.ContainingType.SpecialType == SpecialType.System_String)
Lowering\LocalRewriter\LocalRewriter_PointerElementAccess.cs (4)
50case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 56case SpecialType.System_Int64: 59case SpecialType.System_UInt64:
Lowering\LocalRewriter\LocalRewriter_Range.cs (1)
143TypeSymbol boolType = _compilation.GetSpecialType(SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_StackAlloc.cs (2)
109TypeSymbol uintType = _factory.SpecialType(SpecialType.System_UInt32); 110TypeSymbol uintPtrType = _factory.SpecialType(SpecialType.System_UIntPtr);
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (16)
75Debug.Assert(visitedArguments.All(arg => arg.Type!.SpecialType is SpecialType.System_String or SpecialType.System_Char or SpecialType.System_Object)); 112case SpecialType.System_String: 115case SpecialType.System_Char: 153bool needsImplicitConversionFromStringToSpan = visitedArguments.Any(arg => arg.Type is { SpecialType: SpecialType.System_String }); 154var charType = _compilation.GetSpecialType(SpecialType.System_Char); 190var array = _factory.ArrayOrEmpty(_factory.SpecialType(SpecialType.System_String), finalArguments); 289if (argument is BoundConversion { ConversionKind: ConversionKind.Boxing, Type.SpecialType: SpecialType.System_Object, Operand: { Type.SpecialType: SpecialType.System_Char } operand }) 305else if (argument is BoundNullCoalescingOperator { LeftOperand: { Type.SpecialType: SpecialType.System_String } left, RightOperand: BoundLiteral { ConstantValueOpt: { IsString: true, RopeValue.IsEmpty: true } } }) 444if (call is { Arguments: [], ReceiverOpt.Type: NamedTypeSymbol { SpecialType: SpecialType.System_Char } charType, Method: { Name: "ToString" } method } 523if (arg.Type.SpecialType == SpecialType.System_Char) 552Debug.Assert(arg.HasAnyErrors || arg.Type.SpecialType == SpecialType.System_String); 641if (cv.SpecialType == SpecialType.System_Char) 754type: _compilation.GetSpecialType(SpecialType.System_String));
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (5)
58Debug.Assert(localType.SpecialType == SpecialType.System_Boolean); 75Debug.Assert(call.Type.SpecialType == SpecialType.System_Boolean == usesBoolReturns); 102var boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 145Debug.Assert(node.Type is { SpecialType: SpecialType.System_String }); // if target-converted, we should not get here. 195Debug.Assert(result.Type.SpecialType == SpecialType.System_String || result.Type.IsErrorType());
Lowering\LocalRewriter\LocalRewriter_SwitchExpression.cs (1)
126var objectType = _factory.SpecialType(SpecialType.System_Object);
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (1)
590Debug.Assert(boolOperator.ReturnType.SpecialType == SpecialType.System_Boolean);
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (34)
85Debug.Assert((kind == UnaryOperatorKind.DynamicTrue || kind == UnaryOperatorKind.DynamicFalse) && type.SpecialType == SpecialType.System_Boolean 135var upconvertSpecialType = Binder.GetEnumPromotedType(underlyingType.SpecialType); 802type = _compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(type); 901Debug.Assert(constantOne.SpecialType != SpecialType.None); 902Debug.Assert(binaryOperandType.SpecialType != SpecialType.None); 932Debug.Assert(boundOne.Type is { SpecialType: SpecialType.System_Int32 }); 946if (unaryOperandType.SpecialType == SpecialType.System_Decimal) 950else if (unaryOperandType.IsNullableType() && unaryOperandType.GetNullableUnderlyingType().SpecialType == SpecialType.System_Decimal) 985Debug.Assert(operand.Type is { SpecialType: SpecialType.System_Decimal }); 992Debug.Assert(operand.Type is { } && operand.Type.IsNullableType() && operand.Type.GetNullableUnderlyingType().SpecialType == SpecialType.System_Decimal); 1068SpecialType specialType; 1073specialType = SpecialType.System_Int32; 1076specialType = SpecialType.System_SByte; 1079specialType = SpecialType.System_Int16; 1082specialType = SpecialType.System_Byte; 1085specialType = SpecialType.System_UInt16; 1088specialType = SpecialType.System_Char; 1091specialType = SpecialType.System_UInt32; 1094specialType = SpecialType.System_Int64; 1097specialType = SpecialType.System_UInt64; 1100specialType = SpecialType.System_IntPtr; 1103specialType = SpecialType.System_UIntPtr; 1106specialType = SpecialType.System_Single; 1109specialType = SpecialType.System_Double; 1112specialType = SpecialType.System_Decimal; 1125type = _compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(type); 1192case SpecialType.System_SByte: 1193case SpecialType.System_Int16: 1194case SpecialType.System_Int32: 1197case SpecialType.System_Byte: 1198case SpecialType.System_UInt16: 1199case SpecialType.System_UInt32: 1202case SpecialType.System_Int64: 1205case SpecialType.System_UInt64:
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (2)
163_compilation.GetSpecialType(SpecialType.System_IDisposable) : 239_compilation.GetSpecialType(SpecialType.System_IDisposable) :
Lowering\LocalRewriter\LoweredDynamicOperationFactory.cs (4)
217resultType = _factory.SpecialType(SpecialType.System_Void); 310resultType = _factory.SpecialType(SpecialType.System_Void); 504var resultType = _factory.SpecialType(SpecialType.System_Boolean); 899var systemObjectType = _factory.SpecialType(SpecialType.System_Object);
Lowering\SpillSequenceSpiller.cs (1)
1161Debug.Assert(condition.Type.SpecialType == SpecialType.System_Boolean);
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
129this.cachedState = F.SynthesizedLocal(F.SpecialType(SpecialType.System_Int32), syntax: F.Syntax, kind: SynthesizedLocalKind.StateMachineCachedState);
Lowering\StateMachineRewriter\ResumableStateMachineStateAllocator.cs (1)
92f.SpecialType(SpecialType.System_Boolean),
Lowering\StateMachineRewriter\StateMachineRewriter.cs (1)
109initialThreadIdField = F.StateMachineField(F.SpecialType(SpecialType.System_Int32), GeneratedNames.MakeIteratorCurrentThreadIdFieldName());
Lowering\SyntheticBoundNodeFactory.cs (40)
301public NamedTypeSymbol SpecialType(SpecialType st) 664return new BoundIsOperator(this.Syntax, operand, Type(type), c.Kind, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean)) { WasCompilerGenerated = true }; 669Debug.Assert(left.Type?.SpecialType == CodeAnalysis.SpecialType.System_Boolean); 670Debug.Assert(right.Type?.SpecialType == CodeAnalysis.SpecialType.System_Boolean); 671return Binary(BinaryOperatorKind.LogicalBoolAnd, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 676Debug.Assert(left.Type?.SpecialType == CodeAnalysis.SpecialType.System_Boolean); 677Debug.Assert(right.Type?.SpecialType == CodeAnalysis.SpecialType.System_Boolean); 678return Binary(BinaryOperatorKind.LogicalBoolOr, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 683return Binary(BinaryOperatorKind.IntEqual, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 688return Binary(BinaryOperatorKind.ObjectEqual, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 693var objectType = SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Object); 714return Binary(BinaryOperatorKind.ObjectNotEqual, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 719return Binary(BinaryOperatorKind.IntNotEqual, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 724return Binary(BinaryOperatorKind.IntLessThan, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean), left, right); 729return Binary(BinaryOperatorKind.IntGreaterThanOrEqual, SpecialType(CodeAnalysis.SpecialType.System_Boolean), left, right); 734return Binary(BinaryOperatorKind.IntSubtraction, SpecialType(CodeAnalysis.SpecialType.System_Int32), left, right); 739return Binary(BinaryOperatorKind.IntMultiplication, SpecialType(CodeAnalysis.SpecialType.System_Int32), left, right); 744return new BoundLiteral(Syntax, ConstantValue.Create(value), SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Byte)) { WasCompilerGenerated = true }; 749return new BoundLiteral(Syntax, ConstantValue.Create(value), SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) { WasCompilerGenerated = true }; 757return new BoundLiteral(Syntax, ConstantValue.Create(value), SpecialType(Microsoft.CodeAnalysis.SpecialType.System_UInt32)) { WasCompilerGenerated = true }; 808case { SpecialType: CodeAnalysis.SpecialType.System_Double }: 811case { SpecialType: CodeAnalysis.SpecialType.System_Single }: 1104Debug.Assert(ex.Type is { SpecialType: CodeAnalysis.SpecialType.System_Int32 }); 1166return new BoundLiteral(Syntax, ConstantValue.Create(value), SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Boolean)) { WasCompilerGenerated = true }; 1178return new BoundLiteral(Syntax, stringConst, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_String)) { WasCompilerGenerated = true }; 1189return new BoundLiteral(Syntax, charConst, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Char)) { WasCompilerGenerated = true }; 1200return new BoundArrayLength(Syntax, array, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)); 1331return new BoundSizeOfOperator(Syntax, Type(type), Binder.GetConstantSizeOf(type), SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) { WasCompilerGenerated = true }; 1357SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) 1367SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) 1377SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) 1385SpecialType(Microsoft.CodeAnalysis.SpecialType.System_UInt64)) 1400return new BoundModuleVersionIdString(Syntax, SpecialType(Microsoft.CodeAnalysis.SpecialType.System_String)) { WasCompilerGenerated = true }; 1409=> new BoundThrowIfModuleCancellationRequested(Syntax, SpecialType(CodeAnalysis.SpecialType.System_Void)) { WasCompilerGenerated = true }; 1418SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) 1430SpecialType(Microsoft.CodeAnalysis.SpecialType.System_Int32)) 1641Debug.Assert(expression is { Type: { SpecialType: CodeAnalysis.SpecialType.System_Boolean } }); 1774TypeSymbol boolType = Compilation.GetSpecialType(CodeAnalysis.SpecialType.System_Boolean); 1788TypeSymbol objectType = SpecialType(CodeAnalysis.SpecialType.System_Object); 1841Debug.Assert(returnType.SpecialType == CodeAnalysis.SpecialType.System_Boolean);
Operations\CSharpOperationFactory.cs (2)
1965: compilation.GetSpecialType(SpecialType.System_IDisposable); 2144TypeWithAnnotations.Create(((CSharpCompilation)_semanticModel.Compilation).GetSpecialType(SpecialType.System_Boolean)),
Parser\Lexer.cs (29)
102internal SpecialType ValueKind; 349case SpecialType.System_Int32: 352case SpecialType.System_UInt32: 355case SpecialType.System_Int64: 358case SpecialType.System_UInt64: 361case SpecialType.System_Single: 364case SpecialType.System_Double: 367case SpecialType.System_Decimal: 853info.ValueKind = SpecialType.None; 968info.ValueKind = SpecialType.System_Single; 973info.ValueKind = SpecialType.System_Double; 978info.ValueKind = SpecialType.System_Decimal; 982info.ValueKind = SpecialType.System_Double; 988info.ValueKind = SpecialType.System_Single; 993info.ValueKind = SpecialType.System_Double; 998info.ValueKind = SpecialType.System_Decimal; 1042case SpecialType.System_Single: 1045case SpecialType.System_Double: 1048case SpecialType.System_Decimal: 1074info.ValueKind = SpecialType.System_Int32; 1079info.ValueKind = SpecialType.System_UInt32; 1087info.ValueKind = SpecialType.System_Int64; 1092info.ValueKind = SpecialType.System_UInt64; 1104info.ValueKind = SpecialType.System_UInt32; 1109info.ValueKind = SpecialType.System_UInt64; 1119info.ValueKind = SpecialType.System_Int64; 1124info.ValueKind = SpecialType.System_UInt64; 1136info.ValueKind = SpecialType.System_UInt64; 2659info.ValueKind = SpecialType.System_Int32;
SymbolDisplay\SymbolDisplayVisitor.Types.cs (18)
684case SpecialType.System_Void: 686case SpecialType.System_SByte: 688case SpecialType.System_Int16: 690case SpecialType.System_Int32: 692case SpecialType.System_Int64: 694case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 696case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 698case SpecialType.System_Byte: 700case SpecialType.System_UInt16: 702case SpecialType.System_UInt32: 704case SpecialType.System_UInt64: 706case SpecialType.System_Single: 708case SpecialType.System_Double: 710case SpecialType.System_Decimal: 712case SpecialType.System_Char: 714case SpecialType.System_Boolean: 716case SpecialType.System_String: 718case SpecialType.System_Object:
SymbolDisplay\SymbolDisplayVisitor_Constants.cs (5)
34protected override void AddExplicitlyCastedLiteralValue(INamedTypeSymbol namedType, SpecialType type, object value) 42protected override void AddLiteralValue(SpecialType type, object value) 51case SpecialType.System_Boolean: 55case SpecialType.System_String: 56case SpecialType.System_Char:
Symbols\AbstractTypeMap.cs (1)
391dynamicEraser = new DynamicTypeEraser(owner.ContainingAssembly.CorLibrary.GetSpecialType(SpecialType.System_Object));
Symbols\AnonymousTypes\AnonymousTypeManager.SymbolCollection.cs (7)
114get { return Compilation.GetSpecialType(SpecialType.System_Object); } 119get { return Compilation.GetSpecialType(SpecialType.System_Void); } 124get { return Compilation.GetSpecialType(SpecialType.System_Boolean); } 129get { return Compilation.GetSpecialType(SpecialType.System_String); } 134get { return Compilation.GetSpecialType(SpecialType.System_Int32); } 139get { return Compilation.GetSpecialType(SpecialType.System_IntPtr); } 144get { return Compilation.GetSpecialType(SpecialType.System_MulticastDelegate); }
Symbols\AnonymousTypes\AnonymousTypeManager.Templates.cs (2)
172Compilation.GetSpecialType(SpecialType.System_IntPtr), 173returnsVoid ? Compilation.GetSpecialType(SpecialType.System_Void) : null,
Symbols\ArrayTypeSymbol.cs (4)
73return CreateMDArray(elementType, rank, sizes, lowerBounds, declaringAssembly.GetSpecialType(SpecialType.System_Array)); 95return CreateSZArray(elementType, declaringAssembly.GetSpecialType(SpecialType.System_Array), GetSZArrayInterfaces(elementType, declaringAssembly)); 113var iListOfT = declaringAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IList_T); 119var iReadOnlyListOfT = declaringAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyList_T);
Symbols\AssemblySymbol.cs (4)
527Debug.Assert(SpecialMembers.GetDescriptor(feature).DeclaringSpecialType == SpecialType.System_Runtime_CompilerServices_RuntimeFeature); 528return GetSpecialType(SpecialType.System_Runtime_CompilerServices_RuntimeFeature) is { TypeKind: TypeKind.Class, IsStatic: true } && 551GetSpecialType(SpecialType.System_Runtime_CompilerServices_PreserveBaseOverridesAttribute) is { TypeKind: TypeKind.Class }; 652return GetSpecialType(SpecialType.System_Object);
Symbols\Attributes\AttributeData.cs (12)
261string? memberName = value.DecodeValue<string>(SpecialType.System_String); 273var memberName = member.DecodeValue<string>(SpecialType.System_String); 309var sense = arguments.Attribute.CommonConstructorArguments[0].DecodeValue<bool>(SpecialType.System_Boolean); 312var memberName = value.DecodeValue<string>(SpecialType.System_String); 324var memberName = member.DecodeValue<string>(SpecialType.System_String); 559if (property.TypeWithAnnotations.HasType && property.Type.SpecialType == SpecialType.System_String && 578ctorArgument.DecodeValue<ClassInterfaceType>(SpecialType.System_Enum) : 579(ClassInterfaceType)ctorArgument.DecodeValue<short>(SpecialType.System_Int16); 603ctorArgument.DecodeValue<ComInterfaceType>(SpecialType.System_Enum) : 604(ComInterfaceType)ctorArgument.DecodeValue<short>(SpecialType.System_Int16); 653if (member is PropertySymbol { Type: { SpecialType: SpecialType.System_String } }) 807return arguments.Length == 1 && arguments[0].TryDecodeValue(SpecialType.System_String, out string? value) ? value : null;
Symbols\Attributes\SourceAttributeData.cs (15)
283SpecialType specType = parameterType.SpecialType; 326if (specType != SpecialType.System_Boolean) 334if (specType != SpecialType.System_Char) 342if (specType != SpecialType.System_SByte) 350if (specType != SpecialType.System_Byte) 358if (specType != SpecialType.System_Int16) 366if (specType != SpecialType.System_UInt16) 374if (specType != SpecialType.System_Int32) 382if (specType != SpecialType.System_UInt32) 390if (specType != SpecialType.System_Int64) 398if (specType != SpecialType.System_UInt64) 406if (specType != SpecialType.System_Single) 414if (specType != SpecialType.System_Double) 422if (specType != SpecialType.System_String) 430if (specType != SpecialType.System_Object)
Symbols\Compilation_WellKnownMembers.cs (8)
468var systemByte = GetSpecialType(SpecialType.System_Byte); 471var systemUnit32 = GetSpecialType(SpecialType.System_UInt32); 487var ticks = new TypedConstant(GetSpecialType(SpecialType.System_Int64), TypedConstantKind.Primitive, value.Ticks); 828NamedTypeSymbol booleanType = GetSpecialType(SpecialType.System_Boolean); 842var stringType = GetSpecialType(SpecialType.System_String); 856var boolType = GetSpecialType(SpecialType.System_Boolean); 1093case SpecialType.System_IntPtr: 1094case SpecialType.System_UIntPtr:
Symbols\ConstantValueUtils.cs (1)
112typeSymbol.SpecialType != SpecialType.System_String)
Symbols\ConstraintsHelper.cs (15)
111switch (typeParameter.HasReferenceTypeConstraint ? SpecialType.None : (bounds?.EffectiveBaseClass.SpecialType ?? SpecialType.System_Object)) 113case SpecialType.System_Object: 114case SpecialType.System_ValueType: 115case SpecialType.System_Enum: 143NamedTypeSymbol effectiveBaseClass = corLibrary.GetSpecialType(typeParameter.HasValueTypeConstraint ? SpecialType.System_ValueType : SpecialType.System_Object); 258constraintEffectiveBase = corLibrary.GetSpecialType(SpecialType.System_ValueType); 264constraintEffectiveBase = corLibrary.GetSpecialType(SpecialType.System_Enum); 270constraintEffectiveBase = corLibrary.GetSpecialType(SpecialType.System_Array); 322Debug.Assert((effectiveBaseClass.SpecialType == SpecialType.System_Object) || (deducedBaseType.SpecialType != SpecialType.System_Object)); 326if ((constraintTypes.Length == 0) && (deducedBaseType.SpecialType == SpecialType.System_Object)) 328Debug.Assert(effectiveBaseClass.SpecialType == SpecialType.System_Object); 1655if (type.SpecialType == SpecialType.System_Object)
Symbols\DynamicTypeSymbol.cs (2)
193return (int)Microsoft.CodeAnalysis.SpecialType.System_Object; 211return (object?)other != null && other.SpecialType == Microsoft.CodeAnalysis.SpecialType.System_Object;
Symbols\Extensions\SynthesizedExtensionMarker.cs (1)
62return (TypeWithAnnotations.Create(Binder.GetSpecialType(DeclaringCompilation, SpecialType.System_Void, GetFirstLocation(), diagnostics)),
Symbols\FieldSymbol.cs (1)
142get { return this.IsConst && (this.Type.SpecialType != SpecialType.System_Decimal); }
Symbols\MemberSignatureComparer.cs (2)
698if (constraintType.SpecialType == SpecialType.System_Object) 711if ((constraintType.SpecialType == SpecialType.System_ValueType) &&
Symbols\Metadata\PE\DynamicTypeDecoder.cs (3)
145PeekFlag() && (type.SpecialType != SpecialType.System_Object && !type.IsDynamic())) 155if (type.SpecialType == SpecialType.System_Object) 176: _containingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Metadata\PE\MetadataDecoder.cs (5)
177return new MissingMetadataTypeSymbol.TopLevel(new MissingModuleSymbolWithName(moduleSymbol.ContainingAssembly, moduleName), ref emittedName, SpecialType.None); 422SpecialType baseSpecialType = (candidate.BaseTypeNoUseSiteDiagnostics?.SpecialType ?? SpecialType.None); 423if (baseSpecialType == SpecialType.None || baseSpecialType != (baseType?.SpecialType ?? SpecialType.None))
Symbols\Metadata\PE\NativeIntegerTypeDecoder.cs (3)
18if (containingType?.SpecialType == SpecialType.System_Runtime_CompilerServices_RuntimeFeature 114case SpecialType.System_IntPtr: 115case SpecialType.System_UIntPtr:
Symbols\Metadata\PE\PEFieldSymbol.cs (3)
351_packedFlags.SetIsVolatile(customModifiersArray.Any(static m => !m.IsOptional && ((CSharpCustomModifier)m).ModifierSymbol.SpecialType == SpecialType.System_Runtime_CompilerServices_IsVolatile)); 517if (this.Type.SpecialType == SpecialType.System_Decimal) 653return this.Type.SpecialType == SpecialType.System_Decimal &&
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
1397(method.ContainingType.SpecialType == SpecialType.System_Object &&
Symbols\Metadata\PE\PEModuleSymbol.cs (1)
383if (keepLookingForDeclaredCorTypes && type.SpecialType != SpecialType.None)
Symbols\Metadata\PE\PENamedTypeSymbol.cs (39)
397_corTypeId = SpecialType.None; 2257SpecialType baseCorTypeId = @base.SpecialType; 2261case SpecialType.System_Enum: 2266case SpecialType.System_MulticastDelegate: 2271case SpecialType.System_ValueType: 2273if (this.SpecialType != SpecialType.System_Enum) 2494if (this.SpecialType == Microsoft.CodeAnalysis.SpecialType.None) 2501case SpecialType.System_Void: 2502case SpecialType.System_Boolean: 2503case SpecialType.System_Char: 2504case SpecialType.System_Byte: 2505case SpecialType.System_SByte: 2506case SpecialType.System_Int16: 2507case SpecialType.System_UInt16: 2508case SpecialType.System_Int32: 2509case SpecialType.System_UInt32: 2510case SpecialType.System_Int64: 2511case SpecialType.System_UInt64: 2512case SpecialType.System_Single: 2513case SpecialType.System_Double: 2514case SpecialType.System_Decimal: 2515case SpecialType.System_IntPtr: 2516case SpecialType.System_UIntPtr: 2517case SpecialType.System_DateTime: 2518case SpecialType.System_TypedReference: 2519case SpecialType.System_ArgIterator: 2520case SpecialType.System_RuntimeArgumentHandle: 2521case SpecialType.System_RuntimeFieldHandle: 2522case SpecialType.System_RuntimeMethodHandle: 2523case SpecialType.System_RuntimeTypeHandle: 2575var isOrdinaryEmbeddableStruct = (this.TypeKind == TypeKind.Struct) && (this.SpecialType == Microsoft.CodeAnalysis.SpecialType.None) && this.ContainingAssembly.IsLinked; 2739else if (TypeKind == TypeKind.Class && SpecialType != SpecialType.System_Enum) 2742if (@base?.SpecialType == SpecialType.None && @base.ContainingAssembly?.IsMissing == true) 2748switch ((SpecialType)SpecialTypes.GetTypeFromMetadataName(emittedName)) 2750case SpecialType.System_Enum: 2751case SpecialType.System_MulticastDelegate: 2752case SpecialType.System_ValueType: 3217Debug.Assert(this.SpecialType == SpecialType.System_IntPtr || this.SpecialType == SpecialType.System_UIntPtr);
Symbols\Metadata\PE\PETypeParameterSymbol.cs (4)
274else if (typeSymbol.SpecialType == SpecialType.System_ValueType) 292if (typeSymbol.SpecialType == SpecialType.System_ValueType && ((_flags & GenericParameterAttributes.NotNullableValueTypeConstraint) != 0)) 546Debug.Assert(type.HasType && type.SpecialType == SpecialType.System_Object); 721return this.ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Metadata\PE\SymbolFactory.cs (1)
29internal override TypeSymbol GetSpecialType(PEModuleSymbol moduleSymbol, SpecialType specialType)
Symbols\MetadataOrSourceAssemblySymbol.cs (3)
83Debug.Assert(typeId != SpecialType.None); 146SpecialType.System_IntPtr => 0, 147SpecialType.System_UIntPtr => 1,
Symbols\MethodSymbol.cs (4)
1298new TypedConstant(declaringCompilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, PEModule.RequiredMembersMarker), // message 1299new TypedConstant(declaringCompilation.GetSpecialType(SpecialType.System_Boolean), TypedConstantKind.Primitive, true)) // error 1304ImmutableArray.Create(new TypedConstant(declaringCompilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, nameof(CompilerFeatureRequiredFeatures.RequiredMembers))) 1318[new TypedConstant(declaringCompilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, nameof(CompilerFeatureRequiredFeatures.ClosedClasses))]));
Symbols\MethodSymbolExtensions.cs (1)
61else if (method.ContainingType.SpecialType == SpecialType.System_Object)
Symbols\MissingMetadataTypeSymbol.cs (9)
149/// Either <see cref="SpecialType"/>, <see cref="InternalSpecialType"/>, <see cref="WellKnownType"/>, or -1 if not initialized. 196RoslynDebug.Assert(typeId == -1 || typeId == (int)SpecialType.None || arity == 0 || mangleName); 313return (typeId >= (int)WellKnownType.First) ? SpecialType.None : (ExtendedSpecialType)typeId; 323var errorInfo = this.TypeId != (int)SpecialType.None ? 335if (this.SpecialType == Microsoft.CodeAnalysis.SpecialType.System_Object) 337return (int)Microsoft.CodeAnalysis.SpecialType.System_Object; 347Debug.Assert(this.SpecialType == SpecialType.System_IntPtr || this.SpecialType == SpecialType.System_UIntPtr); 377this.SpecialType == Microsoft.CodeAnalysis.SpecialType.System_Object)
Symbols\NamedTypeSymbol.cs (3)
1015if (this.SpecialType == SpecialType.System_Object) 1017return (int)SpecialType.System_Object; 1037if (this.SpecialType == SpecialType.System_Object)
Symbols\NativeIntegerTypeSymbol.cs (5)
35Debug.Assert(underlyingType.SpecialType == SpecialType.System_IntPtr || underlyingType.SpecialType == SpecialType.System_UIntPtr); 317private readonly SpecialType _specialType; 324Debug.Assert(_specialType == SpecialType.System_IntPtr || _specialType == SpecialType.System_UIntPtr);
Symbols\PublicModel\TypeSymbol.cs (1)
195SpecialType ITypeSymbol.SpecialType => UnderlyingTypeSymbol.SpecialType;
Symbols\Retargeting\RetargetingSymbolTranslator.cs (1)
212return result.SpecialType == SpecialType.None ? result : result.AsNativeInteger();
Symbols\Source\ExtensionGroupingInfo.cs (2)
743protected override ITypeReference? ObjectType => ExtensionMarkerTypes[0].UnderlyingExtensions[0].ContainingAssembly.GetSpecialType(SpecialType.System_Object).GetCciAdapter(); 893protected override ITypeReference? ObjectType => UnderlyingExtensions[0].ContainingAssembly.GetSpecialType(SpecialType.System_Object).GetCciAdapter();
Symbols\Source\FieldSymbolWithAttributesAndModifiers.cs (2)
189int offset = attribute.CommonConstructorArguments[0].DecodeValue<int>(SpecialType.System_Int32); 275if (this.Type.SpecialType == SpecialType.System_Decimal)
Symbols\Source\ImplicitNamedTypeSymbol.cs (2)
57=> IsScriptClass ? null : this.DeclaringCompilation.GetSpecialType(Microsoft.CodeAnalysis.SpecialType.System_Object); 63diagnostics.ReportUseSite(this.DeclaringCompilation.GetSpecialType(SpecialType.System_Object), GetFirstLocation());
Symbols\Source\ParameterHelpers.cs (2)
991conversion.IsIdentity && parameterType.SpecialType == SpecialType.System_Object && defaultExpression.Type.IsDynamic()) 1006defaultExpression.Type.SpecialType == SpecialType.System_String ||
Symbols\Source\SourceAssemblySymbol.cs (20)
1831var boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 1894var obj = GetSpecialType(SpecialType.System_Object); 1971var int32Type = _compilation.GetSpecialType(SpecialType.System_Int32); 1991var boolType = _compilation.GetSpecialType(SpecialType.System_Boolean); 2025var stringType = _compilation.GetSpecialType(SpecialType.System_String); 2035var stringType = _compilation.GetSpecialType(SpecialType.System_String); 2568wrapNonExceptionThrows = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 2622int arg = attribute.GetConstructorArgument<int>(i, SpecialType.System_Int32); 2808case SpecialType.System_Boolean: 2810case SpecialType.System_Byte: 2811case SpecialType.System_Decimal: 2812case SpecialType.System_Double: 2813case SpecialType.System_Int16: 2814case SpecialType.System_Int32: 2815case SpecialType.System_Int64: 2816case SpecialType.System_SByte: 2817case SpecialType.System_Single: 2818case SpecialType.System_UInt16: 2819case SpecialType.System_UInt32: 2820case SpecialType.System_UInt64:
Symbols\Source\SourceComplexParameterSymbol.cs (9)
685if (constructorArguments[0].TryDecodeValue(SpecialType.System_String, out string? parameterName) 911return arguments.Length == 1 && arguments[0].TryDecodeValue(SpecialType.System_Boolean, out bool value) ? 1004SpecialType specialType = arg.Kind == TypedConstantKind.Enum ? 1097TypeSymbol intType = compilation.GetSpecialType(SpecialType.System_Int32); 1125TypeSymbol stringType = compilation.GetSpecialType(SpecialType.System_String); 1158TypeSymbol stringType = compilation.GetSpecialType(SpecialType.System_String); 1199TypeSymbol stringType = compilation.GetSpecialType(SpecialType.System_String); 1377if (constant.TypeInternal is not { SpecialType: SpecialType.System_String }) 1383var name = constant.DecodeValue<string>(SpecialType.System_String);
Symbols\Source\SourceConstructorSymbolBase.cs (1)
59_lazyReturnType = TypeWithAnnotations.Create(bodyBinder.GetSpecialType(SpecialType.System_Void, diagnostics, syntax));
Symbols\Source\SourceDelegateMethodSymbol.cs (7)
60var voidType = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_Void, diagnostics, syntax)); 62var objectType = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_Object, diagnostics, syntax)); 63var intPtrType = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_IntPtr, diagnostics, syntax)); 80if (binder.Compilation.GetSpecialType(SpecialType.System_IAsyncResult).TypeKind != TypeKind.Error && 81binder.Compilation.GetSpecialType(SpecialType.System_AsyncCallback).TypeKind != TypeKind.Error && 85var iAsyncResultType = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_IAsyncResult, diagnostics, syntax)); 86var asyncCallbackType = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_AsyncCallback, diagnostics, syntax));
Symbols\Source\SourceDestructorSymbol.cs (1)
86_lazyReturnType = TypeWithAnnotations.Create(bodyBinder.GetSpecialType(SpecialType.System_Void, diagnostics, syntax));
Symbols\Source\SourceEnumConstantSymbol.cs (1)
159var constantType = this.ContainingType.EnumUnderlyingType.SpecialType;
Symbols\Source\SourceEventAccessorSymbol.cs (2)
131TypeSymbol voidType = compilation.GetSpecialType(SpecialType.System_Void); 142TypeSymbol voidType = compilation.GetSpecialType(SpecialType.System_Void);
Symbols\Source\SourceFieldSymbol.cs (1)
89CSharpCustomModifier.CreateRequired(this.ContainingAssembly.GetSpecialType(SpecialType.System_Runtime_CompilerServices_IsVolatile)));
Symbols\Source\SourceFixedFieldSymbol.cs (3)
47var intType = compilation.GetSpecialType(SpecialType.System_Int32); 90TypeSymbol intType = binder.GetSpecialType(SpecialType.System_Int32, diagnostics, sizeExpression); 238=> ContainingAssembly.GetSpecialType(SpecialType.System_ValueType);
Symbols\Source\SourceMemberContainerSymbol.cs (11)
113Debug.Assert(EnumUtilities.ContainsAllValues<SpecialType>(SpecialTypeMask)); 3100if (method.IsOverride && method.GetConstructedLeastOverriddenMethod(this, requireSameReturnType: false).ContainingType.SpecialType == Microsoft.CodeAnalysis.SpecialType.System_Object) 5006Conversion c = compilation.Conversions.ClassifyImplicitConversionFromType(parameterType.Type, compilation.GetSpecialType(SpecialType.System_Object), ref useSiteInfo); 5152TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Void)), 5169if (deconstruct.ReturnType.SpecialType != SpecialType.System_Void && !deconstruct.ReturnType.IsErrorType()) 5200TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Void)), 5252returnType: TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Boolean)), 5307returnType: TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_String)), 5481TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Int32)), 5580TypeWithAnnotations.Create(compilation.GetSpecialType(SpecialType.System_Boolean)), 5600if (thisEquals.ReturnType.SpecialType != SpecialType.System_Boolean && !thisEquals.ReturnType.IsErrorType())
Symbols\Source\SourceMemberFieldSymbol.cs (2)
123&& this.Type.SpecialType == SpecialType.System_Decimal) 162if (IsConst && Type.SpecialType == SpecialType.System_Decimal &&
Symbols\Source\SourceMethodSymbol.cs (1)
277ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, nameof(CompilerFeatureRequiredFeatures.UserDefinedCompoundAssignmentOperators)))
Symbols\Source\SourceMethodSymbolWithAttributes.cs (14)
344string? name = attributeData.GetConstructorArgument<string>(0, SpecialType.System_String); 663attribute.CommonConstructorArguments[0].DecodeValue<bool>(SpecialType.System_Boolean) 771string name = attribute.GetConstructorArgument<string>(0, SpecialType.System_String); 864string? moduleName = attribute.GetConstructorArgument<string>(0, SpecialType.System_String); 906charSet = namedArg.Value.DecodeValue<CharSet>(SpecialType.System_Enum); 911setLastError = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 916exactSpelling = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 920preserveSig = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 925callingConvention = namedArg.Value.DecodeValue<CallingConvention>(SpecialType.System_Enum); 929bestFitMapping = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 933throwOnUnmappable = namedArg.Value.DecodeValue<bool>(SpecialType.System_Boolean); 1011{ Type.SpecialType: SpecialType.System_String }, 1019Debug.Assert(arguments.Attribute.AttributeConstructor.Parameters is [{ Type.SpecialType: SpecialType.System_Int32 }, { Type.SpecialType: SpecialType.System_String }]);
Symbols\Source\SourceModuleSymbol.cs (4)
590CharSet charSet = attribute.GetConstructorArgument<CharSet>(0, SpecialType.System_Enum); 680var version = ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_Int32), TypedConstantKind.Primitive, 11)); 686var version = ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_Int32), TypedConstantKind.Primitive, CSharpCompilationOptions.UpdatedMemorySafetyRulesVersion)); 693new TypedConstant(compilation.GetSpecialType(SpecialType.System_Boolean), TypedConstantKind.Primitive, _assemblySymbol.InternalsAreVisible));
Symbols\Source\SourceNamedTypeSymbol.cs (15)
948string? name = attributeData.GetConstructorArgument<string>(0, SpecialType.System_String); 1022int length = attributeData.GetConstructorArgument<int>(0, SpecialType.System_Int32); 1042string? methodName = attributeData.GetConstructorArgument<string>(1, SpecialType.System_String); 1076Debug.Assert(this.SpecialType == SpecialType.System_Object || this.DeclaringCompilation.IsAttributeType(this)); 1209string? methodName = attribute.CommonConstructorArguments[1].DecodeValue<string>(SpecialType.System_String); 1221int length = attribute.CommonConstructorArguments[0].DecodeValue<int>(SpecialType.System_Int32); 1418string name = attribute.GetConstructorArgument<string>(0, SpecialType.System_String); 1661if ((object)baseType != null && baseType.SpecialType != SpecialType.System_Object) 1766new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, PEModule.ByRefLikeMarker), // message 1767new TypedConstant(compilation.GetSpecialType(SpecialType.System_Boolean), TypedConstantKind.Primitive, true)), // error=true 1772ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, nameof(CompilerFeatureRequiredFeatures.RefStructs))), 1785var defaultMemberNameConstant = new TypedConstant(compilation.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, defaultMemberName); 1874Debug.Assert(this.SpecialType == SpecialType.System_IntPtr || this.SpecialType == SpecialType.System_UIntPtr); 1993(type.SpecialType == SpecialType.System_Int32 ||
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (20)
528SpecialType baseSpecialType = baseType.SpecialType; 532if (this.SpecialType == SpecialType.System_Enum && baseSpecialType == SpecialType.System_ValueType || 533this.SpecialType == SpecialType.System_MulticastDelegate && baseSpecialType == SpecialType.System_Delegate) 537else if (baseSpecialType == SpecialType.System_Array && this.ContainingAssembly.CorLibrary == this.ContainingAssembly) 583if (this.IsStatic && localBase.SpecialType != SpecialType.System_Object) 677if (this.SpecialType == SpecialType.System_Object && ((object)localBase != null || localInterfaces.Count != 0)) 704private static bool IsRestrictedBaseType(SpecialType specialType) 708case SpecialType.System_Array: 709case SpecialType.System_Enum: 710case SpecialType.System_Delegate: 711case SpecialType.System_MulticastDelegate: 712case SpecialType.System_ValueType: 780declaredBase = compilation.GetSpecialType(SpecialType.System_Enum); 785Binder.GetSpecialType(compilation, SpecialType.System_Object, this.GetFirstLocationOrNone(), diagnostics); 798if (this.SpecialType == SpecialType.System_Object) 803declaredBase = compilation.GetSpecialType(SpecialType.System_Object); 808declaredBase = compilation.GetSpecialType(SpecialType.System_ValueType); 816declaredBase = compilation.GetSpecialType(SpecialType.System_MulticastDelegate);
Symbols\Source\SourceNamedTypeSymbol_Enum.cs (2)
69type = compilation.GetSpecialType(SpecialType.System_Int32); 76NamedTypeSymbol defaultUnderlyingType = compilation.GetSpecialType(SpecialType.System_Int32);
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (2)
195if (namedType.SpecialType == SpecialType.System_Void) 499if (namedType.SpecialType == SpecialType.System_Void)
Symbols\Source\SourceNamespaceSymbol.cs (1)
446if ((object)type != null && type.SpecialType != SpecialType.None)
Symbols\Source\SourceOrdinaryMethodSymbol.cs (3)
143if (returnType.SpecialType == SpecialType.System_TypedReference && 144(this.ContainingType.SpecialType == SpecialType.System_TypedReference || this.ContainingType.SpecialType == SpecialType.System_ArgIterator))
Symbols\Source\SourceParameterSymbolBase.cs (1)
89defaultValue.SpecialType == SpecialType.System_Decimal &&
Symbols\Source\SourcePropertyAccessorSymbol.cs (1)
418var type = TypeWithAnnotations.Create(binder.GetSpecialType(SpecialType.System_Void, diagnostics, this.GetSyntax()));
Symbols\Source\SourcePropertySymbolBase.cs (2)
1486string? indexerName = attributeData.CommonConstructorArguments[0].DecodeValue<string>(SpecialType.System_String); 1747string indexerName = attribute.CommonConstructorArguments[0].DecodeValue<string>(SpecialType.System_String);
Symbols\Source\SourceTypeParameterSymbol.cs (1)
347return this.ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (3)
668if ((ContainingType.SpecialType == SpecialType.System_Nullable_T) 818if (this.ReturnType.SpecialType != SpecialType.System_Boolean) 953else if (this.GetParameterType(1).StrippedType().SpecialType != SpecialType.System_Int32)
Symbols\SpecialTypeExtensions.cs (29)
11public static bool CanBeConst(this SpecialType specialType) 15case SpecialType.System_Boolean: 16case SpecialType.System_Char: 17case SpecialType.System_SByte: 18case SpecialType.System_Int16: 19case SpecialType.System_Int32: 20case SpecialType.System_Int64: 21case SpecialType.System_Byte: 22case SpecialType.System_UInt16: 23case SpecialType.System_UInt32: 24case SpecialType.System_UInt64: 25case SpecialType.System_Single: 26case SpecialType.System_Double: 27case SpecialType.System_Decimal: 28case SpecialType.System_String: 35public static bool IsValidVolatileFieldType(this SpecialType specialType) 39case SpecialType.System_Byte: 40case SpecialType.System_SByte: 41case SpecialType.System_Int16: 42case SpecialType.System_UInt16: 43case SpecialType.System_Int32: 44case SpecialType.System_UInt32: 45case SpecialType.System_Char: 46case SpecialType.System_Single: 47case SpecialType.System_Boolean: 48case SpecialType.System_IntPtr: 49case SpecialType.System_UIntPtr: 56public static int FixedBufferElementSizeInBytes(this SpecialType specialType) 60return specialType == SpecialType.System_Decimal ? 0 : specialType.SizeInBytes();
Symbols\Symbol.cs (1)
1302modifierType.SpecialType == SpecialType.System_Runtime_CompilerServices_IsVolatile)
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (5)
33_moveNextCalledField = new SynthesizedFieldSymbol(this, compilation.GetSpecialType(SpecialType.System_Boolean), "_moveNextCalled", isReadOnly: false); 35var iDisposable = compilation.GetSpecialType(SpecialType.System_IDisposable); 36var iEnumerator = compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator); 37var iEnumeratorT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T).Construct(typeArgs); 215internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeParameterSymbol.cs (2)
61internal override TypeSymbol GetDeducedBaseType(ConsList<TypeParameterSymbol> inProgress) => ContainingAssembly.GetSpecialType(SpecialType.System_Object); 63internal override NamedTypeSymbol GetEffectiveBaseClass(ConsList<TypeParameterSymbol> inProgress) => ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (23)
57private static readonly SpecialType[] s_requiredSpecialTypes = new[] 59SpecialType.System_Collections_IEnumerable, 60SpecialType.System_Collections_Generic_IEnumerable_T, 61SpecialType.System_Collections_Generic_ICollection_T, 62SpecialType.System_Collections_Generic_IList_T, 65private static readonly SpecialType[] s_readOnlyInterfacesSpecialTypes = new[] 67SpecialType.System_Collections_Generic_IReadOnlyCollection_T, 68SpecialType.System_Collections_Generic_IReadOnlyList_T, 134compilation.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyCollection_T) is not MissingMetadataTypeSymbol && 135compilation.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyList_T) is not MissingMetadataTypeSymbol; 137foreach (var type in s_requiredSpecialTypes) 148foreach (var type in s_readOnlyInterfacesSpecialTypes) 287var iEnumerable = compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable); 290var iEnumerableT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(typeArgs); 291var iReadOnlyCollectionT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyCollection_T).Construct(typeArgs); 292var iReadOnlyListT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyList_T).Construct(typeArgs); 293var iCollectionT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_ICollection_T).Construct(typeArgs); 294var iListT = compilation.GetSpecialType(SpecialType.System_Collections_Generic_IList_T).Construct(typeArgs); 629NamedTypeSymbol objectType = f.SpecialType(SpecialType.System_Object); 832&& compilation.GetSpecialType(SpecialType.System_IDisposable) is not MissingMetadataTypeSymbol 833&& compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator) is not MissingMetadataTypeSymbol 834&& compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T) is not MissingMetadataTypeSymbol 928internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Synthesized\Records\SynthesizedRecordBaseEquals.cs (2)
29return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Boolean, location, diagnostics)), 66NamedTypeSymbol objectType = F.SpecialType(SpecialType.System_Object);
Symbols\Synthesized\Records\SynthesizedRecordDeconstruct.cs (1)
35return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Void, location, diagnostics)),
Symbols\Synthesized\Records\SynthesizedRecordEqualityOperator.cs (2)
46candidate.ReturnType.SpecialType == SpecialType.System_Boolean && !candidate.IsStatic && 72BoundExpression recordEquals = F.LogicalAnd(F.ObjectNotEqual(left, F.Null(F.SpecialType(SpecialType.System_Object))),
Symbols\Synthesized\Records\SynthesizedRecordEqualityOperatorBase.cs (1)
71return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Boolean, location, diagnostics)),
Symbols\Synthesized\Records\SynthesizedRecordEquals.cs (3)
37return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Boolean, location, diagnostics)), 94retExpr = F.ObjectNotEqual(other, F.Null(F.SpecialType(SpecialType.System_Object))); 108baseEquals.ReturnType.SpecialType != SpecialType.System_Boolean)
Symbols\Synthesized\Records\SynthesizedRecordGetHashCode.cs (2)
34return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Int32, location, diagnostics)), 81if (overridden is null || overridden.ReturnType.SpecialType != SpecialType.System_Int32)
Symbols\Synthesized\Records\SynthesizedRecordObjEquals.cs (3)
33return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Boolean, location, diagnostics)), 36TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Object, location, diagnostics), annotation), 48if (_typedRecordEquals.ReturnType.SpecialType != SpecialType.System_Boolean)
Symbols\Synthesized\Records\SynthesizedRecordPrintMembers.cs (3)
94return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_Boolean, location, diagnostics)), 158basePrintMethod.ReturnType.SpecialType != SpecialType.System_Boolean) 219var objectType = F.SpecialType(SpecialType.System_Object);
Symbols\Synthesized\Records\SynthesizedRecordToString.cs (1)
43return (ReturnType: TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_String, location, diagnostics), annotation),
Symbols\Synthesized\SynthesizedContainer.cs (2)
168internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(this.TypeKind == TypeKind.Struct ? SpecialType.System_ValueType : SpecialType.System_Object);
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (3)
33var systemObject = Binder.GetSpecialType(compilation, SpecialType.System_Object, DummySyntax(), diagnostics); 43var systemVoid = Binder.GetSpecialType(compilation, SpecialType.System_Void, DummySyntax(), diagnostics); 417ReturnType.SpecialType == SpecialType.System_Int32);
Symbols\Synthesized\SynthesizedFieldSymbolBase.cs (1)
77compilation.CanEmitSpecialType(SpecialType.System_String))
Symbols\Synthesized\SynthesizedHotReloadExceptionConstructorSymbol.cs (1)
57delegateInvoke.ReturnType.SpecialType != SpecialType.System_Void ||
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (4)
136internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(SpecialType.System_ValueType); 213arguments: ImmutableArray.Create(new TypedConstant(compilation.GetSpecialType(SpecialType.System_Int32), TypedConstantKind.Primitive, _arrayLength)), 266internal override TypeSymbol GetDeducedBaseType(ConsList<TypeParameterSymbol> inProgress) => ContainingAssembly.GetSpecialType(SpecialType.System_Object); 268internal override NamedTypeSymbol GetEffectiveBaseClass(ConsList<TypeParameterSymbol> inProgress) => ContainingAssembly.GetSpecialType(SpecialType.System_Object);
Symbols\Synthesized\SynthesizedInstanceConstructor.cs (1)
156get { return TypeWithAnnotations.Create(ContainingAssembly.GetSpecialType(SpecialType.System_Void)); }
Symbols\Synthesized\SynthesizedInteractiveInitializerMethod.cs (1)
274? compilation.GetSpecialType(SpecialType.System_Object)
Symbols\Synthesized\SynthesizedParameterSymbol.cs (3)
171compilation.CanEmitSpecialType(SpecialType.System_String)) 213SpecialType.System_Decimal => compilation.SynthesizeDecimalConstantAttribute(defaultValue.DecimalValue), 214SpecialType.System_DateTime => compilation.SynthesizeDateTimeConstantAttribute(defaultValue.DateTimeValue),
Symbols\Synthesized\SynthesizedSimpleProgramEntryPointSymbol.cs (4)
45_returnType = Binder.GetSpecialType(compilation, SpecialType.System_Void, NoLocation.Singleton, diagnostics); 49Construct(Binder.GetSpecialType(compilation, SpecialType.System_Int32, NoLocation.Singleton, diagnostics)); 52_returnType = Binder.GetSpecialType(compilation, SpecialType.System_Int32, NoLocation.Singleton, diagnostics); 59TypeWithAnnotations.Create(Binder.GetSpecialType(compilation, SpecialType.System_String, NoLocation.Singleton, diagnostics)))), 0, RefKind.None, "args"));
Symbols\Synthesized\SynthesizedStaticConstructor.cs (1)
139return TypeWithAnnotations.Create(ContainingAssembly.GetSpecialType(SpecialType.System_Void));
Symbols\Synthesized\SynthesizedSubmissionConstructor.cs (1)
24var submissionArrayType = compilation.CreateArrayTypeSymbol(compilation.GetSpecialType(SpecialType.System_Object));
Symbols\Synthesized\SynthesizedThrowSwitchExpressionExceptionMethod.cs (1)
33Debug.Assert(unmatchedValue.Type.SpecialType == SpecialType.System_Object);
Symbols\Synthesized\SynthesizedUnionValuePropertySymbol.cs (1)
74return (TypeWithAnnotations.Create(Binder.GetSpecialType(DeclaringCompilation, SpecialType.System_Object, TypeLocation, diagnostics), nullableAnnotation: NullableAnnotation.Annotated),
Symbols\TypedConstantExtensions.cs (4)
30if (constant.Kind == TypedConstantKind.Type || constant.TypeInternal!.SpecialType == SpecialType.System_Object) 54SpecialType splType = ((INamedTypeSymbol)constant.Type!).EnumUnderlyingType!.SpecialType; 69private static string DisplayUnsignedEnumConstant(TypedConstant constant, SpecialType specialType, ulong constantToDecode, string typeName) 148private static string DisplaySignedEnumConstant(TypedConstant constant, SpecialType specialType, long constantToDecode, string typeName)
Symbols\TypeParameterSymbol.cs (3)
422case SpecialType.System_Object: 423case SpecialType.System_ValueType: 424case SpecialType.System_Enum:
Symbols\TypeSymbol.cs (5)
503public SpecialType SpecialType => (SpecialType)ExtendedSpecialType; 561|| (SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr && this.ContainingAssembly.RuntimeSupportsNumericIntPtr); 2530SpecialType ITypeSymbolInternal.SpecialType => this.SpecialType;
Symbols\TypeSymbolExtensions.cs (100)
108return type.SpecialType == SpecialType.System_Void; 142return type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 161&& nt.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 214return type.SpecialType == SpecialType.System_Object; 219return type.SpecialType == SpecialType.System_String; 224return type.SpecialType == SpecialType.System_Char; 409SpecialType.System_Collections_Generic_IEnumerable_T or 410SpecialType.System_Collections_Generic_IReadOnlyCollection_T or 411SpecialType.System_Collections_Generic_IReadOnlyList_T, 427SpecialType.System_Collections_Generic_ICollection_T or 428SpecialType.System_Collections_Generic_IList_T, 566SpecialType st = t.SpecialType; 568if (st == SpecialType.System_Collections_Generic_IList_T || 569st == SpecialType.System_Collections_Generic_ICollection_T || 570st == SpecialType.System_Collections_Generic_IEnumerable_T || 571st == SpecialType.System_Collections_Generic_IReadOnlyList_T || 572st == SpecialType.System_Collections_Generic_IReadOnlyCollection_T) 687case SpecialType.System_SByte: 688case SpecialType.System_Byte: 689case SpecialType.System_Int16: 690case SpecialType.System_UInt16: 691case SpecialType.System_Int32: 692case SpecialType.System_UInt32: 693case SpecialType.System_Int64: 694case SpecialType.System_UInt64: 695case SpecialType.System_IntPtr when type.IsNativeIntegerType: 696case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 697case SpecialType.System_Char: 698case SpecialType.System_Boolean: 699case SpecialType.System_Single: 700case SpecialType.System_Double: 701case SpecialType.System_Decimal: 709public static SpecialType GetSpecialTypeSafe(this TypeSymbol? type) 711return type is object ? type.SpecialType : SpecialType.None; 1430case SpecialType.System_SByte: 1431case SpecialType.System_Byte: 1432case SpecialType.System_Int16: 1433case SpecialType.System_UInt16: 1434case SpecialType.System_Int32: 1435case SpecialType.System_UInt32: 1436case SpecialType.System_Int64: 1437case SpecialType.System_UInt64: 1438case SpecialType.System_Char: 1439case SpecialType.System_String: 1442case SpecialType.System_Boolean: 1484&& arguments[0].SpecialType == SpecialType.System_Char; 1495&& arguments[0].SpecialType == SpecialType.System_Char; 1506&& arguments[0].SpecialType == SpecialType.System_Char; 1523case SpecialType.System_TypedReference: 1524case SpecialType.System_ArgIterator: 1525case SpecialType.System_RuntimeArgumentHandle: 1536case SpecialType.System_Boolean: 1537case SpecialType.System_Char: 1538case SpecialType.System_SByte: 1539case SpecialType.System_Int16: 1540case SpecialType.System_Int32: 1541case SpecialType.System_Int64: 1542case SpecialType.System_Byte: 1543case SpecialType.System_UInt16: 1544case SpecialType.System_UInt32: 1545case SpecialType.System_UInt64: 1546case SpecialType.System_IntPtr when type.IsNativeIntegerType: 1547case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 1548case SpecialType.System_Single: 1549case SpecialType.System_Double: 1552case SpecialType.System_Decimal: 1734if (type.SpecialType == SpecialType.System_Object) 2308case SpecialType.System_Object: return 0; 2309case SpecialType.System_String: return 1; 2310case SpecialType.System_Boolean: return 2; 2311case SpecialType.System_Char: return 3; 2312case SpecialType.System_SByte: return 4; 2313case SpecialType.System_Int16: return 5; 2314case SpecialType.System_Int32: return 6; 2315case SpecialType.System_Int64: return 7; 2316case SpecialType.System_Byte: return 8; 2317case SpecialType.System_UInt16: return 9; 2318case SpecialType.System_UInt32: return 10; 2319case SpecialType.System_UInt64: return 11; 2320case SpecialType.System_IntPtr when type.IsNativeIntegerType: return 12; 2321case SpecialType.System_UIntPtr when type.IsNativeIntegerType: return 13; 2322case SpecialType.System_Single: return 14; 2323case SpecialType.System_Double: return 15; 2324case SpecialType.System_Decimal: return 16; 2326case SpecialType.None: 2333case SpecialType.System_Boolean: return 17; 2334case SpecialType.System_Char: return 18; 2335case SpecialType.System_SByte: return 19; 2336case SpecialType.System_Int16: return 20; 2337case SpecialType.System_Int32: return 21; 2338case SpecialType.System_Int64: return 22; 2339case SpecialType.System_Byte: return 23; 2340case SpecialType.System_UInt16: return 24; 2341case SpecialType.System_UInt32: return 25; 2342case SpecialType.System_UInt64: return 26; 2343case SpecialType.System_IntPtr when underlyingType.IsNativeIntegerType: return 27; 2344case SpecialType.System_UIntPtr when underlyingType.IsNativeIntegerType: return 28; 2345case SpecialType.System_Single: return 29; 2346case SpecialType.System_Double: return 30; 2347case SpecialType.System_Decimal: return 31;
Symbols\TypeWithAnnotations.cs (9)
223=> Create(compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(ImmutableArray.Create(typeSymbol))); 272public SpecialType SpecialType => _extensions.GetSpecialType(DefaultType); 865internal abstract SpecialType GetSpecialType(TypeSymbol typeSymbol); 897internal override SpecialType GetSpecialType(TypeSymbol typeSymbol) => typeSymbol.SpecialType; 970internal override SpecialType GetSpecialType(TypeSymbol typeSymbol) => typeSymbol.SpecialType; 1092internal override SpecialType GetSpecialType(TypeSymbol typeSymbol) 1094var specialType = _underlying.SpecialType; 1095return specialType.IsValueType() ? SpecialType.None : specialType; 1203_compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(ImmutableArray.Create(_underlying)) :
Syntax\SyntaxKindExtensions.cs (17)
11internal static SpecialType GetSpecialType(this SyntaxKind kind) 16return SpecialType.System_Void; 18return SpecialType.System_Boolean; 20return SpecialType.System_Byte; 22return SpecialType.System_SByte; 24return SpecialType.System_Int16; 26return SpecialType.System_UInt16; 28return SpecialType.System_Int32; 30return SpecialType.System_UInt32; 32return SpecialType.System_Int64; 34return SpecialType.System_UInt64; 36return SpecialType.System_Double; 38return SpecialType.System_Single; 40return SpecialType.System_Decimal; 42return SpecialType.System_String; 44return SpecialType.System_Char; 46return SpecialType.System_Object;
Utilities\TypeSymbolExtensions.cs (3)
220if (type.SpecialType == SpecialType.System_Object) 280return compilation.Assembly.GetSpecialType(SpecialType.System_Object); 284return compilation.Assembly.GetSpecialType(SpecialType.System_ValueType);
Utilities\ValueSetFactory.cs (17)
33public static IConstantValueSetFactory? ForSpecialType(SpecialType specialType, bool isNative = false) 37SpecialType.System_Byte => ForByte, 38SpecialType.System_SByte => ForSByte, 39SpecialType.System_Char => ForChar, 40SpecialType.System_Int16 => ForShort, 41SpecialType.System_UInt16 => ForUShort, 42SpecialType.System_Int32 => ForInt, 43SpecialType.System_UInt32 => ForUInt, 44SpecialType.System_Int64 => ForLong, 45SpecialType.System_UInt64 => ForULong, 46SpecialType.System_Boolean => ForBool, 47SpecialType.System_Single => ForFloat, 48SpecialType.System_Double => ForDouble, 49SpecialType.System_String => ForString, 50SpecialType.System_Decimal => ForDecimal, 51SpecialType.System_IntPtr when isNative => ForNint, 52SpecialType.System_UIntPtr when isNative => ForNuint,
Microsoft.CodeAnalysis.CSharp.CodeStyle (52)
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertProgram\ConvertProgramAnalysis_TopLevelStatements.cs (1)
94if (containingType.BaseType?.SpecialType != SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructMemberReadOnly\CSharpMakeStructMemberReadOnlyAnalyzer.cs (2)
394if (methodReference.ContainingType.SpecialType is SpecialType.System_Object or SpecialType.System_ValueType)
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryLambdaExpression\CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (1)
122if (lambdaTypeInfo.ConvertedType == null || lambdaTypeInfo.ConvertedType.SpecialType is SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForArrayDiagnosticAnalyzer.cs (2)
101var ienumerableType = convertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T 104i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionInitializer\CSharpUseCollectionInitializerAnalyzer.cs (1)
158if (firstParameter is { Type.SpecialType: SpecialType.System_Int32, Name: "capacity" })
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (2)
185if (symbol is null || !symbol.IsUserDefinedOperator() || symbol.ContainingType.SpecialType == SpecialType.System_String) 202if (symbol is { Name: nameof(ReferenceEquals), ContainingType.SpecialType: SpecialType.System_Object })
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseIndexOperatorDiagnosticAnalyzer.cs (1)
83var arrayType = compilation.GetSpecialType(SpecialType.System_Array);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseRangeOperatorDiagnosticAnalyzer.InfoCache.cs (1)
74var stringType = compilation.GetSpecialType(SpecialType.System_String);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\Helpers.cs (5)
16=> method is { ContainingType.SpecialType: SpecialType.System_String, Name: nameof(string.Remove) }; 33p.Type.SpecialType == SpecialType.System_Int32) 78method.OriginalDefinition.Parameters[0].Type.SpecialType == SpecialType.System_Int32; 116=> parameter.Type.SpecialType == SpecialType.System_Int32 && 120=> parameter.Type.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseIsNullCheckForCastAndEqualityOperatorDiagnosticAnalyzer.cs (1)
76if (semanticModel.GetTypeInfo(castExpression.Type).Type?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (1)
88if (castType?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (2)
92Type.SpecialType: SpecialType.System_Object, 246=> value.UnwrapImplicitConversion() is IObjectCreationOperation { Type.SpecialType: SpecialType.System_Object };
src\roslyn\src\Analyzers\CSharp\Analyzers\UseUtf8StringLiteral\UseUtf8StringLiteralDiagnosticAnalyzer.cs (1)
77if (arrayCreationOperation.Type is not IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Byte })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ITypeSymbolExtensions.cs (13)
19case SpecialType.System_Boolean: 20case SpecialType.System_Char: 21case SpecialType.System_SByte: 22case SpecialType.System_Int16: 23case SpecialType.System_Int32: 24case SpecialType.System_Int64: 25case SpecialType.System_Byte: 26case SpecialType.System_UInt16: 27case SpecialType.System_UInt32: 28case SpecialType.System_UInt64: 29case SpecialType.System_Single: 30case SpecialType.System_Double: 33case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (18)
97while (current is IConversionOperation { Type.SpecialType: SpecialType.System_Delegate or SpecialType.System_MulticastDelegate }) 100if (current is IConversionOperation { Type.SpecialType: SpecialType.System_Object }) 570if (castNode.IsParentKind(SyntaxKind.Interpolation) && originalConversionOperation.Type?.SpecialType is SpecialType.System_Object) 675if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T && 676namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IReadOnlyCollection_T or SpecialType.System_Collections_Generic_IReadOnlyList_T) 682if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T && 683namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IList_T) 689if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T or SpecialType.System_Collections_Generic_IList_T && 754if (current.ContainingType.SpecialType == SpecialType.System_Object) 850=> type.IsSignedIntegralType() || type?.SpecialType is SpecialType.System_IntPtr; 1068if (binaryOperation.LeftOperand.Type?.SpecialType == SpecialType.System_Object && 1075else if (binaryOperation.RightOperand.Type?.SpecialType == SpecialType.System_Object && 1278=> type?.SpecialType is SpecialType.System_Double or SpecialType.System_Single; 1564rewrittenType.SpecialType == SpecialType.System_Enum;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (73)
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (4)
29methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean && 37methodSymbol.Parameters.First().Type.SpecialType == SpecialType.System_Object && 517else if (parameter.Type.SpecialType == SpecialType.System_Object) 1108var objectType = compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\CSharp\CodeFixes\FixIncorrectConstraint\CSharpFixIncorrectConstraintCodeFixProvider.cs (2)
87isEnumConstraint ? SpecialType.System_Enum : SpecialType.System_Delegate));
src\roslyn\src\Analyzers\CSharp\CodeFixes\FixReturnType\CSharpFixReturnTypeCodeFixProvider.cs (1)
104if (previousReturnType.SpecialType is SpecialType.System_Void ||
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (1)
53type: semanticModel.GetTypeInfo(((ConstantPatternSyntax)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (2)
96else if (type.SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseUtf8StringLiteral\UseUtf8StringLiteralCodeFixProvider.cs (1)
66namedType.TypeArguments[0].SpecialType == SpecialType.System_Byte;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpFlagsEnumGenerator.cs (1)
23SpecialType underlyingSpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ExpressionGenerator.cs (6)
132var isNotSingle = !IsSpecialType(type, SpecialType.System_Single); 143if (value is double && !IsSpecialType(type, SpecialType.System_Double)) 148if (value is uint && !IsSpecialType(type, SpecialType.System_UInt32)) 153if (value is long && !IsSpecialType(type, SpecialType.System_Int64)) 158if (value is ulong && !IsSpecialType(type, SpecialType.System_UInt64)) 167var isNotDecimal = !IsSpecialType(type, SpecialType.System_Decimal);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (2)
250var baseList = namedType.EnumUnderlyingType != null && namedType.EnumUnderlyingType.SpecialType != SpecialType.System_Int32 321if (namedType is { TypeKind: TypeKind.Class, BaseType: not null, BaseType.SpecialType: not SpecialType.System_Object })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
112targetType = semanticModel.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeParameterSymbolExtensions.cs (1)
65if (type.SpecialType != SpecialType.System_Object)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (2)
126syntax = IdentifierName(symbol.SpecialType == SpecialType.System_IntPtr ? "nint" : "nuint"); 220if (symbol.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
57static m => m.Parameters is [{ Type.SpecialType: SpecialType.System_Int32, Name: "capacity" }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (12)
275case SpecialType.System_Boolean: 277case SpecialType.System_SByte: 278case SpecialType.System_Byte: 279case SpecialType.System_Int16: 280case SpecialType.System_UInt16: 281case SpecialType.System_Int32: 282case SpecialType.System_UInt32: 283case SpecialType.System_Int64: 284case SpecialType.System_UInt64: 285case SpecialType.System_Decimal: 286case SpecialType.System_Single: 287case SpecialType.System_Double:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (35)
589return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 848return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 972return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 982return CreateResult(SpecialType.System_Boolean); 1037if (parentTypes.Any(static parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate)) 1039return parentTypes.Where(parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate); 1070return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1077return CreateResult(SpecialType.System_Boolean); 1110return CreateResult(SpecialType.System_Boolean); 1133return CreateResult(SpecialType.System_Object, NullableAnnotation.Annotated); 1147else if (symbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 1154return compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(symbol); 1175return CreateResult(SpecialType.System_Boolean); 1209return CreateResult(SpecialType.System_Boolean); 1318return CreateResult(SpecialType.System_Void); 1335enumerableType ??= this.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 1343var objectType = Compilation.GetSpecialType(SpecialType.System_Object); 1349: results.Concat(CreateResult(Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable))); 1361return CreateResult(SpecialType.System_Boolean); 1370return CreateResult(SpecialType.System_Boolean); 1679return CreateResult(SpecialType.System_Object); 1975return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1993return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2000return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2009return CreateResult(SpecialType.System_Boolean); 2056return types.Select(t => t.InferredType.SpecialType == SpecialType.System_Void ? new TypeInferenceInfo(task) : new TypeInferenceInfo(taskOfT.Construct(t.InferredType))); 2092return this.Compilation.GetSpecialType(SpecialType.System_Void); 2220return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2247return CreateResult(SpecialType.System_IDisposable); 2271return CreateResult(SpecialType.System_IDisposable); 2275return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2278if (laterUsageInference is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2307if (inferredDescendantTypes is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2452return [new TypeInferenceInfo(Compilation.GetSpecialType(SpecialType.System_Boolean))]; 2461return CreateResult(SpecialType.System_Boolean);
Microsoft.CodeAnalysis.CSharp.Features (110)
CodeRefactorings\UseRecursivePatterns\UseRecursivePatternsCodeRefactoringProvider.cs (1)
525ContainingType: not { SpecialType: SpecialType.System_Nullable_T }
Completion\CompletionProviders\CSharpSuggestionModeCompletionProvider.cs (1)
199.FirstOrDefault(i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T);
Completion\CompletionProviders\DeclarationName\DeclarationNameRecommender.cs (3)
115if (type.SpecialType == SpecialType.System_Void) 164t => t.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T || 188originalDefinition.SpecialType == SpecialType.System_Nullable_T)
Completion\CompletionProviders\ObjectCreationCompletionProvider.cs (1)
130if (namedTypeSymbol?.SpecialType == SpecialType.System_Object)
Completion\KeywordRecommenders\AbstractSpecialTypePreselectingKeywordRecommender.cs (1)
20protected abstract SpecialType SpecialType { get; }
Completion\KeywordRecommenders\BoolKeywordRecommender.cs (2)
49protected override SpecialType SpecialType => SpecialType.System_Boolean;
Completion\KeywordRecommenders\ByteKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_Byte;
Completion\KeywordRecommenders\CharKeywordRecommender.cs (2)
49protected override SpecialType SpecialType => SpecialType.System_Char;
Completion\KeywordRecommenders\DecimalKeywordRecommender.cs (2)
49protected override SpecialType SpecialType => SpecialType.System_Decimal;
Completion\KeywordRecommenders\DoubleKeywordRecommender.cs (2)
49protected override SpecialType SpecialType => SpecialType.System_Double;
Completion\KeywordRecommenders\FloatKeywordRecommender.cs (2)
49protected override SpecialType SpecialType => SpecialType.System_Single;
Completion\KeywordRecommenders\IntKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_Int32;
Completion\KeywordRecommenders\LongKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_Int64;
Completion\KeywordRecommenders\ObjectKeywordRecommender.cs (2)
48protected override SpecialType SpecialType => SpecialType.System_Object;
Completion\KeywordRecommenders\SByteKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_SByte;
Completion\KeywordRecommenders\ShortKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_Int16;
Completion\KeywordRecommenders\StringKeywordRecommender.cs (2)
16protected override SpecialType SpecialType => SpecialType.System_String;
Completion\KeywordRecommenders\UIntKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_UInt32;
Completion\KeywordRecommenders\ULongKeywordRecommender.cs (2)
50protected override SpecialType SpecialType => SpecialType.System_UInt64;
Completion\KeywordRecommenders\UShortKeywordRecommender.cs (2)
57protected override SpecialType SpecialType => SpecialType.System_UInt16;
Completion\Providers\DefaultArgumentProvider.cs (13)
39SpecialType.System_Boolean => "false", 40SpecialType.System_Char => @"'\\0'", 41SpecialType.System_Byte => "(byte)0", 42SpecialType.System_SByte => "(sbyte)0", 43SpecialType.System_Int16 => "(short)0", 44SpecialType.System_UInt16 => "(ushort)0", 45SpecialType.System_Int32 => "0", 46SpecialType.System_UInt32 => "0U", 47SpecialType.System_Int64 => "0L", 48SpecialType.System_UInt64 => "0UL", 49SpecialType.System_Decimal => "0.0m", 50SpecialType.System_Single => "0.0f", 51SpecialType.System_Double => "0.0",
ConvertForEachToFor\CSharpConvertForEachToForCodeRefactoringProvider.cs (2)
70model.Compilation.GetSpecialType(SpecialType.System_Object); 90model.Compilation.GetSpecialType(SpecialType.System_Int32).GenerateTypeSyntax(),
ConvertLinq\CSharpConvertLinqQueryToForEachProvider.cs (5)
303methodSymbol.ReturnType?.SpecialType == SpecialType.System_Int32 && 368=> typeSymbol.SpecialType == SpecialType.System_Int32; 554if (returnTypeInfo.Type.OriginalDefinition?.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T) 560if (returnTypeInfo.ConvertedType.OriginalDefinition?.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T) 746if (methodSymbol.ReturnType.OriginalDefinition?.SpecialType != SpecialType.System_Collections_Generic_IEnumerable_T)
ExtractMethod\CSharpMethodExtractor.Analyzer.cs (1)
32return info.Type == null || info.Type.SpecialType == SpecialType.System_Object
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (6)
179if (controlFlowValueType.SpecialType == SpecialType.System_Boolean) 215else if (controlFlowValueType.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 255Contract.ThrowIfFalse(controlFlowValueType.SpecialType == SpecialType.System_Int32); 293return ReturnStatement(ReturnKeyword.WithoutTrailingTrivia(), this.AnalyzerResult.CoreReturnType.SpecialType == SpecialType.System_Void ? null : IdentifierName(ReturnValueName).WithLeadingTrivia(Space).WithoutTrailingTrivia(), SemicolonToken.WithoutLeadingTrivia()); 508if (this.AnalyzerResult.CoreReturnType.SpecialType == SpecialType.System_Void) 893var hasNonControlFlowReturnValue = variableInfos.Length > 0 || this.AnalyzerResult.CoreReturnType.SpecialType != SpecialType.System_Void;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.ExpressionCodeGenerator.cs (1)
99return AnalyzerResult.CoreReturnType.SpecialType != SpecialType.System_Void
ExtractMethod\CSharpSelectionResult.ExpressionResult.cs (1)
122if (info.Type?.SpecialType == SpecialType.System_String &&
ExtractMethod\Extensions.cs (1)
258=> type == null || type.SpecialType == SpecialType.System_Object;
IntroduceVariable\CSharpIntroduceLocalForExpressionCodeRefactoringProvider.cs (1)
142var isIntrinsic = tupleType.TupleElements.All(f => f.Type?.SpecialType != SpecialType.None);
LanguageServices\CSharpSymbolDisplayService.SymbolDescriptionBuilder.cs (1)
197if (symbol is not INamedTypeSymbol { SpecialType: SpecialType.System_Char })
ReverseForStatement\CSharpReverseForStatementCodeRefactoringProvider.cs (4)
96SpecialType.System_Byte => IsUnsignedBoundary(startValue, endValue, byte.MaxValue), 97SpecialType.System_UInt16 => IsUnsignedBoundary(startValue, endValue, ushort.MaxValue), 98SpecialType.System_UInt32 => IsUnsignedBoundary(startValue, endValue, uint.MaxValue), 99SpecialType.System_UInt64 => IsUnsignedBoundary(startValue, endValue, ulong.MaxValue),
SignatureHelp\ElementAccessExpressionSignatureHelpProvider.cs (1)
63if (namedType.ConstructedFrom.SpecialType == SpecialType.System_Nullable_T &&
Snippets\AbstractCSharpAutoPropertySnippetProvider.cs (1)
69type: compilation.GetSpecialType(SpecialType.System_Int32).GenerateTypeSyntax(allowVar: false),
Snippets\AbstractCSharpForLoopSnippetProvider.cs (1)
95: compilation.GetSpecialType(SpecialType.System_Int32).GenerateTypeSyntax();
Snippets\CSharpConsoleSnippetProvider.cs (1)
42if (lambdaSymbol is IMethodSymbol { ReturnType: { SpecialType: SpecialType.System_Void } or { TypeKind: TypeKind.Error } })
Snippets\CSharpIntMainSnippetProvider.cs (1)
31=> (TypeSyntax)generator.TypeExpression(SpecialType.System_Int32);
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertProgram\ConvertProgramAnalysis_TopLevelStatements.cs (1)
94if (containingType.BaseType?.SpecialType != SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructMemberReadOnly\CSharpMakeStructMemberReadOnlyAnalyzer.cs (2)
394if (methodReference.ContainingType.SpecialType is SpecialType.System_Object or SpecialType.System_ValueType)
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryLambdaExpression\CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (1)
122if (lambdaTypeInfo.ConvertedType == null || lambdaTypeInfo.ConvertedType.SpecialType is SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForArrayDiagnosticAnalyzer.cs (2)
101var ienumerableType = convertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T 104i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionInitializer\CSharpUseCollectionInitializerAnalyzer.cs (1)
158if (firstParameter is { Type.SpecialType: SpecialType.System_Int32, Name: "capacity" })
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (2)
185if (symbol is null || !symbol.IsUserDefinedOperator() || symbol.ContainingType.SpecialType == SpecialType.System_String) 202if (symbol is { Name: nameof(ReferenceEquals), ContainingType.SpecialType: SpecialType.System_Object })
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseIndexOperatorDiagnosticAnalyzer.cs (1)
83var arrayType = compilation.GetSpecialType(SpecialType.System_Array);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseRangeOperatorDiagnosticAnalyzer.InfoCache.cs (1)
74var stringType = compilation.GetSpecialType(SpecialType.System_String);
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\Helpers.cs (5)
16=> method is { ContainingType.SpecialType: SpecialType.System_String, Name: nameof(string.Remove) }; 33p.Type.SpecialType == SpecialType.System_Int32) 78method.OriginalDefinition.Parameters[0].Type.SpecialType == SpecialType.System_Int32; 116=> parameter.Type.SpecialType == SpecialType.System_Int32 && 120=> parameter.Type.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseIsNullCheckForCastAndEqualityOperatorDiagnosticAnalyzer.cs (1)
76if (semanticModel.GetTypeInfo(castExpression.Type).Type?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (1)
88if (castType?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (2)
92Type.SpecialType: SpecialType.System_Object, 246=> value.UnwrapImplicitConversion() is IObjectCreationOperation { Type.SpecialType: SpecialType.System_Object };
src\roslyn\src\Analyzers\CSharp\Analyzers\UseUtf8StringLiteral\UseUtf8StringLiteralDiagnosticAnalyzer.cs (1)
77if (arrayCreationOperation.Type is not IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Byte })
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (4)
29methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean && 37methodSymbol.Parameters.First().Type.SpecialType == SpecialType.System_Object && 517else if (parameter.Type.SpecialType == SpecialType.System_Object) 1108var objectType = compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\CSharp\CodeFixes\FixIncorrectConstraint\CSharpFixIncorrectConstraintCodeFixProvider.cs (2)
87isEnumConstraint ? SpecialType.System_Enum : SpecialType.System_Delegate));
src\roslyn\src\Analyzers\CSharp\CodeFixes\FixReturnType\CSharpFixReturnTypeCodeFixProvider.cs (1)
104if (previousReturnType.SpecialType is SpecialType.System_Void ||
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (1)
53type: semanticModel.GetTypeInfo(((ConstantPatternSyntax)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (2)
96else if (type.SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseUtf8StringLiteral\UseUtf8StringLiteralCodeFixProvider.cs (1)
66namedType.TypeArguments[0].SpecialType == SpecialType.System_Byte;
Microsoft.CodeAnalysis.CSharp.NetAnalyzers (5)
Microsoft.NetCore.Analyzers\InteropServices\CSharpDisableRuntimeMarshalling.Fixer.cs (1)
128else if (operation.TargetMethod.ReturnType.SpecialType == SpecialType.System_Object
Microsoft.NetCore.Analyzers\Performance\CSharpUseSearchValues.Fixer.cs (1)
103bool isByte = elementType.SpecialType == SpecialType.System_Byte;
Microsoft.NetCore.Analyzers\Performance\CSharpUseStartsWithInsteadOfIndexOfComparisonWithZero.Fixer.cs (1)
27(TypeSyntax)generator.TypeExpression(SpecialType.System_Char),
Microsoft.NetCore.Analyzers\Runtime\CSharpForwardCancellationTokenToInvocationsFixer.TypeNameVisitor.cs (1)
185syntax = IdentifierName(symbol.SpecialType == SpecialType.System_IntPtr ? "nint" : "nuint");
Microsoft.NetCore.Analyzers\Runtime\CSharpUseSpanBasedStringConcat.cs (1)
22operation.Type?.SpecialType == SpecialType.System_String;
Microsoft.CodeAnalysis.CSharp.Scripting (16)
Hosting\ObjectFormatter\CSharpTypeNameFormatter.cs (16)
27protected override string GetPrimitiveTypeName(SpecialType type) 31case SpecialType.System_Boolean: return "bool"; 32case SpecialType.System_Byte: return "byte"; 33case SpecialType.System_Char: return "char"; 34case SpecialType.System_Decimal: return "decimal"; 35case SpecialType.System_Double: return "double"; 36case SpecialType.System_Int16: return "short"; 37case SpecialType.System_Int32: return "int"; 38case SpecialType.System_Int64: return "long"; 39case SpecialType.System_SByte: return "sbyte"; 40case SpecialType.System_Single: return "float"; 41case SpecialType.System_String: return "string"; 42case SpecialType.System_UInt16: return "ushort"; 43case SpecialType.System_UInt32: return "uint"; 44case SpecialType.System_UInt64: return "ulong"; 45case SpecialType.System_Object: return "object";
Microsoft.CodeAnalysis.CSharp.Workspaces (248)
CodeGeneration\CSharpSyntaxGenerator.cs (17)
3499public override SyntaxNode TypeExpression(SpecialType specialType) 3502SpecialType.System_Boolean => BoolKeyword, 3503SpecialType.System_Byte => ByteKeyword, 3504SpecialType.System_Char => CharKeyword, 3505SpecialType.System_Decimal => DecimalKeyword, 3506SpecialType.System_Double => DoubleKeyword, 3507SpecialType.System_Int16 => ShortKeyword, 3508SpecialType.System_Int32 => IntKeyword, 3509SpecialType.System_Int64 => LongKeyword, 3510SpecialType.System_Object => ObjectKeyword, 3511SpecialType.System_SByte => SByteKeyword, 3512SpecialType.System_Single => FloatKeyword, 3513SpecialType.System_String => StringKeyword, 3514SpecialType.System_UInt16 => UShortKeyword, 3515SpecialType.System_UInt32 => UIntKeyword, 3516SpecialType.System_UInt64 => ULongKeyword, 3517SpecialType.System_Void => VoidKeyword,
Recommendations\CSharpRecommendationServiceRunner.cs (2)
886symbol.ContainingType.SpecialType is SpecialType.System_Object or SpecialType.System_ValueType)
Recommendations\CSharpRecommendationServiceRunner_Conversions.cs (109)
20private static readonly ImmutableArray<SpecialType> s_predefinedEnumConversionTargets = 22SpecialType.System_Byte, 23SpecialType.System_Char, 24SpecialType.System_Decimal, 25SpecialType.System_Double, 26SpecialType.System_Single, 27SpecialType.System_Int32, 28SpecialType.System_Int64, 29SpecialType.System_SByte, 30SpecialType.System_Int16, 31SpecialType.System_UInt32, 32SpecialType.System_UInt64, 33SpecialType.System_UInt16, 36private static readonly ImmutableArray<SpecialType> s_sbyteConversions = 38SpecialType.System_Byte, 39SpecialType.System_Char, 40SpecialType.System_UInt32, 41SpecialType.System_UInt64, 42SpecialType.System_UInt16, 45private static readonly ImmutableArray<SpecialType> s_byteConversions = [SpecialType.System_Char, SpecialType.System_SByte]; 47private static readonly ImmutableArray<SpecialType> s_int16Conversions = 49SpecialType.System_Byte, 50SpecialType.System_Char, 51SpecialType.System_UInt32, 52SpecialType.System_UInt64, 53SpecialType.System_UInt16, 54SpecialType.System_SByte, 57private static readonly ImmutableArray<SpecialType> s_uint16Conversions = [SpecialType.System_Byte, SpecialType.System_Char, SpecialType.System_SByte, SpecialType.System_Int16]; 59private static readonly ImmutableArray<SpecialType> s_int32Conversions = 61SpecialType.System_Byte, 62SpecialType.System_Char, 63SpecialType.System_SByte, 64SpecialType.System_Int16, 65SpecialType.System_UInt32, 66SpecialType.System_UInt16, 67SpecialType.System_UInt64, 70private static readonly ImmutableArray<SpecialType> s_uint32Conversions = 72SpecialType.System_Byte, 73SpecialType.System_Char, 74SpecialType.System_Int32, 75SpecialType.System_SByte, 76SpecialType.System_Int16, 77SpecialType.System_UInt16, 80private static readonly ImmutableArray<SpecialType> s_int64Conversions = 82SpecialType.System_Byte, 83SpecialType.System_Char, 84SpecialType.System_Int32, 85SpecialType.System_UInt32, 86SpecialType.System_UInt64, 87SpecialType.System_UInt16, 88SpecialType.System_SByte, 89SpecialType.System_Int16, 92private static readonly ImmutableArray<SpecialType> s_uint64Conversions = 94SpecialType.System_Byte, 95SpecialType.System_Char, 96SpecialType.System_Int32, 97SpecialType.System_Int64, 98SpecialType.System_UInt32, 99SpecialType.System_UInt16, 100SpecialType.System_SByte, 101SpecialType.System_Int16, 104private static readonly ImmutableArray<SpecialType> s_charConversions = [SpecialType.System_Byte, SpecialType.System_SByte, SpecialType.System_Int16]; 106private static readonly ImmutableArray<SpecialType> s_singleConversions = 108SpecialType.System_Byte, 109SpecialType.System_Char, 110SpecialType.System_Decimal, 111SpecialType.System_Int32, 112SpecialType.System_Int64, 113SpecialType.System_UInt32, 114SpecialType.System_UInt64, 115SpecialType.System_UInt16, 116SpecialType.System_SByte, 117SpecialType.System_Int16, 120private static readonly ImmutableArray<SpecialType> s_doubleConversions = 122SpecialType.System_Byte, 123SpecialType.System_Char, 124SpecialType.System_Decimal, 125SpecialType.System_Single, 126SpecialType.System_Int32, 127SpecialType.System_Int64, 128SpecialType.System_UInt32, 129SpecialType.System_UInt64, 130SpecialType.System_UInt16, 131SpecialType.System_SByte, 132SpecialType.System_Int16, 148? compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(container) 210public static ImmutableArray<SpecialType>? GetPredefinedNumericConversions(ITypeSymbol container) 213SpecialType.System_SByte => s_sbyteConversions, 214SpecialType.System_Byte => s_byteConversions, 215SpecialType.System_Int16 => s_int16Conversions, 216SpecialType.System_UInt16 => s_uint16Conversions, 217SpecialType.System_Int32 => s_int32Conversions, 218SpecialType.System_UInt32 => s_uint32Conversions, 219SpecialType.System_Int64 => s_int64Conversions, 220SpecialType.System_UInt64 => s_uint64Conversions, 221SpecialType.System_Char => s_charConversions, 222SpecialType.System_Single => s_singleConversions, 223SpecialType.System_Double => s_doubleConversions, 229ITypeSymbol container, INamedTypeSymbol containerWithoutNullable, ArrayBuilder<ISymbol> symbols, ImmutableArray<SpecialType> specialTypes) 233foreach (var specialType in specialTypes)
Recommendations\CSharpRecommendationServiceRunner_Operators.cs (3)
55=> container.IsSpecialType() || container.SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr; 96return symbol.Parameters.Length == 2 && symbol.ReturnType.SpecialType == SpecialType.System_Boolean;
Rename\CSharpRenameRewriterLanguageService.cs (1)
1027if (!method.ReturnsVoid && !method.Parameters.Any() && method.ReturnType.SpecialType == SpecialType.System_Boolean)
Simplification\Simplifiers\AbstractCSharpSimplifier.cs (23)
33/// Returns the predefined keyword kind for a given <see cref="SpecialType"/>. 35/// <param name="specialType">The <see cref="SpecialType"/> of this type.</param> 37protected static SyntaxToken? TryGetPredefinedKeywordToken(SemanticModel semanticModel, SpecialType specialType) 41SpecialType.System_Boolean => SyntaxKind.BoolKeyword, 42SpecialType.System_Byte => SyntaxKind.ByteKeyword, 43SpecialType.System_SByte => SyntaxKind.SByteKeyword, 44SpecialType.System_Int32 => SyntaxKind.IntKeyword, 45SpecialType.System_UInt32 => SyntaxKind.UIntKeyword, 46SpecialType.System_Int16 => SyntaxKind.ShortKeyword, 47SpecialType.System_UInt16 => SyntaxKind.UShortKeyword, 48SpecialType.System_Int64 => SyntaxKind.LongKeyword, 49SpecialType.System_UInt64 => SyntaxKind.ULongKeyword, 50SpecialType.System_Single => SyntaxKind.FloatKeyword, 51SpecialType.System_Double => SyntaxKind.DoubleKeyword, 52SpecialType.System_Decimal => SyntaxKind.DecimalKeyword, 53SpecialType.System_String => SyntaxKind.StringKeyword, 54SpecialType.System_Char => SyntaxKind.CharKeyword, 55SpecialType.System_Object => SyntaxKind.ObjectKeyword, 56SpecialType.System_Void => SyntaxKind.VoidKeyword, 63if (specialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr && semanticModel.UnifiesNativeIntegers()) 64return SyntaxFactory.Identifier(specialType == SpecialType.System_IntPtr ? "nint" : "nuint"); 387semanticModel.GetTypeInfo(invocationExpr).Type.SpecialType == SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ITypeSymbolExtensions.cs (13)
19case SpecialType.System_Boolean: 20case SpecialType.System_Char: 21case SpecialType.System_SByte: 22case SpecialType.System_Int16: 23case SpecialType.System_Int32: 24case SpecialType.System_Int64: 25case SpecialType.System_Byte: 26case SpecialType.System_UInt16: 27case SpecialType.System_UInt32: 28case SpecialType.System_UInt64: 29case SpecialType.System_Single: 30case SpecialType.System_Double: 33case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (18)
97while (current is IConversionOperation { Type.SpecialType: SpecialType.System_Delegate or SpecialType.System_MulticastDelegate }) 100if (current is IConversionOperation { Type.SpecialType: SpecialType.System_Object }) 570if (castNode.IsParentKind(SyntaxKind.Interpolation) && originalConversionOperation.Type?.SpecialType is SpecialType.System_Object) 675if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T && 676namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IReadOnlyCollection_T or SpecialType.System_Collections_Generic_IReadOnlyList_T) 682if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T && 683namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IList_T) 689if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T or SpecialType.System_Collections_Generic_IList_T && 754if (current.ContainingType.SpecialType == SpecialType.System_Object) 850=> type.IsSignedIntegralType() || type?.SpecialType is SpecialType.System_IntPtr; 1068if (binaryOperation.LeftOperand.Type?.SpecialType == SpecialType.System_Object && 1075else if (binaryOperation.RightOperand.Type?.SpecialType == SpecialType.System_Object && 1278=> type?.SpecialType is SpecialType.System_Double or SpecialType.System_Single; 1564rewrittenType.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpFlagsEnumGenerator.cs (1)
23SpecialType underlyingSpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ExpressionGenerator.cs (6)
132var isNotSingle = !IsSpecialType(type, SpecialType.System_Single); 143if (value is double && !IsSpecialType(type, SpecialType.System_Double)) 148if (value is uint && !IsSpecialType(type, SpecialType.System_UInt32)) 153if (value is long && !IsSpecialType(type, SpecialType.System_Int64)) 158if (value is ulong && !IsSpecialType(type, SpecialType.System_UInt64)) 167var isNotDecimal = !IsSpecialType(type, SpecialType.System_Decimal);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (2)
250var baseList = namedType.EnumUnderlyingType != null && namedType.EnumUnderlyingType.SpecialType != SpecialType.System_Int32 321if (namedType is { TypeKind: TypeKind.Class, BaseType: not null, BaseType.SpecialType: not SpecialType.System_Object })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
112targetType = semanticModel.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeParameterSymbolExtensions.cs (1)
65if (type.SpecialType != SpecialType.System_Object)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (2)
126syntax = IdentifierName(symbol.SpecialType == SpecialType.System_IntPtr ? "nint" : "nuint"); 220if (symbol.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
57static m => m.Parameters is [{ Type.SpecialType: SpecialType.System_Int32, Name: "capacity" }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (12)
275case SpecialType.System_Boolean: 277case SpecialType.System_SByte: 278case SpecialType.System_Byte: 279case SpecialType.System_Int16: 280case SpecialType.System_UInt16: 281case SpecialType.System_Int32: 282case SpecialType.System_UInt32: 283case SpecialType.System_Int64: 284case SpecialType.System_UInt64: 285case SpecialType.System_Decimal: 286case SpecialType.System_Single: 287case SpecialType.System_Double:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (35)
589return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 848return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 972return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 982return CreateResult(SpecialType.System_Boolean); 1037if (parentTypes.Any(static parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate)) 1039return parentTypes.Where(parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate); 1070return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1077return CreateResult(SpecialType.System_Boolean); 1110return CreateResult(SpecialType.System_Boolean); 1133return CreateResult(SpecialType.System_Object, NullableAnnotation.Annotated); 1147else if (symbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 1154return compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(symbol); 1175return CreateResult(SpecialType.System_Boolean); 1209return CreateResult(SpecialType.System_Boolean); 1318return CreateResult(SpecialType.System_Void); 1335enumerableType ??= this.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 1343var objectType = Compilation.GetSpecialType(SpecialType.System_Object); 1349: results.Concat(CreateResult(Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable))); 1361return CreateResult(SpecialType.System_Boolean); 1370return CreateResult(SpecialType.System_Boolean); 1679return CreateResult(SpecialType.System_Object); 1975return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1993return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2000return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2009return CreateResult(SpecialType.System_Boolean); 2056return types.Select(t => t.InferredType.SpecialType == SpecialType.System_Void ? new TypeInferenceInfo(task) : new TypeInferenceInfo(taskOfT.Construct(t.InferredType))); 2092return this.Compilation.GetSpecialType(SpecialType.System_Void); 2220return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2247return CreateResult(SpecialType.System_IDisposable); 2271return CreateResult(SpecialType.System_IDisposable); 2275return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2278if (laterUsageInference is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2307if (inferredDescendantTypes is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2452return [new TypeInferenceInfo(Compilation.GetSpecialType(SpecialType.System_Boolean))]; 2461return CreateResult(SpecialType.System_Boolean);
Microsoft.CodeAnalysis.Extensions.Package (259)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
Microsoft.CodeAnalysis.Features (145)
AddDebuggerDisplay\AbstractAddDebuggerDisplayCodeRefactoringProvider.cs (1)
165returnType: generator.TypeExpression(SpecialType.System_String),
Completion\Providers\AbstractObjectCreationCompletionProvider.cs (2)
68if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 71if (type.SpecialType == SpecialType.System_Void)
Completion\Providers\AbstractObjectInitializerCompletionProvider.cs (10)
144case SpecialType.System_Enum: 145case SpecialType.System_String: 146case SpecialType.System_Object: 147case SpecialType.System_Delegate: 148case SpecialType.System_MulticastDelegate: 152case SpecialType.System_Array: 156case SpecialType.System_Collections_IEnumerable: 157case SpecialType.System_Collections_IEnumerator: 158case SpecialType.System_Collections_Generic_IEnumerable_T: 159case SpecialType.System_Collections_Generic_IEnumerator_T:
Completion\Providers\AbstractRecommendationServiceBasedCompletionProvider.cs (2)
63var inferredTypes = context.InferredTypes.Where(t => t.SpecialType != SpecialType.System_Void).ToSet<ITypeSymbol>(SymbolEqualityComparer.Default); 64var objectType = context.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Object);
Completion\Providers\AbstractSymbolCompletionProvider.cs (1)
61if (symbol.ContainingType?.SpecialType == SpecialType.System_Object)
Completion\Providers\ImportCompletionProvider\TypeImportCompletionCacheEntry.cs (2)
209var isEnumBaseType = symbol.SpecialType is >= SpecialType.System_SByte and <= SpecialType.System_UInt64;
ConvertCast\AbstractConvertCastCodeRefactoringProvider.cs (1)
55if (type is { IsReferenceType: true } or { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T })
ConvertForEachToFor\AbstractConvertForEachToForCodeRefactoringProvider.cs (2)
239if (collectionType.SpecialType == SpecialType.System_String) 241var charType = model.Compilation.GetSpecialType(SpecialType.System_Char);
ConvertForToForEach\AbstractConvertForToForEachCodeRefactoringProvider.cs (5)
112var ienumerableType = semanticModel.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 113var ienumeratorType = semanticModel.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T); 347var indexerType = GetIndexerType(containingType, collectionType, semanticModel.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T)); 351indexerType ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object)); 536=> property is { IsIndexer: true, Parameters: [{ Type.SpecialType: SpecialType.System_Int32 }] };
ConvertToInterpolatedString\AbstractConvertConcatenationToInterpolatedStringRefactoringProvider.cs (2)
245if (symbol?.ContainingType.SpecialType == SpecialType.System_Object) 294ContainingType.SpecialType: SpecialType.System_String,
ConvertToInterpolatedString\AbstractConvertPlaceholderToInterpolatedStringRefactoringProvider.cs (2)
122var shouldReplaceInvocation = invocationSymbol is { ContainingType.SpecialType: SpecialType.System_String, Name: nameof(string.Format) }; 132var stringType = semanticModel.Compilation.GetSpecialType(SpecialType.System_String);
ConvertTupleToStruct\AbstractConvertTupleToStructCodeRefactoringProvider.cs (1)
869model.Compilation.GetSpecialType(SpecialType.System_Void),
DesignerAttribute\DesignerAttributeDiscoveryService.cs (1)
321if (attribute is { ConstructorArguments: [{ Type.SpecialType: SpecialType.System_String, Value: string stringValue }] })
EmbeddedLanguages\EmbeddedLanguageDetector.cs (1)
190m => m is IMethodSymbol { Parameters: [{ Type.SpecialType: SpecialType.System_String }, ..] });
ExtractClass\AbstractExtractClassRefactoringProvider.cs (1)
137private static bool HasBaseType(INamedTypeSymbol containingType) => containingType.BaseType?.SpecialType != SpecialType.System_Object;
ExtractMethod\ExtractMethodFlowControlInformation.cs (6)
61var controlFlowValueType = compilation.GetSpecialType(SpecialType.System_Void); 68controlFlowValueType = compilation.GetSpecialType(SpecialType.System_Boolean); 73controlFlowValueType = compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(compilation.GetSpecialType(SpecialType.System_Boolean)); 78controlFlowValueType = compilation.GetSpecialType(SpecialType.System_Int32); 118=> ControlFlowValueType.SpecialType != SpecialType.System_Void;
ExtractMethod\MethodExtractor.Analyzer.cs (2)
187return compilation.GetSpecialType(SpecialType.System_Void); 202return compilation.GetSpecialType(SpecialType.System_Void);
ExtractMethod\MethodExtractor.CodeGenerator.cs (5)
263if (returnType != null && returnType.SpecialType != SpecialType.System_Void) 461return AnalyzerResult.CoreReturnType.SpecialType != SpecialType.System_Void 475if (controlFlowValueType.SpecialType == SpecialType.System_Void) 482if (coreReturnType.SpecialType == SpecialType.System_Void) 500return type.SpecialType == SpecialType.System_Void
ExtractMethod\MethodExtractor.cs (1)
228if (type.SpecialType == SpecialType.System_Void)
ExtractMethod\SelectionResult.cs (1)
69return (returnType ?? this.SemanticDocument.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Object), returnsByRef);
GenerateComparisonOperators\GenerateComparisonOperatorsCodeRefactoringProvider.cs (1)
181var boolType = compilation.GetSpecialType(SpecialType.System_Boolean);
GenerateEqualsAndGetHashCodeFromMembers\AbstractGenerateEqualsAndGetHashCodeService.cs (1)
137returnType: compilation.GetSpecialType(SpecialType.System_Int32),
GenerateEqualsAndGetHashCodeFromMembers\GenerateEqualsAndGetHashCodeAction.cs (2)
164compilation.GetSpecialType(SpecialType.System_Boolean), 181compilation.GetSpecialType(SpecialType.System_Boolean),
GenerateType\AbstractGenerateTypeService.GenerateNamedType.cs (1)
75return _state.Compilation.GetSpecialType(SpecialType.System_Void);
GenerateType\AbstractGenerateTypeService.State.cs (6)
259SpecialType.System_Object or 260SpecialType.System_Array or 261SpecialType.System_Delegate or 262SpecialType.System_MulticastDelegate or 263SpecialType.System_ValueType or 264SpecialType.System_Enum)
InheritanceMargin\AbstractInheritanceMarginService_Helpers.cs (3)
308.WhereAsArray(symbol => !symbol.IsErrorType() && symbol.SpecialType is not (SpecialType.System_Object or SpecialType.System_ValueType or SpecialType.System_Enum));
InitializeParameter\AbstractAddParameterCheckCodeRefactoringProvider.cs (10)
124if (parameter.Type.SpecialType == SpecialType.System_String) 209if (parameter.Type.SpecialType == SpecialType.System_String) 283else if (parameter.Type.SpecialType == SpecialType.System_String && 422var enumType = compilation.GetSpecialType(SpecialType.System_Enum); 532return targetMethod.ContainingType.SpecialType == SpecialType.System_String; 642var enumType = compilation.GetSpecialType(SpecialType.System_Enum); 677compilation.GetSpecialType(SpecialType.System_Int32), 698.FirstOrDefault(s => s is IMethodSymbol { Parameters: [{ Type.SpecialType: SpecialType.System_Object }, ..] }); 765.FirstOrDefault(s => s is IMethodSymbol { Parameters: [{ Type.SpecialType: SpecialType.System_String }, ..] }); 776var stringType = compilation.GetSpecialType(SpecialType.System_String);
InlineHints\AbstractInlineParameterNameHintsService.cs (1)
243return parameter.Type.SpecialType == SpecialType.System_Boolean;
IntroduceUsingStatement\AbstractIntroduceUsingStatementCodeRefactoringProvider.cs (2)
68var disposableType = semanticModel.Compilation.GetSpecialType(SpecialType.System_IDisposable); 105var disposableType = semanticModel.Compilation.GetSpecialType(SpecialType.System_IDisposable);
IntroduceVariable\AbstractIntroduceLocalForExpressionCodeRefactoringProvider.cs (1)
45type.SpecialType == SpecialType.System_Void)
IntroduceVariable\AbstractIntroduceVariableService.cs (2)
383if (typeInfo.Type?.SpecialType == SpecialType.System_String && 401return semanticModel.Compilation.GetSpecialType(SpecialType.System_Object);
IntroduceVariable\AbstractIntroduceVariableService.State.cs (1)
105if (type == null || type.SpecialType == SpecialType.System_Void)
IntroduceVariable\AbstractIntroduceVariableService.State_Query.cs (1)
30if (info.Type == null || info.Type.SpecialType == SpecialType.System_Void)
LanguageServices\SymbolDisplayService\AbstractSymbolDisplayService.AbstractSymbolDescriptionBuilder.cs (1)
587if (symbol.IsEnumType() && symbol.EnumUnderlyingType!.SpecialType != SpecialType.System_Int32)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
68public SpecialType SpecialType => _symbol.SpecialType;
PreferFrameworkType\PreferFrameworkTypeCodeFixProvider.cs (2)
51var replacementNode = typeSymbol.SpecialType is SpecialType.System_IntPtr or SpecialType.System_UIntPtr
PreferFrameworkType\PreferFrameworkTypeDiagnosticAnalyzerBase.cs (1)
87typeSymbol.SpecialType is SpecialType.None)
QuickInfo\QuickInfoUtilities.cs (1)
46if (symbol is INamedTypeSymbol { SpecialType: SpecialType.System_Void })
ReplaceMethodWithProperty\ReplaceMethodWithPropertyCodeRefactoringProvider.cs (1)
125if (current.ContainingType.SpecialType == SpecialType.System_Object)
RQName\RQNodeBuilder.cs (2)
70if (type != type.ConstructedFrom || type.SpecialType == SpecialType.System_Void) 265if (symbol.SpecialType == SpecialType.System_Void)
Snippets\SnippetProviders\AbstractConditionalBlockSnippetProvider.cs (1)
22=> type.SpecialType == SpecialType.System_Boolean;
Snippets\SnippetProviders\AbstractMainMethodSnippetProvider.cs (1)
29type: generator.ArrayTypeExpression(generator.TypeExpression(SpecialType.System_String)))],
src\roslyn\src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (7)
98if (collectionElementType.SpecialType == SpecialType.System_Object) 100var ienumerableOfT = collectionType.AllInterfaces.FirstOrDefault(i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T); 141var isFixable = collectionType.SpecialType == SpecialType.System_Collections_IEnumerable || collectionType.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 157=> collectionElementType.SpecialType != SpecialType.System_Object || 158collectionType.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T || 159collectionType.AllInterfaces.Any(static i => i.OriginalDefinition.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T);
src\roslyn\src\Analyzers\Core\Analyzers\Helpers\HashCodeAnalyzer\HashCodeAnalyzer.cs (1)
30var objectType = compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\AbstractPopulateSwitchDiagnosticAnalyzer.cs (2)
97if (typeWithoutNullable.SpecialType == SpecialType.System_Boolean) 105if (type.RemoveNullableIfPresent() is not { SpecialType: SpecialType.System_Boolean })
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveRedundantEquality\AbstractRemoveRedundantEqualityDiagnosticAnalyzer.cs (2)
88if (leftType?.SpecialType != SpecialType.System_Boolean || 89rightType?.SpecialType != SpecialType.System_Boolean)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnnecessarySuppressions\AbstractRemoveUnnecessaryPragmaSuppressionsDiagnosticAnalyzer.cs (2)
849attribute.AttributeConstructor?.Parameters is [_, { Name: "checkId", Type.SpecialType: SpecialType.System_String }, ..] && 858attribute.AttributeConstructor.Parameters[0].Type.SpecialType == SpecialType.System_String &&
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (3)
902if (attribute.ConstructorArguments is [{ Kind: TypedConstantKind.Primitive, Type.SpecialType: SpecialType.System_String, Value: string value }]) 913Value: { Kind: TypedConstantKind.Primitive, Type.SpecialType: SpecialType.System_String, Value: string namedValue }, 1078(IsSpecialMethodWithMatchingProperty("ShouldSerialize") && methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean ||
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedParametersAndValues\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (1)
177value.Type.SpecialType == SpecialType.System_Void)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedParametersAndValues\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (3)
233method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 273if (method is { MetadataName: "GetInstance", IsStatic: true, Parameters: [{ Type.SpecialType: SpecialType.System_String }] } && 295if (parameter.Type.SpecialType != SpecialType.System_Int32)
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyBooleanExpression\AbstractSimplifyConditionalDiagnosticAnalyzer.cs (2)
154typeInfo.Type?.SpecialType == SpecialType.System_Boolean && 155typeInfo.ConvertedType?.SpecialType == SpecialType.System_Boolean;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationDiagnosticAnalyzer.cs (1)
39var readOnlySpanOfCharType = compilation.ReadOnlySpanOfTType()?.Construct(compilation.GetSpecialType(SpecialType.System_Char));
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationHelpers.cs (2)
35var dateTimeType = compilation.GetSpecialType(SpecialType.System_DateTime); 200return method.ContainingType.SpecialType == SpecialType.System_Object
src\roslyn\src\Analyzers\Core\Analyzers\UseIsNullCheck\AbstractUseIsNullForReferenceEqualsDiagnosticAnalyzer.cs (1)
34var objectType = context.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer.cs (5)
26ContainingType.OriginalDefinition.SpecialType: SpecialType.System_Nullable_T, 85var objectType = compilation.GetSpecialType(SpecialType.System_Object); 199if (type is not INamedTypeSymbol namedType || namedType.ConstructedFrom.SpecialType != SpecialType.System_Nullable_T) 240var whenPartIsNullable = whenPartType?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 420if (typeSymbol?.SpecialType == SpecialType.System_Object)
src\roslyn\src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer_IfStatement.cs (1)
144var whenPartIsNullable = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
src\roslyn\src\Analyzers\Core\Analyzers\ValidateFormatString\AbstractValidateFormatStringDiagnosticAnalyzer.cs (1)
303if (containingType.SpecialType != SpecialType.System_String)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateConstructor\AbstractGenerateConstructorService.State.cs (9)
381case SpecialType.System_Boolean: 382case SpecialType.System_Byte: 383case SpecialType.System_Char: 384case SpecialType.System_Int16: 385case SpecialType.System_Int32: 386case SpecialType.System_Int64: 387case SpecialType.System_Double: 388case SpecialType.System_Single: 389case SpecialType.System_String:
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\AbstractGenerateDeconstructMethodService.State.cs (1)
75returnType: semanticModel.Compilation.GetSpecialType(SpecialType.System_Void),
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateParameterizedMember\AbstractGenerateParameterizedMemberService.cs (1)
64if (typeParameters.Length == 0 && returnType.SpecialType != SpecialType.System_Void)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
451inferredType = inferredType.SpecialType == SpecialType.System_Void
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
248var idisposable = compilation.GetSpecialType(SpecialType.System_IDisposable);
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator.cs (1)
274var condition3 = typeParameter.HasReferenceTypeConstraint && typeParameter.ConstraintTypes.Any(static ts => ts.IsReferenceType && ts.SpecialType != SpecialType.System_Object);
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (2)
176compilation.GetSpecialType(SpecialType.System_Boolean), 239var boolType = compilation.GetSpecialType(SpecialType.System_Boolean);
src\roslyn\src\Analyzers\Core\CodeFixes\SimplifyInterpolation\AbstractSimplifyInterpolationCodeFixProvider.cs (1)
57var readOnlySpanOfCharType = compilation.ReadOnlySpanOfTType()?.Construct(compilation.GetSpecialType(SpecialType.System_Char));
ValueTracking\ValueTracker.cs (1)
246return methodSymbol.ReturnType.SpecialType != SpecialType.System_Void;
Microsoft.CodeAnalysis.Razor.Compiler (11)
CSharp\CompilationExtensions.cs (1)
42var byteType = compilation.GetSpecialType(SpecialType.System_Byte);
CSharp\CompilationTagHelperFeature.cs (1)
40var @string = compilation.GetSpecialType(SpecialType.System_String);
CSharp\DefaultTagHelperDescriptorFactory.cs (2)
278if (dictionaryTypeArguments is not [{ SpecialType: SpecialType.System_String }, ..]) 373=> GetDictionaryArgumentTypes(property) is [{ SpecialType: SpecialType.System_String }, ..];
Language\TagHelpers\Producers\ComponentTagHelperProducer.cs (1)
362Type.SpecialType: SpecialType.System_Boolean,
Mvc.Version1_X\ViewComponentTagHelperDescriptorFactory.cs (2)
135if (returnType.SpecialType == SpecialType.System_Void) 228if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String)
Mvc.Version2_X\ViewComponentTagHelperDescriptorFactory.cs (2)
129if (returnType.SpecialType == SpecialType.System_Void) 243if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String)
Mvc\ViewComponentTagHelperDescriptorFactory.cs (2)
129if (returnType.SpecialType == SpecialType.System_Void) 246if (dictionaryType == null || dictionaryType.TypeArguments[0].SpecialType != SpecialType.System_String)
Microsoft.CodeAnalysis.ResxSourceGenerator (362)
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (19)
339(binaryOperation.Type.SpecialType == SpecialType.System_Boolean && 373SpecialType.System_Boolean 374or SpecialType.System_Byte 375or SpecialType.System_Char 376or SpecialType.System_Double 377or SpecialType.System_Int16 378or SpecialType.System_Int32 379or SpecialType.System_Int64 380or SpecialType.System_UInt16 381or SpecialType.System_UInt32 382or SpecialType.System_UInt64 383or SpecialType.System_IntPtr 384or SpecialType.System_UIntPtr 385or SpecialType.System_SByte 386or SpecialType.System_Single 387or SpecialType.System_String 388or SpecialType.System_Object 389or SpecialType.System_ValueType 390or SpecialType.System_Void => true,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DiagnosticHelpers.cs (11)
11public static bool TryConvertToUInt64(object? value, SpecialType specialType, out ulong convertedValue) 19case SpecialType.System_Int16: 23case SpecialType.System_Int32: 27case SpecialType.System_Int64: 31case SpecialType.System_UInt16: 35case SpecialType.System_UInt32: 39case SpecialType.System_UInt64: 43case SpecialType.System_Byte: 47case SpecialType.System_SByte: 51case SpecialType.System_Char: 55case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DoNotCatchGeneralUnlessRethrown.cs (1)
104compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IMethodSymbolExtensions.cs (16)
31method.ReturnType.SpecialType == SpecialType.System_Boolean && 33method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 43method.ContainingType.SpecialType == SpecialType.System_Object && 46method.ReturnType.SpecialType == SpecialType.System_Boolean && 48method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 58method.ContainingType.SpecialType == SpecialType.System_Object && 60method.ReturnType.SpecialType == SpecialType.System_Boolean && 61method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 62method.Parameters[1].Type.SpecialType == SpecialType.System_Object && 74if (overriddenMethod.ContainingType.SpecialType == SpecialType.System_Object) 185Name: "Dispose", MethodKind: MethodKind.Ordinary, ReturnsVoid: true, Parameters: [{ Type.SpecialType: SpecialType.System_Boolean, RefKind: RefKind.None }] 230method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 397method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean && 411method.Parameters[1].Type.SpecialType == SpecialType.System_Boolean && 490method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 530method.ReturnType.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (16)
22SpecialType.System_Boolean 23or SpecialType.System_Byte 24or SpecialType.System_Char 25or SpecialType.System_Double 26or SpecialType.System_Int16 27or SpecialType.System_Int32 28or SpecialType.System_Int64 29or SpecialType.System_UInt16 30or SpecialType.System_UInt32 31or SpecialType.System_UInt64 32or SpecialType.System_SByte 33or SpecialType.System_Single 34or SpecialType.System_String => true, 249=> typeSymbol.IsValueType || typeSymbol.SpecialType == SpecialType.System_String; 257=> typeSymbol != null && typeSymbol.IsValueType && typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
Microsoft.CodeAnalysis.Scripting (38)
Hosting\ObjectFormatter\CommonPrimitiveFormatter.cs (18)
63case SpecialType.System_Int32: 66case SpecialType.System_String: 69case SpecialType.System_Boolean: 72case SpecialType.System_Char: 75case SpecialType.System_Int64: 78case SpecialType.System_Double: 81case SpecialType.System_Byte: 84case SpecialType.System_Decimal: 87case SpecialType.System_UInt32: 90case SpecialType.System_UInt64: 93case SpecialType.System_Single: 96case SpecialType.System_Int16: 99case SpecialType.System_UInt16: 102case SpecialType.System_DateTime: 105case SpecialType.System_SByte: 108case SpecialType.System_Object: 109case SpecialType.System_Void: 110case SpecialType.None:
Hosting\ObjectFormatter\CommonTypeNameFormatter.cs (1)
21protected abstract string GetPrimitiveTypeName(SpecialType type);
Hosting\ObjectFormatter\ObjectFormatterHelpers.cs (19)
275internal static SpecialType GetPrimitiveSpecialType(Type type) 281return SpecialType.System_Int32; 286return SpecialType.System_String; 291return SpecialType.System_Boolean; 296return SpecialType.System_Char; 301return SpecialType.System_Int64; 306return SpecialType.System_Double; 311return SpecialType.System_Byte; 316return SpecialType.System_Decimal; 321return SpecialType.System_UInt32; 326return SpecialType.System_UInt64; 331return SpecialType.System_Single; 336return SpecialType.System_Int16; 341return SpecialType.System_UInt16; 346return SpecialType.System_DateTime; 351return SpecialType.System_SByte; 356return SpecialType.System_Object; 361return SpecialType.System_Void; 364return SpecialType.None;
Microsoft.CodeAnalysis.VisualBasic (1647)
Analysis\FlowAnalysis\AbstractFlowPass.vb (22)
334Case SpecialType.System_Void, 335SpecialType.System_Boolean, 336SpecialType.System_Char, 337SpecialType.System_SByte, 338SpecialType.System_Byte, 339SpecialType.System_Int16, 340SpecialType.System_UInt16, 341SpecialType.System_Int32, 342SpecialType.System_UInt32, 343SpecialType.System_Int64, 344SpecialType.System_UInt64, 345SpecialType.System_Decimal, 346SpecialType.System_Single, 347SpecialType.System_Double, 348SpecialType.System_DateTime, 349SpecialType.System_TypedReference, 350SpecialType.System_ArgIterator, 351SpecialType.System_RuntimeArgumentHandle, 352SpecialType.System_RuntimeFieldHandle, 353SpecialType.System_RuntimeMethodHandle, 354SpecialType.System_RuntimeTypeHandle 830Debug.Assert(node.ValueOpt IsNot Nothing OrElse node.HasErrors OrElse node.Type.SpecialType = SpecialType.System_Void)
Analysis\InitializerRewriter.vb (2)
213If expr.Type.SpecialType <> SpecialType.System_Void Then 227Debug.Assert(submissionResult.Type.SpecialType <> SpecialType.System_Void)
Binding\Binder.vb (6)
427Public Function GetSpecialType(typeId As SpecialType, node As SyntaxNodeOrToken, diagBag As BindingDiagnosticBag) As NamedTypeSymbol 432Public Shared Function GetSpecialType(compilation As VisualBasicCompilation, typeId As SpecialType, node As SyntaxNodeOrToken, diagBag As BindingDiagnosticBag) As NamedTypeSymbol 437Public Function GetSpecialType(typeId As SpecialType, node As SyntaxNodeOrToken, diagBag As BindingDiagnosticBag, ByRef reportedAnError As Boolean, suppressUseSiteError As Boolean) As NamedTypeSymbol 441Public Shared Function GetSpecialType(compilation As VisualBasicCompilation, typeId As SpecialType, node As SyntaxNodeOrToken, diagBag As BindingDiagnosticBag, ByRef reportedAnError As Boolean, suppressUseSiteError As Boolean) As NamedTypeSymbol 522If candidateProperty.Type.SpecialType <> SpecialType.System_String OrElse 536If parameterType.OriginalDefinition.SpecialType <> SpecialType.System_Collections_Generic_IEnumerable_T OrElse
Binding\Binder_AnonymousTypes.vb (1)
129Dim objectType As TypeSymbol = GetSpecialType(SpecialType.System_Object, initializerSyntax, diagnostics)
Binding\Binder_Attributes.vb (1)
798ReportDiagnostic(diagBag, conv.Operand.Syntax, ERRID.ERR_RequiredAttributeConstConversion2, If(conv.Operand.Type, _binder.Compilation.GetSpecialType(SpecialType.System_Object)), conv.Type)
Binding\Binder_Conversions.vb (30)
122(targetType.IsObjectType() OrElse targetType.SpecialType = SpecialType.System_ValueType) Then 249(targetType.IsObjectType() OrElse targetType.SpecialType = SpecialType.System_ValueType) Then 276Dim targetType As SpecialType 279Case SyntaxKind.CBoolKeyword : targetType = SpecialType.System_Boolean 280Case SyntaxKind.CByteKeyword : targetType = SpecialType.System_Byte 281Case SyntaxKind.CCharKeyword : targetType = SpecialType.System_Char 282Case SyntaxKind.CDateKeyword : targetType = SpecialType.System_DateTime 283Case SyntaxKind.CDecKeyword : targetType = SpecialType.System_Decimal 284Case SyntaxKind.CDblKeyword : targetType = SpecialType.System_Double 285Case SyntaxKind.CIntKeyword : targetType = SpecialType.System_Int32 286Case SyntaxKind.CLngKeyword : targetType = SpecialType.System_Int64 287Case SyntaxKind.CObjKeyword : targetType = SpecialType.System_Object 288Case SyntaxKind.CSByteKeyword : targetType = SpecialType.System_SByte 289Case SyntaxKind.CShortKeyword : targetType = SpecialType.System_Int16 290Case SyntaxKind.CSngKeyword : targetType = SpecialType.System_Single 291Case SyntaxKind.CStrKeyword : targetType = SpecialType.System_String 292Case SyntaxKind.CUIntKeyword : targetType = SpecialType.System_UInt32 293Case SyntaxKind.CULngKeyword : targetType = SpecialType.System_UInt64 294Case SyntaxKind.CUShortKeyword : targetType = SpecialType.System_UInt16 389Dim nullableOfT As NamedTypeSymbol = Compilation.GetSpecialType(SpecialType.System_Nullable_T) 390intermediateTargetType = Compilation.GetSpecialType(SpecialType.System_Nullable_T). 509(targetType.IsObjectType() OrElse targetType.SpecialType = SpecialType.System_ValueType) Then 711If targetGenericDefinition.SpecialType = SpecialType.System_Collections_Generic_IList_T OrElse 712targetGenericDefinition.SpecialType = SpecialType.System_Collections_Generic_ICollection_T OrElse 713targetGenericDefinition.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyList_T OrElse 714targetGenericDefinition.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyCollection_T OrElse 745Dim iEnumerable_T As NamedTypeSymbol = Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 996targetType.SpecialType <> SpecialType.System_MulticastDelegate) 1730If (targetType.SpecialType = SpecialType.System_String) AndAlso IsIEnumerableOfXElement(sourceType, useSiteInfo) Then 1775(targetElement.IsObjectType() OrElse targetElement.SpecialType = SpecialType.System_ValueType) AndAlso
Binding\Binder_Delegates.vb (2)
229If targetType.SpecialType = SpecialType.System_Delegate OrElse 230targetType.SpecialType = SpecialType.System_MulticastDelegate Then
Binding\Binder_Expressions.vb (36)
552expressionType = GetSpecialType(SpecialType.System_Object, expression.Syntax, diagnostics) 693If typeSym.IsArrayType AndAlso DirectCast(typeSym, ArrayTypeSymbol).ElementType.SpecialType = SpecialType.System_Void Then 765Return New BoundNameOfOperator(node, argument, ConstantValue.Create(value), GetSpecialType(SpecialType.System_String, node, diagnostics)) 778Dim resultType As TypeSymbol = GetSpecialType(SpecialType.System_Boolean, node, diagnostics) 803operand = ApplyImplicitConversion(node, GetSpecialType(SpecialType.System_Object, node.Expression, diagnostics), operand, diagnostics) 972resultType = GetSpecialType(SpecialType.System_Nullable_T, expr.Syntax, diagnostics).Construct(resultType) 1258(exprType IsNot Nothing AndAlso exprType.SpecialType = SpecialType.System_Void) Then 1439GetSpecialType(SpecialType.System_Object, expr.Syntax, diagnostics), Nothing) 1539(originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 1540originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IList_T OrElse 1541originalTargetType.SpecialType = SpecialType.System_Collections_Generic_ICollection_T OrElse 1542originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyList_T OrElse 1543originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyCollection_T) Then 1944dominantType = GetSpecialType(SpecialType.System_Object, node, diagnostics) 2011dominantType = If(boundFirstArg.Type, If(boundSecondArg.Type, GetSpecialType(SpecialType.System_Object, node, diagnostics))) 2483MemberLookup.GetTypeForIntrinsicAlias(name) <> SpecialType.None Then 3752GetSpecialType(SpecialType.System_String, node.Name, diagnostics))), 3769If type.SpecialType = SpecialType.System_Object OrElse type.IsExtensibleInterfaceNoUseSiteDiagnostics() Then 3771Dim arg = New BoundLiteral(name, ConstantValue.Create(node.Name.Identifier.ValueText), GetSpecialType(SpecialType.System_String, name, diagnostics)) 3790Dim arg = New BoundLiteral(name, ConstantValue.Create(node.Name.Identifier.ValueText), GetSpecialType(SpecialType.System_String, name, diagnostics)) 3807If type.SpecialType = SpecialType.System_Array Then 3833GetSpecialType(SpecialType.System_String, node.Name, diagnostics))), 3876Dim specialType As SpecialType = GetSpecialTypeForTypeCharacter(typeChar, typeCharacterString) 3899Dim specialType As SpecialType = GetSpecialTypeForTypeCharacter(typeChar, typeCharacterString) 3901If specialType <> specialType.None Then 3923Dim int32Type = GetSpecialType(SpecialType.System_Int32, node.ArgumentList, diagnostics) 4134Dim Int32Type = GetSpecialType(SpecialType.System_Int32, node, diagnostics) 4218inferredElementType = GetSpecialType(SpecialType.System_Object, node, diagnostics) 4350Dim int32Type = GetSpecialType(SpecialType.System_Int32, arrayBoundsOpt, diagnostics) 4465Dim specialType As SpecialType = SpecialTypeExtensions.FromRuntimeTypeOfLiteralValue(value) 4468Debug.Assert(specialType <> specialType.None AndAlso 4469specialType <> specialType.System_Byte AndAlso 4470specialType <> specialType.System_SByte) 4604Debug.Assert(dominantType.IsArrayType AndAlso DirectCast(dominantType, ArrayTypeSymbol).Rank = 1 AndAlso DirectCast(dominantType, ArrayTypeSymbol).ElementType.SpecialType = SpecialType.System_Object) 4610dominantType = GetSpecialType(SpecialType.System_Object, syntax, diagnostics) 4615dominantType = GetSpecialType(SpecialType.System_Object, syntax, diagnostics)
Binding\Binder_Initializers.vb (4)
159If fieldSymbol.Type.SpecialType = SpecialType.System_DateTime Then 164ElseIf fieldSymbol.Type.SpecialType = SpecialType.System_Decimal Then 214If expression.Type Is Nothing OrElse expression.Type.SpecialType <> SpecialType.System_Void Then 511Dim fieldType = If(fieldSymbol.HasDeclaredType, fieldSymbol.Type, GetSpecialType(SpecialType.System_Object, asNewSyntax, BindingDiagnosticBag.Discarded)) ' prevent recursion if field type is inferred.
Binding\Binder_InterpolatedString.vb (2)
32Return New BoundInterpolatedStringExpression(syntax, contentBuilder.ToImmutableAndFree(), constructionOpt:=Nothing, type:=GetSpecialType(SpecialType.System_String, syntax, diagnostics)) 77Debug.Assert(node.Type.SpecialType = SpecialType.System_String)
Binding\Binder_Invocation.vb (10)
338If target.Type.SpecialType = SpecialType.System_Object OrElse 339target.Type.SpecialType = SpecialType.System_Array Then 2719GetSpecialType(SpecialType.System_Int32, node, diagnostics)).MakeCompilerGenerated()}).AsImmutableOrNull(), 3178literal = New BoundLiteral(syntax, callerInfoValue, GetSpecialType(SpecialType.System_Int32, syntax, ignoreDiagnostics)) 3181literal = New BoundLiteral(syntax, callerInfoValue, GetSpecialType(SpecialType.System_String, syntax, ignoreDiagnostics)) 3219defaultConstantValue = ConstantValue.Default(SpecialType.System_Int32) 3222If paramNullableUnderlyingTypeOrSelf.GetEnumUnderlyingTypeOrSelf().SpecialType = SpecialType.System_Int32 Then 3225defaultArgumentType = GetSpecialType(SpecialType.System_Int32, syntax, diagnostics) 3228ElseIf defaultSpecialType <> SpecialType.None Then 3249If param.Type.SpecialType = SpecialType.System_Object Then
Binding\Binder_Lambda.vb (20)
61If originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerable_T AndAlso 62originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerator_T AndAlso 63returnType.SpecialType <> SpecialType.System_Collections_IEnumerable AndAlso 64returnType.SpecialType <> SpecialType.System_Collections_IEnumerator Then 73returnType = GetSpecialType(SpecialType.System_Void, node.SubOrFunctionHeader, diagnostics) 133objectType = GetSpecialType(SpecialType.System_Object, unboundParam.IdentifierSyntax, diagnostics) 172If target.ReturnType.SpecialType <> SpecialType.System_Void AndAlso 174Not ((source.Flags And SourceMemberFlags.Iterator) <> 0 AndAlso (target.ReturnType.SpecialType = SpecialType.System_Collections_IEnumerable OrElse 175target.ReturnType.SpecialType = SpecialType.System_Collections_IEnumerator)) Then 188If origTargetReturnType.SpecialType <> SpecialType.System_Collections_Generic_IEnumerable_T AndAlso 189origTargetReturnType.SpecialType <> SpecialType.System_Collections_Generic_IEnumerator_T Then 205Compilation.GetSpecialType(SpecialType.System_Void), ' No need to report use-site error. 289If source.ReturnType Is Nothing AndAlso target.ReturnType.SpecialType <> SpecialType.System_Void Then 773Dim targetSignature As New UnboundLambda.TargetSignature(ImmutableArray(Of ParameterSymbol).Empty, Compilation.GetSpecialType(SpecialType.System_Void), returnsByRef:=False) 850commonParameterTypes(i) = Compilation.GetSpecialType(SpecialType.System_Object) 863Compilation.GetSpecialType(SpecialType.System_Void), 925lambdaReturnType = GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, source.Syntax, diagnostics). 926Construct(GetSpecialType(SpecialType.System_Object, source.Syntax, diagnostics)) 942lambdaReturnType = GetSpecialType(SpecialType.System_Object, source.Syntax, diagnostics) 997lambdaReturnType = GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, source.Syntax, diagnostics).Construct(lambdaReturnType)
Binding\Binder_Latebound.vb (4)
60Dim objType = Me.GetSpecialType(SpecialType.System_Object, node, diagnostics) 165Dim objectType = GetSpecialType(SpecialType.System_Object, node, diagnostics) 183argument = omitted.Update(GetSpecialType(SpecialType.System_Object, argument.Syntax, diagnostics)) 227Dim objType = Me.GetSpecialType(SpecialType.System_Object, node, diagnostics)
Binding\Binder_Lookup.vb (21)
419If specialType <> specialType.None Then 448Public Shared Function GetTypeForIntrinsicAlias(possibleAlias As String) As SpecialType 453Return SpecialType.System_DateTime 455Return SpecialType.System_UInt16 457Return SpecialType.System_Int16 459Return SpecialType.System_UInt32 461Return SpecialType.System_Int32 463Return SpecialType.System_UInt64 465Return SpecialType.System_Int64 467Return SpecialType.None 832Return iFaceSpecial = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 833iFaceSpecial = SpecialType.System_Collections_Generic_IList_T OrElse 834iFaceSpecial = SpecialType.System_Collections_Generic_ICollection_T OrElse 836iFaceSpecial = SpecialType.System_Collections_Generic_IReadOnlyList_T OrElse 837iFaceSpecial = SpecialType.System_Collections_Generic_IReadOnlyCollection_T OrElse 839iFaceSpecial = SpecialType.System_Collections_IEnumerable OrElse 1471Dim obj As NamedTypeSymbol = binder.SourceModule.ContainingAssembly.GetSpecialType(SpecialType.System_Object) 1928If container IsNot Nothing And container.SpecialType = SpecialType.System_Void Then 2006binder.SourceModule.ContainingAssembly.GetSpecialType(SpecialType.System_Object), 2163Return typeParameter.ContainingAssembly.GetSpecialType(If(typeParameter.HasValueTypeConstraint, SpecialType.System_ValueType, SpecialType.System_Object))
Binding\Binder_ObjectInitializer.vb (3)
674If initializedObjectType.SpecialType = SpecialType.System_Object OrElse initializedObjectType.IsErrorType Then 677If initializedObjectType.SpecialType = SpecialType.System_Object Then 872Dim ienumerable = GetSpecialType(SpecialType.System_Collections_IEnumerable,
Binding\Binder_Operators.vb (27)
75Dim booleanType = GetSpecialType(SpecialType.System_Boolean, node, diagnostics) 111GetSpecialType(SpecialType.System_Object, targetArgument.Syntax, diagnostics), 134GetSpecialType(SpecialType.System_Object, targetArgument.Syntax, diagnostics), 286Dim intrinsicOperatorType As SpecialType = SpecialType.None 333If intrinsicOperatorType = SpecialType.None Then 372Dim booleanType As TypeSymbol = GetSpecialTypeForBinaryOperator(node, leftType, rightType, SpecialType.System_Boolean, 484Dim rightTargetType As TypeSymbol = GetSpecialTypeForBinaryOperator(node, leftType, rightType, SpecialType.System_Int32, 821stringType = GetSpecialType(SpecialType.System_String, dbNullOperand.Syntax, diagnostics) 839specialType As SpecialType, 912If ofSpecialType <> SpecialType.None Then 1020Dim defaultRightSpecialType As SpecialType 1025defaultRightSpecialType = SpecialType.System_String 1029defaultRightSpecialType = SpecialType.System_Boolean 1049defaultRightSpecialType = SpecialType.System_Int32 1068Dim defaultLeftSpecialType As SpecialType = SpecialType.None 1082defaultLeftSpecialType = SpecialType.System_String 1088defaultLeftSpecialType = SpecialType.System_Int32 1091If defaultLeftSpecialType = SpecialType.None OrElse defaultLeftSpecialType = rightType.SpecialType Then 1122If leftType.SpecialType <> SpecialType.System_String Then 1123rightType = GetSpecialType(SpecialType.System_String, right.Syntax, diagnostics) 1143Dim int32Type = GetSpecialType(SpecialType.System_Int32, node.Operand, diagnostics) 1154Dim intrinsicOperatorType As SpecialType = SpecialType.None 1188If intrinsicOperatorType = SpecialType.None Then 1207If operandType.SpecialType = SpecialType.System_Object Then
Binding\Binder_Query.vb (5)
2330Dim boolSymbol As NamedTypeSymbol = GetSpecialType(SpecialType.System_Boolean, condition, diagnostics) 3469Dim intrinsicOperatorType As SpecialType = SpecialType.None 3482intrinsicOperatorType <> SpecialType.None Then 4389inferredType = GetSpecialType(SpecialType.System_Object, source.Syntax, additionalDiagnostics)
Binding\Binder_SelectCase.vb (14)
390Dim booleanType = GetSpecialType(SpecialType.System_Boolean, selectExpression.Syntax, diagnostics) 694Case SpecialType.System_Boolean, 695SpecialType.System_Byte, 696SpecialType.System_UInt16, 697SpecialType.System_UInt32, 698SpecialType.System_UInt64 701Case SpecialType.System_SByte, 702SpecialType.System_Int16, 703SpecialType.System_Int32, 704SpecialType.System_Int64, 705SpecialType.System_Char 708Case SpecialType.System_Single, 709SpecialType.System_Double 712Case SpecialType.System_Decimal
Binding\Binder_Statements.vb (40)
810target.Type.SpecialType <> SpecialType.System_Array AndAlso 811target.Type.SpecialType <> SpecialType.System_Object Then 1365If hasExplicitType AndAlso Not (symbol.IsConst AndAlso type.SpecialType = SpecialType.System_Object) Then 2207Dim int32 As NamedTypeSymbol = GetSpecialType(SpecialType.System_Int32, midExpression, diagnostics) 2219Dim stringType As NamedTypeSymbol = GetSpecialType(SpecialType.System_String, midExpression, diagnostics) 2264Compilation.GetSpecialType(SpecialType.System_Void), 2451Dim container = If(exprSymbol IsNot Nothing, exprSymbol.ContainingSymbol, Compilation.GetSpecialType(SpecialType.System_Object)) 2751GetSpecialType(SpecialType.System_Void, conditionalAccess.Syntax, diagnostics)) 3165Me.GetSpecialType(SpecialType.System_Int32, forStatement, diagnostics)) 3191Dim integerType = GetSpecialType(SpecialType.System_Int32, node, diagnostics) 3192Dim booleanType = GetSpecialType(SpecialType.System_Boolean, node, diagnostics) 3488Dim idisposableType = Compilation.GetSpecialType(SpecialType.System_IDisposable) 3504Debug.Assert(enumeratorType.SpecialType = SpecialType.System_Collections_IEnumerator) 3749Dim interfaceSpecialType As SpecialType = SpecialType.None 3771Dim genericIEnumerable = GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, collectionSyntax, ienumerableUseSiteDiagnostics) 3806interfaceSpecialType = SpecialType.System_Collections_Generic_IEnumerable_T 3811Dim ienumerable = GetSpecialType(SpecialType.System_Collections_IEnumerable, collectionSyntax, ienumerableUseSiteDiagnostics) 3821interfaceSpecialType = SpecialType.System_Collections_IEnumerable 3872If interfaceSpecialType <> SpecialType.None Then 3879If interfaceSpecialType = SpecialType.System_Collections_Generic_IEnumerable_T Then 3939If interfaceSpecialType = SpecialType.System_Collections_Generic_IEnumerable_T Then 3983elementType = GetSpecialType(SpecialType.System_Char, collectionSyntax, diagnostics) 3989Dim idisposable = GetSpecialType(SpecialType.System_IDisposable, collectionSyntax, diagnostics) 4003getEnumeratorReturnType.SpecialType = SpecialType.System_Collections_IEnumerator Then 4165DirectCast(boundMoveNextCall, BoundCall).Method.OriginalDefinition.ReturnType.SpecialType <> SpecialType.System_Boolean Then 4355Dim valueTypeSymbol = interfaceType.ContainingAssembly.GetSpecialType(SpecialType.System_ValueType) 4446Dim iDisposable = GetSpecialType(SpecialType.System_IDisposable, 4952Dim boolSymbol As NamedTypeSymbol = GetSpecialType(SpecialType.System_Boolean, node, diagnostics) 4979Return Compilation.GetSpecialType(SpecialType.System_Void) 4983Return Compilation.GetSpecialType(SpecialType.System_Void) 5017If retType.SpecialType = SpecialType.System_Void Then 5023If(isAsync AndAlso Not methodReturnType.SpecialType = SpecialType.System_Void, ERRID.ERR_ReturnFromNonGenericTaskAsync, ERRID.ERR_ReturnFromNonFunction))) 5107Dim returnSpecialType As SpecialType = If(returnNamedType IsNot Nothing, returnNamedType.SpecialType, Nothing) 5109If returnSpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 5110returnSpecialType = SpecialType.System_Collections_Generic_IEnumerator_T Then 5115If returnSpecialType = SpecialType.System_Collections_IEnumerable OrElse 5116returnSpecialType = SpecialType.System_Collections_IEnumerator Then 5118Return GetSpecialType(SpecialType.System_Object, node, diagnostics) 5236GetSpecialType(SpecialType.System_Int32, node.ErrorNumber, diagnostics),
Binding\Binder_Symbols.vb (18)
64If type.SpecialType = SpecialType.System_Void Then 765Dim type As SpecialType 768type = SpecialType.System_Object 770type = SpecialType.System_Boolean 772type = SpecialType.System_DateTime 774type = SpecialType.System_Char 776type = SpecialType.System_String 778type = SpecialType.System_Decimal 780type = SpecialType.System_Byte 782type = SpecialType.System_SByte 784type = SpecialType.System_UInt16 786type = SpecialType.System_Int16 788type = SpecialType.System_UInt32 790type = SpecialType.System_Int32 792type = SpecialType.System_UInt64 794type = SpecialType.System_Int64 796type = SpecialType.System_Single 798type = SpecialType.System_Double
Binding\Binder_Utils.vb (34)
295Dim nullableType As NamedTypeSymbol = DirectCast(GetSpecialType(SpecialType.System_Nullable_T, syntax, diagBag), NamedTypeSymbol) 673Dim specialType As SpecialType = GetSpecialTypeForTypeCharacter(identifier.GetTypeCharacter(), typeCharacterString) 695Return GetSpecialType(SpecialType.System_Object, identifier, diagBag) 699Public Shared Function GetSpecialTypeForTypeCharacter(typeChar As TypeCharacter, ByRef typeCharacterString As String) As SpecialType 700Dim specialType As SpecialType = SpecialType.None 704specialType = SpecialType.System_Decimal 707specialType = SpecialType.System_Decimal 710specialType = SpecialType.System_Double 713specialType = SpecialType.System_Double 716specialType = SpecialType.System_Int32 719specialType = SpecialType.System_Int32 722specialType = SpecialType.System_Int64 725specialType = SpecialType.System_Int64 728specialType = SpecialType.System_Int16 731specialType = SpecialType.System_Single 734specialType = SpecialType.System_Single 737specialType = SpecialType.System_String 740specialType = SpecialType.System_UInt32 743specialType = SpecialType.System_UInt64 746specialType = SpecialType.System_UInt16 1374Case SpecialType.System_Boolean, 1375SpecialType.System_Byte, 1376SpecialType.System_SByte, 1377SpecialType.System_Int16, 1378SpecialType.System_UInt16, 1379SpecialType.System_Int32, 1380SpecialType.System_UInt32, 1381SpecialType.System_Int64, 1382SpecialType.System_UInt64, 1383SpecialType.System_Single, 1384SpecialType.System_Double, 1385SpecialType.System_Char 1408If(operandType, GetSpecialType(SpecialType.System_Object, operand.Syntax, diagnostics)),
Binding\Binder_XmlLiterals.vb (7)
292Dim prefixesType = CreateArrayType(GetSpecialType(SpecialType.System_String, syntax, diagnostics)) 647If receiverType.SpecialType = SpecialType.System_Object Then 674memberAccess = BadExpression(syntax, ImmutableArray.Create(receiver, name), Compilation.GetSpecialType(SpecialType.System_String)) 697If receiverType.SpecialType = SpecialType.System_Object Then 797Return BadExpression(syntax, Compilation.GetSpecialType(SpecialType.System_String)) 903Dim result = BadExpression(syntax, Compilation.GetSpecialType(SpecialType.System_String)) 1057Dim result = New BoundLiteral(syntax, ConstantValue.Create(str), GetSpecialType(SpecialType.System_String, syntax, diagnostics), hasErrors:=hasErrors)
Binding\DocumentationCommentCrefBinder_Compat.vb (17)
351Dim type As SpecialType 354type = SpecialType.System_Object 356type = SpecialType.System_Boolean 358type = SpecialType.System_DateTime 360type = SpecialType.System_Char 362type = SpecialType.System_String 364type = SpecialType.System_Decimal 366type = SpecialType.System_Byte 368type = SpecialType.System_SByte 370type = SpecialType.System_UInt16 372type = SpecialType.System_Int16 374type = SpecialType.System_UInt32 376type = SpecialType.System_Int32 378type = SpecialType.System_UInt64 380type = SpecialType.System_Int64 382type = SpecialType.System_Single 384type = SpecialType.System_Double
Binding\ImplicitVariableBinder.vb (2)
157Dim localSpecialType As SpecialType = SpecialType.System_Object
Binding\SyntheticBoundTrees\SynthesizedPropertyAccessorBase.vb (4)
264accessor.ContainingAssembly.GetSpecialType(SpecialType.System_Object)), 266accessor.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean))).MakeCompilerGenerated, 344accessor.ContainingAssembly.GetSpecialType(SpecialType.System_Object)), 346accessor.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean))).MakeCompilerGenerated,
Binding\SyntheticBoundTrees\SynthesizedStringSwitchHashMethod.vb (4)
57Dim i As LocalSymbol = F.SynthesizedLocal(Me.ContainingAssembly.GetSpecialType(SpecialType.System_Int32)) 58Dim hashCode As LocalSymbol = F.SynthesizedLocal(Me.ContainingAssembly.GetSpecialType(SpecialType.System_UInt32)) 98F.Binary(BinaryOperatorKind.IsNot, Me.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean), 119F.Binary(BinaryOperatorKind.LessThan, Me.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean),
BoundTree\BoundAssignmentOperator.vb (2)
42left.GetPropertyOrXmlProperty().ContainingAssembly.GetSpecialType(SpecialType.System_Void), 44left.Type.ContainingAssembly.GetSpecialType(SpecialType.System_Void),
BoundTree\BoundExpressionExtensions.vb (6)
373If node.Value.Discriminator = ConstantValueTypeDiscriminator.Int32 AndAlso node.Type.SpecialType = SpecialType.System_Int32 Then 426Dim type As SpecialType = expression.Type.SpecialType 428Case SpecialType.System_Int16 431Case SpecialType.System_Int32 434Case SpecialType.System_Int64 456If type Is Nothing OrElse type.SpecialType = SpecialType.System_Object Then
BoundTree\BoundInterpolatedStringExpression.vb (1)
40Debug.Assert(Type.SpecialType = SpecialType.System_String)
BoundTree\BoundLocalDeclaration.vb (1)
43(LocalSymbol.IsConst AndAlso LocalSymbol.Type.SpecialType = SpecialType.System_Object AndAlso
BoundTree\BoundSequence.vb (1)
16Debug.Assert(Me.ValueOpt IsNot Nothing OrElse Me.HasErrors OrElse Me.Type.SpecialType = SpecialType.System_Void)
CodeGen\EmitConversion.vb (13)
203Debug.Assert(typeFrom.SpecialType = SpecialType.System_Object OrElse 204typeFrom.SpecialType = SpecialType.System_ValueType OrElse 205typeFrom.SpecialType = SpecialType.System_Enum OrElse 337If typeTo.SpecialType <> SpecialType.System_Object Then 379Debug.Assert(typeTo.SpecialType = SpecialType.System_Object OrElse 380typeTo.SpecialType = SpecialType.System_ValueType OrElse 381typeTo.SpecialType = SpecialType.System_Enum) 426Debug.Assert(typeFrom.SpecialType = SpecialType.System_Object OrElse 427typeFrom.SpecialType = SpecialType.System_ValueType OrElse 428typeFrom.SpecialType = SpecialType.System_Enum OrElse 509Debug.Assert(typeTo.SpecialType = SpecialType.System_Object OrElse 510typeTo.SpecialType = SpecialType.System_ValueType OrElse 511typeTo.SpecialType = SpecialType.System_Enum OrElse
CodeGen\EmitExpression.vb (10)
544Debug.Assert(sequence.ValueOpt IsNot Nothing OrElse sequence.Type.SpecialType = SpecialType.System_Void) 669If field.IsConst AndAlso specType <> SpecialType.System_Decimal AndAlso specType <> SpecialType.System_DateTime Then 1644Debug.Assert(expression.Type.SpecialType = SpecialType.System_Int32 OrElse expression.Type.SpecialType = SpecialType.System_Int64 OrElse expression.Type.SpecialType = SpecialType.System_UIntPtr) 1826If rightType.IsReferenceType OrElse (right.ConstantValueOpt IsNot Nothing AndAlso rightType.SpecialType <> SpecialType.System_Decimal) Then 2326Debug.Assert(node.Type.SpecialType = SpecialType.System_Int32) 2342Debug.Assert(node.Type.SpecialType = SpecialType.System_Int32) 2381Debug.Assert(node.Type.SpecialType = SpecialType.System_Int32)
CodeGen\EmitOperators.vb (10)
459Debug.Assert(binOp.Left.Type.SpecialType = SpecialType.System_Boolean) 460Debug.Assert(binOp.Right.Type.SpecialType = SpecialType.System_Boolean) 515Debug.Assert(binOp.Left.Type.SpecialType = SpecialType.System_Boolean) 516Debug.Assert(binOp.Right.Type.SpecialType = SpecialType.System_Boolean) 522Debug.Assert(binOp.Left.Type.SpecialType = SpecialType.System_Boolean) 523Debug.Assert(binOp.Right.Type.SpecialType = SpecialType.System_Boolean) 529Debug.Assert(binOp.Left.Type.SpecialType = SpecialType.System_Boolean) 530Debug.Assert(binOp.Right.Type.SpecialType = SpecialType.System_Boolean) 613Debug.Assert(condition.Type.SpecialType = SpecialType.System_Boolean) 643Debug.Assert(condition.Type.SpecialType = SpecialType.System_Boolean)
CodeGen\EmitStatement.vb (4)
815Debug.Assert(binOp.Left.IsNothingLiteral() OrElse binOp.Left.Type.SpecialType = SpecialType.System_Object OrElse binOp.WasCompilerGenerated) 816Debug.Assert(binOp.Right.IsNothingLiteral() OrElse binOp.Right.Type.SpecialType = SpecialType.System_Object OrElse binOp.WasCompilerGenerated) 1054If exprType.SpecialType <> SpecialType.System_String Then 1105Dim UInt32Type = DirectCast(_module.GetSpecialType(SpecialType.System_UInt32, syntaxNode, _diagnostics).GetInternalSymbol(), TypeSymbol)
CodeGen\ResumableStateMachineStateAllocator.vb (1)
87f.SpecialType(SpecialType.System_Boolean),
Compilation\ClsComplianceChecker.vb (8)
347Debug.Assert(baseType IsNot Nothing OrElse symbol.SpecialType = SpecialType.System_Object, "Only object has no base.") 440Debug.Assert(symbol.DelegateReturnType.SpecialType = SpecialType.System_Void) 630Case SpecialType.System_TypedReference, SpecialType.System_UIntPtr 632Case SpecialType.System_SByte, SpecialType.System_UInt16, SpecialType.System_UInt32, SpecialType.System_UInt64
Compilation\MethodCompiler.vb (2)
1923Dim objectType = constructor.ContainingAssembly.GetSpecialType(SpecialType.System_Object) 2090Dim voidType As NamedTypeSymbol = constructor.ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Compilation\VisualBasicCompilation.vb (13)
849Return info.Type.SpecialType <> SpecialType.System_Void 854Return info.Type.SpecialType <> SpecialType.System_Void 1977Return GetSpecialType(SpecialType.System_Object) 2841Private Protected Overrides Function CommonGetSpecialType(specialType As SpecialType) As INamedTypeSymbolInternal 3018If returnType.SpecialType <> SpecialType.None AndAlso 3019leftType.SpecialType <> SpecialType.None AndAlso 3020rightType.SpecialType <> SpecialType.None Then 3023If resolved <> SpecialType.None Then 3029If resolved <> SpecialType.System_Object Then 3038resolved = SpecialType.System_Boolean 3085If returnType.SpecialType <> SpecialType.None AndAlso 3086operandType.SpecialType <> SpecialType.None Then 3093If resolved <> SpecialType.None AndAlso
Emit\EditAndContinue\PEDeltaAssemblyBuilder.vb (4)
73_deepTranslator = New VisualBasicSymbolMatcher.DeepTranslator(sourceAssembly.GetSpecialType(SpecialType.System_Object)) 214Debug.Assert(type.BaseTypeNoUseSiteDiagnostics.SpecialType = SpecialType.System_MulticastDelegate) 312Dim stringType = Compilation.GetSpecialType(SpecialType.System_String) 313Dim intType = Compilation.GetSpecialType(SpecialType.System_Int32)
Emit\EditAndContinue\VisualBasicSymbolMatcher.vb (1)
36New DeepTranslator(otherAssembly.GetSpecialType(SpecialType.System_Object)))
Emit\NoPia\EmbeddedTypesManager.vb (3)
50Dim type = ModuleBeingBuilt.Compilation.GetSpecialType(SpecialType.System_String) 133ImmutableArray.Create(New TypedConstant(ctor.Parameters(0).Type, TypedConstantKind.Type, ctor.ContainingAssembly.GetSpecialType(SpecialType.System_Object))), 242If type.SpecialType <> SpecialType.None OrElse
Emit\PEModuleBuilder.vb (4)
588Friend NotOverridable Overrides Function GetSpecialType(specialType As SpecialType, syntaxNodeOpt As SyntaxNode, diagnostics As DiagnosticBag) As Cci.INamedTypeReference 595Private Function GetUntranslatedSpecialType(specialType As SpecialType, syntaxNodeOpt As SyntaxNode, diagnostics As DiagnosticBag) As NamedTypeSymbol 618Return namedType.SpecialType = CType(platformType, SpecialType) 753Return New SynthesizedPrivateImplementationDetailsSharedConstructor(SourceModule, GetPrivateImplClass(syntaxOpt, diagnostics), GetUntranslatedSpecialType(SpecialType.System_Void, syntaxOpt, diagnostics)).GetCciAdapter()
Emit\SymbolTranslator.vb (1)
216If declaredBase IsNot Nothing AndAlso declaredBase.SpecialType = SpecialType.System_ValueType Then
Emit\TypeParameterSymbolAdapter.vb (1)
205If t.SpecialType = SpecialType.System_ValueType Then
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Await.vb (3)
78condition:=Me.F.Convert(Me.F.SpecialType(SpecialType.System_Boolean), rewrittenIsCompleted), 93If rewrittenType.SpecialType <> SpecialType.System_Void Then 120awaiterFieldType = Me.F.SpecialType(SpecialType.System_Object)
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Expressions.vb (4)
157Me.F.SpecialType(SpecialType.System_Object))) 653Me.F.SpecialType(SpecialType.System_Object))) 728Me.F.SpecialType(SpecialType.System_Object))) 732Me.F.SpecialType(SpecialType.System_Object))))
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Spilling.vb (24)
333Me.F.SpecialType(SpecialType.System_Object))) 345Me.F.SpecialType(SpecialType.System_Object))) 356Me.F.SpecialType(SpecialType.System_Object))) 479Case SpecialType.System_Void, 480SpecialType.System_Boolean, 481SpecialType.System_Char, 482SpecialType.System_SByte, 483SpecialType.System_Byte, 484SpecialType.System_Int16, 485SpecialType.System_UInt16, 486SpecialType.System_Int32, 487SpecialType.System_UInt32, 488SpecialType.System_Int64, 489SpecialType.System_UInt64, 490SpecialType.System_Decimal, 491SpecialType.System_Single, 492SpecialType.System_Double, 493SpecialType.System_IntPtr, 494SpecialType.System_UIntPtr, 495SpecialType.System_TypedReference, 496SpecialType.System_ArgIterator, 497SpecialType.System_RuntimeArgumentHandle 500Case SpecialType.System_Object, 501SpecialType.System_String
Lowering\AsyncRewriter\AsyncRewriter.vb (6)
53Me._resultType = Me.F.SpecialType(SpecialType.System_Void) 57Me._resultType = Me.F.SpecialType(SpecialType.System_Void) 136Me.StateField = Me.F.StateMachineField(Me.F.SpecialType(SpecialType.System_Int32), Me.Method, GeneratedNames.MakeStateMachineStateFieldName(), Accessibility.Public) 311EnsureSpecialType(SpecialType.System_Object, bag) 312EnsureSpecialType(SpecialType.System_Void, bag) 313EnsureSpecialType(SpecialType.System_ValueType, bag)
Lowering\AsyncRewriter\AsyncStateMachine.vb (2)
22asyncMethod.ContainingAssembly.GetSpecialType(If(typeKind = TypeKind.Struct, SpecialType.System_ValueType, SpecialType.System_Object)),
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter.vb (4)
81_int32Type = _factory.SpecialType(SpecialType.System_Int32) 90_objectType = _factory.SpecialType(SpecialType.System_Object) 692_factory.Convert(_factory.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(_expressionType), 717If resultType.SpecialType = SpecialType.System_Int64 Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_BinaryOperator.vb (18)
203Dim resultUnderlyingSpecialType As SpecialType = resultUnderlyingType.SpecialType 242Dim operandUnderlyingSpecialType As SpecialType = operandUnderlyingType.SpecialType 258Debug.Assert(operandUnderlyingSpecialType <> SpecialType.System_Object OrElse isIsIsNot) 261Debug.Assert(operandUnderlyingSpecialType <> SpecialType.System_String) 263If operandUnderlyingSpecialType = SpecialType.System_Decimal Then 265ElseIf operandUnderlyingSpecialType = SpecialType.System_DateTime Then 279If operandUnderlyingSpecialType = SpecialType.System_Boolean Then 337Dim resultUnderlyingSpecialType As SpecialType = resultUnderlyingType.SpecialType 352Dim systemBool As TypeSymbol = _factory.SpecialType(SpecialType.System_Boolean) 387Dim resultUnderlyingSpecialType As SpecialType = resultUnderlyingType.SpecialType 400If resultUnderlyingSpecialType = SpecialType.System_Object Then 405ElseIf resultUnderlyingSpecialType = SpecialType.System_Decimal Then 432Dim needToCastBackToByteOrSByte As Boolean = resultUnderlyingSpecialType = SpecialType.System_Byte OrElse 433resultUnderlyingSpecialType = SpecialType.System_SByte 458Debug.Assert(resultUnderlyingSpecialType = SpecialType.System_Byte OrElse resultUnderlyingSpecialType = SpecialType.System_SByte) 553Debug.Assert(conversion.Type.IsNullableType AndAlso conversion.Type.GetNullableUnderlyingType.SpecialType = SpecialType.System_Int32) 597Dim isInt32 As Boolean = shiftedType.GetNullableUnderlyingTypeOrSelf.SpecialType = SpecialType.System_Int32
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_Conversion.vb (122)
241Return CreateTypeAs(If(typeTo.SpecialType = SpecialType.System_Object, 247Return ConvertIfNeeded(objectConversion, _factory.SpecialType(SpecialType.System_Object), typeTo, False) 258argumentType = _factory.SpecialType(SpecialType.System_String) 261argumentType = _factory.SpecialType(SpecialType.System_Object) 273Dim typeBeforeNegationIsByte As Boolean = typeBeforeNegation.SpecialType = SpecialType.System_SByte 276typeBeforeNegation = _factory.SpecialType(SpecialType.System_Int32) 311Case SpecialType.System_Byte 312Return Me._factory.SpecialType(SpecialType.System_SByte) 313Case SpecialType.System_UInt16 314Return Me._factory.SpecialType(SpecialType.System_Int16) 315Case SpecialType.System_UInt32 316Return Me._factory.SpecialType(SpecialType.System_Int32) 317Case SpecialType.System_UInt64 318Return Me._factory.SpecialType(SpecialType.System_Int64) 448Private Function GetConversionHelperMethod(stFrom As SpecialType, stTo As SpecialType) As MethodSymbol 453Case SpecialType.System_Boolean 455Case SpecialType.System_SByte : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt32 456Case SpecialType.System_Byte : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt32 457Case SpecialType.System_Int16 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt32 458Case SpecialType.System_UInt16 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt32 459Case SpecialType.System_Int32 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt32 460Case SpecialType.System_UInt32 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanUInt32 461Case SpecialType.System_Int64 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanInt64 462Case SpecialType.System_UInt64 : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanUInt64 463Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanSingle 464Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanDouble 465Case SpecialType.System_Decimal : wellKnownHelper = WellKnownMember.System_Convert__ToBooleanDecimal 466Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToBooleanString 467Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToBooleanObject 470Case SpecialType.System_Byte 472Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToByteDouble 473Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToByteSingle 474Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToByte 475Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToByteString 476Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToByteObject 479Case SpecialType.System_SByte 481Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToSByteDouble 482Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToSByteSingle 483Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToSByte 484Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSByteString 485Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSByteObject 488Case SpecialType.System_Int16 490Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToInt16Double 491Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToInt16Single 492Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToInt16 493Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToShortString 494Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToShortObject 497Case SpecialType.System_UInt16 499Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToUInt16Double 500Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToUInt16Single 501Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToUInt16 502Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUShortString 503Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUShortObject 506Case SpecialType.System_Int32 508Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToInt32Double 509Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToInt32Single 510Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToInt32 511Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToIntegerString 512Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToIntegerObject 515Case SpecialType.System_UInt32 517Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToUInt32Double 518Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToUInt32Single 519Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToUInt32 520Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUIntegerString 521Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUIntegerObject 524Case SpecialType.System_Int64 526Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToInt64Double 527Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToInt64Single 528Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToInt64 529Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToLongString 530Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToLongObject 533Case SpecialType.System_UInt64 535Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.System_Convert__ToUInt64Double 536Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.System_Convert__ToUInt64Single 537Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToUInt64 538Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToULongString 539Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToULongObject 542Case SpecialType.System_Decimal 544Case SpecialType.System_SByte : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt32 545Case SpecialType.System_Byte : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt32 546Case SpecialType.System_Int16 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt32 547Case SpecialType.System_UInt16 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt32 548Case SpecialType.System_Int32 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt32 549Case SpecialType.System_UInt32 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromUInt32 550Case SpecialType.System_Int64 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromInt64 551Case SpecialType.System_UInt64 : specialHelper = SpecialMember.System_Decimal__op_Implicit_FromUInt64 552Case SpecialType.System_Single : specialHelper = SpecialMember.System_Decimal__op_Explicit_FromSingle 553Case SpecialType.System_Double : specialHelper = SpecialMember.System_Decimal__op_Explicit_FromDouble 554Case SpecialType.System_Boolean : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDecimalBoolean 555Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDecimalString 556Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDecimalObject 559Case SpecialType.System_Single 561Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToSingle 562Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSingleString 563Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSingleObject 566Case SpecialType.System_Double 568Case SpecialType.System_Decimal : specialHelper = SpecialMember.System_Decimal__op_Explicit_ToDouble 569Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDoubleString 570Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDoubleObject 573Case SpecialType.System_Char 575Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToCharString 576Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToCharObject 579Case SpecialType.System_String 581Case SpecialType.System_Boolean : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringBoolean 582Case SpecialType.System_SByte, 583SpecialType.System_Int16, 584SpecialType.System_Int32 : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringInt32 586Case SpecialType.System_Byte : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringByte 588Case SpecialType.System_UInt16, 589SpecialType.System_UInt32 : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringUInt32 591Case SpecialType.System_Int64 : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringInt64 592Case SpecialType.System_UInt64 : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringUInt64 593Case SpecialType.System_Single : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringSingle 594Case SpecialType.System_Double : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDouble 595Case SpecialType.System_Decimal : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDecimal 596Case SpecialType.System_DateTime : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDateTime 597Case SpecialType.System_Char : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringChar 598Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringObject 601Case SpecialType.System_DateTime 603Case SpecialType.System_String : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDateString 604Case SpecialType.System_Object : wellKnownHelper = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDateObject
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_UnaryOperator.vb (3)
26Dim origArgUnderlyingSpecialType As SpecialType = origArgUnderlyingType.SpecialType 86Dim needToCastBackToByteOrSByte As Boolean = origArgUnderlyingSpecialType = SpecialType.System_Byte OrElse 87origArgUnderlyingSpecialType = SpecialType.System_SByte
Lowering\Instrumentation\CodeCoverageInstrumenter.vb (3)
119Dim payloadElementType As TypeSymbol = methodBodyFactory.SpecialType(SpecialType.System_Boolean) 216methodBodyFactory.SpecialType(SpecialType.System_Int32), fileIndices.ToImmutable()) 285_methodBodyFactory.SpecialType(SpecialType.System_Boolean),
Lowering\IteratorRewriter\IteratorRewriter.vb (16)
37Me._elementType = method.ContainingAssembly.GetSpecialType(SpecialType.System_Object) 63Dim isEnumerable As Boolean = retSpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 64retSpecialType = SpecialType.System_Collections_IEnumerable 68elementType = method.ContainingAssembly.GetSpecialType(SpecialType.System_Object) 103EnsureSpecialType(SpecialType.System_Object, bag) 104EnsureSpecialType(SpecialType.System_Boolean, bag) 105EnsureSpecialType(SpecialType.System_Int32, bag) 106EnsureSpecialType(SpecialType.System_IDisposable, bag) 110EnsureSpecialType(SpecialType.System_Collections_IEnumerator, bag) 116EnsureSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T, bag) 120EnsureSpecialType(SpecialType.System_Collections_IEnumerable, bag) 122EnsureSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T, bag) 139Me.StateField = Me.F.StateMachineField(Me.F.SpecialType(SpecialType.System_Int32), Me.Method, GeneratedNames.MakeStateMachineStateFieldName(), Accessibility.Public) 146F.StateMachineField(F.SpecialType(SpecialType.System_Int32), Me.Method, GeneratedNames.MakeIteratorInitialThreadIdName(), Accessibility.Public), 181Dim getEnumeratorGeneric = Me.OpenMethodImplementation(F.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(_elementType), 275Me.OpenPropertyImplementation(F.SpecialType(SpecialType.System_Collections_Generic_IEnumerator_T).Construct(_elementType),
Lowering\IteratorRewriter\IteratorStateMachine.vb (7)
29iteratorMethod.ContainingAssembly.GetSpecialType(SpecialType.System_Object), 34Dim intType = DeclaringCompilation.GetSpecialType(SpecialType.System_Int32) 51interfaces.Add(containingAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T).Construct(elementType)) 52interfaces.Add(containingAssembly.GetSpecialType(SpecialType.System_Collections_IEnumerable)) 55interfaces.Add(containingAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T).Construct(elementType)) 56interfaces.Add(containingAssembly.GetSpecialType(SpecialType.System_IDisposable)) 57interfaces.Add(containingAssembly.GetSpecialType(SpecialType.System_Collections_IEnumerator))
Lowering\LambdaRewriter\LambdaFrame.vb (2)
185Dim type = ContainingAssembly.GetSpecialType(SpecialType.System_Object) 197Dim type = ContainingAssembly.GetSpecialType(SpecialType.System_Object)
Lowering\LambdaRewriter\LambdaRewriter.vb (2)
450Dim bool = frame.ContainingAssembly.GetSpecialType(SpecialType.System_Boolean) 454Dim obj = frame.ContainingAssembly.GetSpecialType(SpecialType.System_Object)
Lowering\LocalRewriter\LocalRewriter.vb (3)
559Private Function GetSpecialType(specialType As SpecialType) As NamedTypeSymbol 565Private Function GetSpecialTypeWithUseSiteDiagnostics(specialType As SpecialType, syntax As SyntaxNode) As NamedTypeSymbol 772If type.SpecialType = SpecialType.System_Void Then
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (4)
483Debug.Assert(memberSymbol.ReturnType.SpecialType = SpecialType.System_Int32) 522Debug.Assert(memberSymbol.ReturnType.SpecialType = SpecialType.System_Int32) 694Debug.Assert(memberSymbol.ReturnType.SpecialType = SpecialType.System_Int32) 760Debug.Assert(memberSymbol.Parameters(2).Type.GetEnumUnderlyingTypeOrSelf().SpecialType = SpecialType.System_Int32)
Lowering\LocalRewriter\LocalRewriter_Constant.vb (2)
47currentMethod.ContainingType.SpecialType <> SpecialType.System_Decimal Then 147currentMethod.ContainingType.SpecialType <> SpecialType.System_DateTime) Then
Lowering\LocalRewriter\LocalRewriter_Conversion.vb (70)
318node.Type.SpecialType <> SpecialType.System_MulticastDelegate) 777result = RewriteFromObjectConversion(rewrittenConversion, Compilation.GetSpecialType(SpecialType.System_Object), underlyingTypeTo) 839Case SpecialType.System_Boolean : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToBooleanObject 840Case SpecialType.System_SByte : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSByteObject 841Case SpecialType.System_Byte : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToByteObject 842Case SpecialType.System_Int16 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToShortObject 843Case SpecialType.System_UInt16 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUShortObject 844Case SpecialType.System_Int32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToIntegerObject 845Case SpecialType.System_UInt32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUIntegerObject 846Case SpecialType.System_Int64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToLongObject 847Case SpecialType.System_UInt64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToULongObject 848Case SpecialType.System_Single : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSingleObject 849Case SpecialType.System_Double : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDoubleObject 850Case SpecialType.System_Decimal : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDecimalObject 851Case SpecialType.System_DateTime : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDateObject 852Case SpecialType.System_Char : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToCharObject 853Case SpecialType.System_String : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringObject 929Case SpecialType.System_Boolean : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringBoolean 930Case SpecialType.System_SByte, 931SpecialType.System_Int16, 932SpecialType.System_Int32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringInt32 934Case SpecialType.System_Byte : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringByte 936Case SpecialType.System_UInt16, 937SpecialType.System_UInt32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringUInt32 939Case SpecialType.System_Int64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringInt64 940Case SpecialType.System_UInt64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringUInt64 941Case SpecialType.System_Single : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringSingle 942Case SpecialType.System_Double : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDouble 943Case SpecialType.System_Decimal : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDecimal 944Case SpecialType.System_DateTime : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringDateTime 945Case SpecialType.System_Char : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToStringChar 1004Case SpecialType.System_Boolean : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToBooleanString 1005Case SpecialType.System_SByte : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSByteString 1006Case SpecialType.System_Byte : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToByteString 1007Case SpecialType.System_Int16 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToShortString 1008Case SpecialType.System_UInt16 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUShortString 1009Case SpecialType.System_Int32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToIntegerString 1010Case SpecialType.System_UInt32 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToUIntegerString 1011Case SpecialType.System_Int64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToLongString 1012Case SpecialType.System_UInt64 : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToULongString 1013Case SpecialType.System_Single : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToSingleString 1014Case SpecialType.System_Double : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDoubleString 1015Case SpecialType.System_Decimal : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDecimalString 1016Case SpecialType.System_DateTime : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToDateString 1017Case SpecialType.System_Char : member = WellKnownMember.Microsoft_VisualBasic_CompilerServices_Conversions__ToCharString 1073Case SpecialType.System_SByte, 1074SpecialType.System_Byte, 1075SpecialType.System_Int16, 1076SpecialType.System_UInt16, 1077SpecialType.System_Int32 : member = SpecialMember.System_Decimal__CtorInt32 1078Case SpecialType.System_UInt32 : member = SpecialMember.System_Decimal__CtorUInt32 1079Case SpecialType.System_Int64 : member = SpecialMember.System_Decimal__CtorInt64 1080Case SpecialType.System_UInt64 : member = SpecialMember.System_Decimal__CtorUInt64 1081Case SpecialType.System_Single : member = SpecialMember.System_Decimal__CtorSingle 1082Case SpecialType.System_Double : member = SpecialMember.System_Decimal__CtorDouble 1144Case SpecialType.System_Boolean : member = WellKnownMember.System_Convert__ToBooleanDecimal 1145Case SpecialType.System_SByte : member = WellKnownMember.System_Convert__ToSByteDecimal 1146Case SpecialType.System_Byte : member = WellKnownMember.System_Convert__ToByteDecimal 1147Case SpecialType.System_Int16 : member = WellKnownMember.System_Convert__ToInt16Decimal 1148Case SpecialType.System_UInt16 : member = WellKnownMember.System_Convert__ToUInt16Decimal 1149Case SpecialType.System_Int32 : member = WellKnownMember.System_Convert__ToInt32Decimal 1150Case SpecialType.System_UInt32 : member = WellKnownMember.System_Convert__ToUInt32Decimal 1151Case SpecialType.System_Int64 : member = WellKnownMember.System_Convert__ToInt64Decimal 1152Case SpecialType.System_UInt64 : member = WellKnownMember.System_Convert__ToUInt64Decimal 1153Case SpecialType.System_Single : member = WellKnownMember.System_Convert__ToSingleDecimal 1154Case SpecialType.System_Double : member = WellKnownMember.System_Convert__ToDoubleDecimal 1249Case SpecialType.System_Single 1251Case SpecialType.System_Double 1268Case SpecialType.System_Single 1270Case SpecialType.System_Double
Lowering\LocalRewriter\LocalRewriter_ForEach.vb (9)
209Debug.Assert(collectionExpression.Type.SpecialType = SpecialType.System_String OrElse 242Dim integerType = GetSpecialTypeWithUseSiteDiagnostics(SpecialType.System_Int32, syntaxNode) 245ConstantValue.Default(SpecialType.System_Int32), 286elementType = GetSpecialType(SpecialType.System_Char) 366Debug.Assert(expressionType.SpecialType <> SpecialType.System_Object) 397Debug.Assert(expressionType.SpecialType <> SpecialType.System_Object) 465Dim booleanType = GetSpecialTypeWithUseSiteDiagnostics(SpecialType.System_Boolean, statementSyntax) 592Debug.Assert(enumeratorInfo.MoveNext.Type.SpecialType = SpecialType.System_Boolean) 724Dim voidType = GetSpecialTypeWithUseSiteDiagnostics(SpecialType.System_Void, syntaxNode)
Lowering\LocalRewriter\LocalRewriter_ForTo.vb (7)
141type:=GetSpecialType(SpecialType.System_Boolean))) 416Debug.Assert(Compilation.GetSpecialType(SpecialType.System_Object) Is rewrittenControlVariable.Type) 445Compilation.GetSpecialType(SpecialType.System_Boolean), 449arguments, Compilation.GetSpecialType(SpecialType.System_Boolean), hasErrors:=True) 500Compilation.GetSpecialType(SpecialType.System_Boolean), 504arguments, Compilation.GetSpecialType(SpecialType.System_Boolean), hasErrors:=True) 679Dim booleanType = GetSpecialType(SpecialType.System_Boolean)
Lowering\LocalRewriter\LocalRewriter_InterpolatedString.vb (1)
19Debug.Assert(node.Type.SpecialType = SpecialType.System_String)
Lowering\LocalRewriter\LocalRewriter_LateBindingHelpers.vb (13)
70Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 110Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 199Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 266Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 324Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 341Dim intType = Me.GetSpecialType(SpecialType.System_Int32) 398Me.GetSpecialType(SpecialType.System_Void)) 457Me.GetSpecialType(SpecialType.System_Void)) 531Return New BoundSequence(syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(memberAccess), Nothing, Me.GetSpecialType(SpecialType.System_Void)) 536Return New BoundSequence(syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(memberAccess), Nothing, Me.GetSpecialType(SpecialType.System_Void)) 610Return New BoundSequence(syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(invocation), Nothing, Me.GetSpecialType(SpecialType.System_Void)) 615Return New BoundSequence(syntax, ImmutableArray(Of LocalSymbol).Empty, ImmutableArray.Create(Of BoundExpression)(invocation), Nothing, Me.GetSpecialType(SpecialType.System_Void)) 948Dim intType = Me.GetSpecialType(SpecialType.System_Int32)
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.vb (2)
172Dim objectType = GetSpecialTypeWithUseSiteDiagnostics(SpecialType.System_Object, syntax) 173Dim booleanType = GetSpecialTypeWithUseSiteDiagnostics(SpecialType.System_Boolean, syntax)
Lowering\LocalRewriter\LocalRewriter_NullableHelpers.vb (2)
63hasValueExpr = New BoundLiteral(operand.Syntax, ConstantValue.True, Me.GetSpecialType(SpecialType.System_Boolean)) 284Me.Compilation.GetSpecialType(SpecialType.System_Boolean), hasErrors:=True)
Lowering\LocalRewriter\LocalRewriter_ObjectCreation.vb (1)
333sequenceType = GetSpecialType(SpecialType.System_Void)
Lowering\LocalRewriter\LocalRewriter_RaiseEvent.vb (2)
80Me.Compilation.GetSpecialType(SpecialType.System_Object)), 82Me.Compilation.GetSpecialType(SpecialType.System_Boolean)).MakeCompilerGenerated
Lowering\LocalRewriter\LocalRewriter_RedimClause.vb (1)
95Compilation.GetSpecialType(SpecialType.System_Void)))
Lowering\LocalRewriter\LocalRewriter_SelectCase.vb (3)
171Me.ReportBadType(selectCaseExpr, Compilation.GetSpecialType(SpecialType.System_Int32)) 172Me.ReportBadType(selectCaseExpr, Compilation.GetSpecialType(SpecialType.System_UInt32)) 173Me.ReportBadType(selectCaseExpr, Compilation.GetSpecialType(SpecialType.System_String))
Lowering\LocalRewriter\LocalRewriter_StringConcat.vb (1)
121If method.IsShared AndAlso method.ContainingType.SpecialType = SpecialType.System_String Then
Lowering\LocalRewriter\LocalRewriter_SyncLock.vb (1)
24Dim objectType = GetSpecialType(SpecialType.System_Object)
Lowering\LocalRewriter\LocalRewriter_Throw.vb (1)
22If expressionOpt.Type.SpecialType = SpecialType.System_Int32 Then
Lowering\LocalRewriter\LocalRewriter_UnstructuredExceptionHandling.vb (4)
42Dim int32 = nodeFactory.SpecialType(SpecialType.System_Int32) 144Dim int32 = nodeFactory.SpecialType(SpecialType.System_Int32) 145Dim bool = nodeFactory.SpecialType(SpecialType.System_Boolean) 408nodeFactory.SpecialType(SpecialType.System_Boolean),
Lowering\LocalRewriter\LocalRewriter_XmlLiterals.vb (3)
261Me.GetSpecialType(SpecialType.System_Int32))), 326Return New BoundLiteral(syntax, ConstantValue.Create(str), GetSpecialType(SpecialType.System_String)).MakeCompilerGenerated() 350Dim size = (New BoundLiteral(syntax, ConstantValue.Create(items.Length), GetSpecialType(SpecialType.System_Int32))).MakeCompilerGenerated()
Lowering\MethodToClassRewriter\MethodToClassRewriter.vb (1)
484Debug.Assert(node.ValueOpt IsNot Nothing OrElse node.HasErrors OrElse node.Type.SpecialType = SpecialType.System_Void)
Lowering\StateMachineRewriter\StateMachineRewriter.StateMachineMethodToClassRewriter.vb (1)
96CachedState = F.SynthesizedLocal(F.SpecialType(SpecialType.System_Int32), SynthesizedLocalKind.StateMachineCachedState, F.Syntax)
Lowering\StateMachineRewriter\StateMachineRewriter.vb (1)
380Friend Function EnsureSpecialType(type As SpecialType, bag As BindingDiagnosticBag) As Symbol
Lowering\SyntheticBoundNodeFactory.vb (1)
226Public Function SpecialType(st As SpecialType) As NamedTypeSymbol
Operations\VisualBasicOperationFactory.vb (1)
1417DirectCast(_semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean), TypeSymbol),
Operations\VisualBasicOperationFactory_Methods.vb (2)
666Return If(leftOpt?.Type?.SpecialType = SpecialType.System_Object, BinaryOperatorKind.ObjectValueEquals, BinaryOperatorKind.Equals) 668Return If(leftOpt?.Type?.SpecialType = SpecialType.System_Object, BinaryOperatorKind.ObjectValueNotEquals, BinaryOperatorKind.NotEquals)
Preprocessor\CConst.vb (39)
24Public MustOverride ReadOnly Property SpecialType As SpecialType 41Case SpecialType.System_Boolean 43Case SpecialType.System_Byte 45Case SpecialType.System_Char 47Case SpecialType.System_DateTime 49Case SpecialType.System_Decimal 51Case SpecialType.System_Double 53Case SpecialType.System_Int16 55Case SpecialType.System_Int32 57Case SpecialType.System_Int64 59Case SpecialType.System_SByte 61Case SpecialType.System_Single 63Case SpecialType.System_String 65Case SpecialType.System_UInt16 67Case SpecialType.System_UInt32 69Case SpecialType.System_UInt64 77Return New CConst(Of Object)(Nothing, SpecialType.System_Object) 81Return New CConst(Of Boolean)(value, SpecialType.System_Boolean) 85Return New CConst(Of Byte)(value, SpecialType.System_Byte) 89Return New CConst(Of SByte)(value, SpecialType.System_SByte) 93Return New CConst(Of Char)(value, SpecialType.System_Char) 97Return New CConst(Of Short)(value, SpecialType.System_Int16) 101Return New CConst(Of UShort)(value, SpecialType.System_UInt16) 105Return New CConst(Of Integer)(value, SpecialType.System_Int32) 109Return New CConst(Of UInteger)(value, SpecialType.System_UInt32) 113Return New CConst(Of Long)(value, SpecialType.System_Int64) 117Return New CConst(Of ULong)(value, SpecialType.System_UInt64) 121Return New CConst(Of Decimal)(value, SpecialType.System_Decimal) 125Return New CConst(Of String)(value, SpecialType.System_String) 129Return New CConst(Of Single)(value, SpecialType.System_Single) 133Return New CConst(Of Double)(value, SpecialType.System_Double) 137Return New CConst(Of Date)(value, SpecialType.System_DateTime) 142Return SpecialType = SpecialType.None 180Private ReadOnly _specialType As SpecialType 183Friend Sub New(value As T, specialType As SpecialType) 188Private Sub New(value As T, specialType As SpecialType, id As ERRID) 195Public Overrides ReadOnly Property SpecialType As SpecialType 229Public Overrides ReadOnly Property SpecialType As SpecialType 231Return SpecialType.None
Preprocessor\ExpressionEvaluator.vb (190)
25Const _____Byte = CType(SpecialType.System_Byte, Byte) 26Const ____SByte = CType(SpecialType.System_SByte, Byte) 27Const ____Int16 = CType(SpecialType.System_Int16, Byte) 28Const ___UInt16 = CType(SpecialType.System_UInt16, Byte) 29Const ____Int32 = CType(SpecialType.System_Int32, Byte) 30Const ___UInt32 = CType(SpecialType.System_UInt32, Byte) 31Const ____Int64 = CType(SpecialType.System_Int64, Byte) 32Const ___UInt64 = CType(SpecialType.System_UInt64, Byte) 33Const ___Single = CType(SpecialType.System_Single, Byte) 34Const ___Double = CType(SpecialType.System_Double, Byte) 35Const __Decimal = CType(SpecialType.System_Decimal, Byte) 36Const _DateTime = CType(SpecialType.System_DateTime, Byte) 37Const _____Char = CType(SpecialType.System_Char, Byte) 38Const __Boolean = CType(SpecialType.System_Boolean, Byte) 39Const ___String = CType(SpecialType.System_String, Byte) 40Const ___Object = CType(SpecialType.System_Object, Byte) 73Private Shared Function TypeCodeToDominantTypeIndex(specialType As SpecialType) As Integer 75Case SpecialType.System_Byte 77Case SpecialType.System_SByte 79Case SpecialType.System_Int16 81Case SpecialType.System_UInt16 83Case SpecialType.System_Int32 85Case SpecialType.System_UInt32 87Case SpecialType.System_Int64 89Case SpecialType.System_UInt64 91Case SpecialType.System_Single 93Case SpecialType.System_Double 95Case SpecialType.System_Decimal 97Case SpecialType.System_DateTime 99Case SpecialType.System_Char 101Case SpecialType.System_Boolean 103Case SpecialType.System_String 105Case SpecialType.System_Object 325Private Shared Function AsTypeCharacter(specialType As SpecialType) As TypeCharacter 327Case SpecialType.System_Int32 330Case SpecialType.System_Int64 333Case SpecialType.System_Decimal 336Case SpecialType.System_Single 339Case SpecialType.System_Double 342Case SpecialType.System_String 350Private Shared Function GetSpecialType(predefinedType As PredefinedTypeSyntax) As SpecialType 354Return SpecialType.System_Int16 357Return SpecialType.System_UInt16 360Return SpecialType.System_Int32 363Return SpecialType.System_UInt32 366Return SpecialType.System_Int64 369Return SpecialType.System_UInt64 372Return SpecialType.System_Decimal 375Return SpecialType.System_Single 378Return SpecialType.System_Double 381Return SpecialType.System_SByte 384Return SpecialType.System_Byte 387Return SpecialType.System_Boolean 390Return SpecialType.System_Char 393Return SpecialType.System_DateTime 396Return SpecialType.System_String 400Return SpecialType.System_Object 417If specialType <> SpecialType.System_Object AndAlso specialType <> SpecialType.System_String Then 421If value.SpecialType = SpecialType.System_Object OrElse 422value.SpecialType = SpecialType.System_String Then 428If specialType = SpecialType.System_Double OrElse specialType = SpecialType.System_Single Then 448If val.SpecialType = SpecialType.System_Object OrElse 449val.SpecialType = SpecialType.System_String Then 455If specialType = SpecialType.System_Double OrElse specialType = SpecialType.System_Single Then 483Dim specialType As SpecialType 487specialType = SpecialType.System_Boolean 490specialType = SpecialType.System_DateTime 493specialType = SpecialType.System_Double 496specialType = SpecialType.System_SByte 499specialType = SpecialType.System_Byte 502specialType = SpecialType.System_Char 505specialType = SpecialType.System_Int16 508specialType = SpecialType.System_UInt16 511specialType = SpecialType.System_Int32 514specialType = SpecialType.System_UInt32 517specialType = SpecialType.System_Int64 520specialType = SpecialType.System_UInt64 523specialType = SpecialType.System_Single 526specialType = SpecialType.System_String 529specialType = SpecialType.System_Decimal 573If Not IsNothing(whenFalse) AndAlso whenFalse.SpecialType <> SpecialType.System_Object Then 577If whenTrue.SpecialType <> SpecialType.System_Object Then 581Dim dominantType As SpecialType = CType(s_dominantType(TypeCodeToDominantTypeIndex(whenTrue.SpecialType), TypeCodeToDominantTypeIndex(whenFalse.SpecialType)), SpecialType) 611If specialType = SpecialType.System_Boolean Then 620Case SpecialType.System_Char 621Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, SpecialType.System_Char.GetDisplayName(), SpecialType.System_Boolean.GetDisplayName()) 622Case SpecialType.System_DateTime 623Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, SpecialType.System_DateTime.GetDisplayName(), SpecialType.System_Boolean.GetDisplayName()) 624Case SpecialType.System_Object 630Case SpecialType.System_String 631Return ReportSemanticError(ERRID.ERR_RequiredConstConversion2, expr, SpecialType.System_String.GetDisplayName(), SpecialType.System_Boolean.GetDisplayName()) 633Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, specialType, SpecialType.System_Boolean.GetDisplayName()) 637Private Shared Function ConvertToNumeric(value As CConst, toSpecialType As SpecialType, expr As ExpressionSyntax) As CConst 659Case SpecialType.System_Boolean 663numericVal = NarrowIntegralResult(numericVal, SpecialType.System_Int64, toSpecialType, False) 667Case SpecialType.System_Char 668Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, SpecialType.System_Char.GetDisplayName(), toSpecialType.GetDisplayName()) 670Case SpecialType.System_DateTime 671Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, SpecialType.System_DateTime.GetDisplayName(), toSpecialType.GetDisplayName()) 673Case SpecialType.System_Object 676Case SpecialType.System_String 677Return ReportSemanticError(ERRID.ERR_RequiredConstConversion2, expr, SpecialType.System_String.GetDisplayName(), toSpecialType.GetDisplayName()) 684Private Shared Function ConvertNumericToNumeric(value As CConst, toSpecialType As SpecialType, expr As ExpressionSyntax) As CConst 695Private Shared Function Convert(value As CConst, toSpecialType As SpecialType, expr As ExpressionSyntax) As CConst 710Case SpecialType.System_Boolean 712Case SpecialType.System_Char 714Case SpecialType.System_DateTime 716Case SpecialType.System_Object 718Case SpecialType.System_String 731If fromSpecialType = SpecialType.System_Char Then 740Case SpecialType.System_Boolean 741Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_Char.GetDisplayName()) 743Case SpecialType.System_DateTime 744Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_Char.GetDisplayName()) 746Case SpecialType.System_Object 753Case SpecialType.System_String 759Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_Char.GetDisplayName()) 769If fromSpecialType = SpecialType.System_DateTime Then 774Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_DateTime.GetDisplayName()) 778Case SpecialType.System_Boolean 779Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_DateTime.GetDisplayName()) 781Case SpecialType.System_Char 782Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_DateTime.GetDisplayName()) 784Case SpecialType.System_String 787Case SpecialType.System_Object 795Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, fromSpecialType, SpecialType.System_DateTime.GetDisplayName()) 805If specialType = SpecialType.System_String Then 814Case SpecialType.System_Boolean 817Case SpecialType.System_Char 821Case SpecialType.System_DateTime 824Case SpecialType.System_Object 832Return ReportSemanticError(ERRID.ERR_TypeMismatch2, expr, specialType, SpecialType.System_String.GetDisplayName()) 845Return ReportSemanticError(ERRID.ERR_RequiredConstConversion2, expr, value.SpecialType.GetDisplayName(), SpecialType.System_Object.GetDisplayName()) 852If specialType = SpecialType.None Then 856If specialType = SpecialType.System_String OrElse 857(specialType = SpecialType.System_Object AndAlso Not IsNothing(val)) OrElse 858specialType = SpecialType.System_Char OrElse specialType = SpecialType.System_DateTime Then 869Case SpecialType.System_Boolean 871Case SpecialType.System_Byte 873Case SpecialType.System_Decimal 875Case SpecialType.System_Double 877Case SpecialType.System_Int16 879Case SpecialType.System_Int32 881Case SpecialType.System_Int64 883Case SpecialType.System_SByte 885Case SpecialType.System_Single 887Case SpecialType.System_UInt16 889Case SpecialType.System_UInt32 891Case SpecialType.System_UInt64 898If specialType = SpecialType.System_Boolean Then 908Case SpecialType.System_Boolean 910Case SpecialType.System_Byte 912Case SpecialType.System_Decimal 914Case SpecialType.System_Double 916Case SpecialType.System_Int16 918Case SpecialType.System_Int32 920Case SpecialType.System_Int64 922Case SpecialType.System_SByte 924Case SpecialType.System_Single 926Case SpecialType.System_UInt16 928Case SpecialType.System_UInt32 930Case SpecialType.System_UInt64 944Return val.SpecialType = SpecialType.System_Object AndAlso val.ValueAsObject Is Nothing 956Dim OperandType As SpecialType = SpecialType.None 1000Right = ConvertToNumeric(Right, SpecialType.System_Int32, expr.Right) 1006Right = ConvertToNumeric(Right, SpecialType.System_Int32, expr.Right) 1023OperandType = SpecialType.System_String 1029OperandType = SpecialType.System_Int32 1045OperandType = SpecialType.System_String 1060If ResultType = SpecialType.None Then 1077If ResultType = SpecialType.System_String Then 1089ResultType = SpecialType.System_Boolean 1103resultType As SpecialType, 1112If left.SpecialType.IsIntegralType() OrElse left.SpecialType = SpecialType.System_Char OrElse left.SpecialType = SpecialType.System_DateTime Then 1116If resultType = SpecialType.System_Boolean Then 1282If resultType = SpecialType.System_Boolean Then 1407ElseIf left.SpecialType = SpecialType.System_Decimal Then 1411If resultType = SpecialType.System_Boolean Then 1491ElseIf left.SpecialType = SpecialType.System_String Then 1540ElseIf left.SpecialType = SpecialType.System_Boolean Then
Preprocessor\OperatorResolution.vb (39)
28Private Function TypeCodeToIndex(specialType As SpecialType) As Integer 30Case SpecialType.None 32Case SpecialType.System_Boolean 34Case SpecialType.System_SByte 36Case SpecialType.System_Byte 38Case SpecialType.System_Int16 40Case SpecialType.System_UInt16 42Case SpecialType.System_Int32 44Case SpecialType.System_UInt32 46Case SpecialType.System_Int64 48Case SpecialType.System_UInt64 50Case SpecialType.System_Decimal 52Case SpecialType.System_Single 54Case SpecialType.System_Double 56Case SpecialType.System_DateTime 58Case SpecialType.System_Char 60Case SpecialType.System_String 62Case SpecialType.System_Object 78Const t_r4 As Byte = CType(SpecialType.System_Single, Byte) 79Const t_r8 As Byte = CType(SpecialType.System_Double, Byte) 80Const t_dec As Byte = CType(SpecialType.System_Decimal, Byte) 81Const t_str As Byte = CType(SpecialType.System_String, Byte) 83Const t_bad As Byte = CType(SpecialType.None, Byte) 84Const t_i1 As Byte = CType(SpecialType.System_SByte, Byte) 85Const t_i2 As Byte = CType(SpecialType.System_Int16, Byte) 86Const t_i4 As Byte = CType(SpecialType.System_Int32, Byte) 87Const t_i8 As Byte = CType(SpecialType.System_Int64, Byte) 88Const t_ui1 As Byte = CType(SpecialType.System_Byte, Byte) 89Const t_ui2 As Byte = CType(SpecialType.System_UInt16, Byte) 90Const t_ui4 As Byte = CType(SpecialType.System_UInt32, Byte) 91Const t_ui8 As Byte = CType(SpecialType.System_UInt64, Byte) 93Const t_ref As Byte = CType(SpecialType.System_Object, Byte) 94Const t_bool As Byte = CType(SpecialType.System_Boolean, Byte) 95Const t_date As Byte = CType(SpecialType.System_DateTime, Byte) 96Const t_char As Byte = CType(SpecialType.System_Char, Byte) 298Friend Function LookupInOperatorTables(opcode As SyntaxKind, left As SpecialType, right As SpecialType) As SpecialType 349Return CType(s_table(whichTable, TypeCodeToIndex(left), TypeCodeToIndex(right)), SpecialType)
Preprocessor\TypeHelpers.vb (2)
29If specialType = SpecialType.System_Char Then 33If specialType = SpecialType.System_DateTime Then
Semantics\CompileTimeCalculations.vb (7)
259sourceType As SpecialType, 260resultType As SpecialType, 550resultType As SpecialType, 559Case SpecialType.System_Double 562Case SpecialType.System_Single 729sourceType As SpecialType, 730resultType As SpecialType,
Semantics\Conversions.vb (37)
1185(originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 1186originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IList_T OrElse 1187originalTargetType.SpecialType = SpecialType.System_Collections_Generic_ICollection_T OrElse 1188originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyList_T OrElse 1189originalTargetType.SpecialType = SpecialType.System_Collections_Generic_IReadOnlyCollection_T) Then 1481Dim nullableOfT As NamedTypeSymbol = booleanType.ContainingAssembly.GetSpecialType(SpecialType.System_Nullable_T) 2067Dim valueType = typeParameter.ContainingAssembly.GetSpecialType(SpecialType.System_ValueType) 2330If source.SpecialType = SpecialType.System_Void OrElse destination.SpecialType = SpecialType.System_Void Then 2349If destination.SpecialType = SpecialType.System_Object Then 2476If dstUnderlyingSpecial <> SpecialType.System_Collections_Generic_IList_T AndAlso 2477dstUnderlyingSpecial <> SpecialType.System_Collections_Generic_ICollection_T AndAlso 2478dstUnderlyingSpecial <> SpecialType.System_Collections_Generic_IEnumerable_T AndAlso 2479dstUnderlyingSpecial <> SpecialType.System_Collections_Generic_IReadOnlyList_T AndAlso 2480dstUnderlyingSpecial <> SpecialType.System_Collections_Generic_IReadOnlyCollection_T Then 3340Case SpecialType.System_Byte, SpecialType.System_SByte, SpecialType.System_Boolean 3342Case SpecialType.System_Int16, SpecialType.System_UInt16 3344Case SpecialType.System_Int32, SpecialType.System_UInt32 3346Case SpecialType.System_Int64, SpecialType.System_UInt64 3385If source.SpecialType = SpecialType.System_Void OrElse destination.SpecialType = SpecialType.System_Void Then 3395If destination.SpecialType = SpecialType.System_Object Then 3428If source.SpecialType = SpecialType.System_Object Then 3624If source.SpecialType = SpecialType.System_String Then 3626ElseIf destination.SpecialType = SpecialType.System_String Then 3635If array.IsSZArray AndAlso array.ElementType.SpecialType = SpecialType.System_Char Then 3709If destination.SpecialType = SpecialType.System_Object Then 3751If destination.SpecialType = SpecialType.System_ValueType Then 3757Dim valueType = typeParameter.ContainingAssembly.GetSpecialType(SpecialType.System_ValueType) 3905If source.SpecialType = SpecialType.System_Object Then 3911If source.SpecialType = SpecialType.System_ValueType Then 3917Dim valueType = typeParameter.ContainingAssembly.GetSpecialType(SpecialType.System_ValueType)
Semantics\Operators.vb (99)
429ElseIf If(containingType.SpecialType = SpecialType.System_Nullable_T, 470If containingType.SpecialType = SpecialType.System_Nullable_T Then 501<Out()> ByRef intrinsicOperatorType As SpecialType, 508intrinsicOperatorType = SpecialType.None 529If sourceType.SpecialType <> SpecialType.System_Object AndAlso 559If intrinsicOperatorType <> SpecialType.None Then 576operandSpecialType As SpecialType 577) As SpecialType 579Dim intrinsicOperatorType As SpecialType 589Case SpecialType.System_Boolean, 590SpecialType.System_SByte, 591SpecialType.System_Byte, 592SpecialType.System_Int16, 593SpecialType.System_UInt16, 594SpecialType.System_Int32, 595SpecialType.System_UInt32, 596SpecialType.System_Int64, 597SpecialType.System_UInt64, 598SpecialType.System_Object 602Case SpecialType.System_Decimal, 603SpecialType.System_Single, 604SpecialType.System_Double, 605SpecialType.System_String 607intrinsicOperatorType = SpecialType.System_Int64 610intrinsicOperatorType = SpecialType.None 620Case SpecialType.System_Boolean 621intrinsicOperatorType = SpecialType.System_Int16 623Case SpecialType.System_SByte, 624SpecialType.System_Byte, 625SpecialType.System_Int16, 626SpecialType.System_UInt16, 627SpecialType.System_Int32, 628SpecialType.System_UInt32, 629SpecialType.System_Int64, 630SpecialType.System_UInt64, 631SpecialType.System_Decimal, 632SpecialType.System_Single, 633SpecialType.System_Double, 634SpecialType.System_Object 638Case SpecialType.System_String 639intrinsicOperatorType = SpecialType.System_Double 642intrinsicOperatorType = SpecialType.None 652Case SpecialType.System_Boolean, 653SpecialType.System_Byte 655intrinsicOperatorType = SpecialType.System_Int16 657Case SpecialType.System_SByte, 658SpecialType.System_Int16, 659SpecialType.System_Int32, 660SpecialType.System_Int64, 661SpecialType.System_Decimal, 662SpecialType.System_Single, 663SpecialType.System_Double, 664SpecialType.System_Object 668Case SpecialType.System_UInt16 669intrinsicOperatorType = SpecialType.System_Int32 671Case SpecialType.System_UInt32 672intrinsicOperatorType = SpecialType.System_Int64 674Case SpecialType.System_UInt64 675intrinsicOperatorType = SpecialType.System_Decimal 677Case SpecialType.System_String 678intrinsicOperatorType = SpecialType.System_Double 681intrinsicOperatorType = SpecialType.None 858<Out()> ByRef intrinsicOperatorType As SpecialType, 866intrinsicOperatorType = SpecialType.None 903intrinsicOperatorType = SpecialType.System_Object 929intrinsicOperatorType = SpecialType.System_Object 957If leftSpecialType = SpecialType.None AndAlso leftEnumUnderlying.IsCharSZArray() Then 958leftSpecialType = SpecialType.System_String 961If rightSpecialType = SpecialType.None AndAlso rightEnumUnderlying.IsCharSZArray() Then 962rightSpecialType = SpecialType.System_String 967If intrinsicOperatorType <> SpecialType.None Then 975intrinsicOperatorType <> SpecialType.None AndAlso 976intrinsicOperatorType <> SpecialType.System_String AndAlso 977intrinsicOperatorType <> SpecialType.System_Object AndAlso 992If (leftEnumUnderlying.SpecialType <> SpecialType.System_Object AndAlso 995(rightEnumUnderlying.SpecialType <> SpecialType.System_Object AndAlso 1637left As SpecialType, 1638right As SpecialType 1639) As SpecialType 1645Return SpecialType.None 1697Return CType(BinaryOperatorTables.Table(tableKind, leftIndex.Value, rightIndex.Value), SpecialType) 1721Const tErr As SByte = SpecialType.None 1722Const tObj As SByte = SpecialType.System_Object 1723Const tStr As SByte = SpecialType.System_String 1724Const tDbl As SByte = SpecialType.System_Double 1725Const tSBy As SByte = SpecialType.System_SByte 1726Const tShr As SByte = SpecialType.System_Int16 1727Const tInt As SByte = SpecialType.System_Int32 1728Const tLng As SByte = SpecialType.System_Int64 1729Const tDec As SByte = SpecialType.System_Decimal 1730Const tSng As SByte = SpecialType.System_Single 1731Const tByt As SByte = SpecialType.System_Byte 1732Const tUSh As SByte = SpecialType.System_UInt16 1733Const tUIn As SByte = SpecialType.System_UInt32 1734Const tULn As SByte = SpecialType.System_UInt64 1735Const tBoo As SByte = SpecialType.System_Boolean 1736Const tChr As SByte = SpecialType.System_Char 1737Const tDat As SByte = SpecialType.System_DateTime 3163Dim nullableOfT As NamedTypeSymbol = opSet(0).ContainingAssembly.GetSpecialType(SpecialType.System_Nullable_T)
Semantics\OverloadResolution.vb (6)
2458If leftSpecialType = SpecialType.System_Byte AndAlso rightSpecialType = SpecialType.System_SByte Then 2462If leftSpecialType = SpecialType.System_SByte AndAlso rightSpecialType = SpecialType.System_Byte Then 3607If targetType.SpecialType <> SpecialType.System_Object Then 3730argumentType.SpecialType <> SpecialType.System_Object Then
Semantics\TypeInference\TypeArgumentInference.vb (6)
185arrayType.ElementType.SpecialType = SpecialType.System_Object Then 462Graph.ObjectType = unboundLambda.Binder.GetSpecialType(SpecialType.System_Object, lambdaParameter.IdentifierSyntax, Graph.Diagnostic) 2133Dim inferenceSignature As New UnboundLambda.TargetSignature(delegateParams, unboundLambda.Binder.Compilation.GetSpecialType(SpecialType.System_Void), returnsByRef:=False) 2189TypeSymbol.Equals(lambdaReturnNamedType.OriginalDefinition, argument.GetBinderFromLambda().Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T), TypeCompareKind.ConsiderEverything) OrElse 2190TypeSymbol.Equals(lambdaReturnNamedType.OriginalDefinition, argument.GetBinderFromLambda().Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerator_T), TypeCompareKind.ConsiderEverything)) 2203unboundLambda.Binder.Compilation.GetSpecialType(SpecialType.System_Void),
SymbolDisplay\SymbolDisplayVisitor_Constants.vb (4)
14Protected Overrides Sub AddExplicitlyCastedLiteralValue(namedType As INamedTypeSymbol, type As SpecialType, value As Object) 20Protected Overrides Sub AddLiteralValue(type As SpecialType, value As Object) 24Case SpecialType.System_String 27Case SpecialType.System_Char
Symbols\AnonymousTypes\AnonymousType_SymbolCollection.vb (9)
120Return Compilation.GetSpecialType(SpecialType.System_Boolean) 126Return Compilation.GetSpecialType(SpecialType.System_Int32) 132Return Compilation.GetSpecialType(SpecialType.System_Object) 138Return Compilation.GetSpecialType(SpecialType.System_IntPtr) 144Return Compilation.GetSpecialType(SpecialType.System_IAsyncResult) 150Return Compilation.GetSpecialType(SpecialType.System_AsyncCallback) 156Return Compilation.GetSpecialType(SpecialType.System_MulticastDelegate) 162Return Compilation.GetSpecialType(SpecialType.System_String) 168Return Compilation.GetSpecialType(SpecialType.System_Void)
Symbols\ArrayTypeSymbol.vb (2)
81Dim iListOfT = declaringAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IList_T) 82Dim iReadOnlyListOfT = declaringAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IReadOnlyList_T)
Symbols\AssemblySymbol.vb (5)
370GetSpecialType(SpecialType.System_Runtime_CompilerServices_PreserveBaseOverridesAttribute).IsClassType() 445Debug.Assert(SpecialMembers.GetDescriptor(feature).DeclaringSpecialType = SpecialType.System_Runtime_CompilerServices_RuntimeFeature) 447Dim runtimeFeature = GetSpecialType(SpecialType.System_Runtime_CompilerServices_RuntimeFeature) 505If CInt(type) <= SpecialType.None OrElse CInt(type) >= InternalSpecialType.NextAvailable Then 518Return GetSpecialType(SpecialType.System_Object)
Symbols\Attributes\AttributeData.vb (10)
423If [property].Type IsNot Nothing AndAlso [property].Type.SpecialType = SpecialType.System_String AndAlso 441ctorArgument.DecodeValue(Of ClassInterfaceType)(SpecialType.System_Enum), 442CType(ctorArgument.DecodeValue(Of Short)(SpecialType.System_Int16), ClassInterfaceType)) 468ctorArgument.DecodeValue(Of ComInterfaceType)(SpecialType.System_Enum), 469CType(ctorArgument.DecodeValue(Of Short)(SpecialType.System_Int16), ComInterfaceType)) 486ctorArgument.DecodeValue(Of Cci.TypeLibTypeFlags)(SpecialType.System_Enum), 487CType(ctorArgument.DecodeValue(Of Short)(SpecialType.System_Int16), Cci.TypeLibTypeFlags)) 493Dim guidString As String = Me.GetConstructorArgument(Of String)(0, SpecialType.System_String) 509Return Me.GetConstructorArgument(Of String)(0, SpecialType.System_String) 516If prop?.Type.SpecialType = SpecialType.System_String Then
Symbols\Attributes\SourceAttributeData.vb (14)
197foundMatch = specType = SpecialType.System_Boolean 201foundMatch = specType = SpecialType.System_Char 205foundMatch = specType = SpecialType.System_SByte 209foundMatch = specType = SpecialType.System_Byte 213foundMatch = specType = SpecialType.System_Int16 217foundMatch = specType = SpecialType.System_UInt16 221foundMatch = specType = SpecialType.System_Int32 225foundMatch = specType = SpecialType.System_UInt32 229foundMatch = specType = SpecialType.System_Int64 233foundMatch = specType = SpecialType.System_UInt64 237foundMatch = specType = SpecialType.System_Single 241foundMatch = specType = SpecialType.System_Double 245foundMatch = specType = SpecialType.System_String 249foundMatch = specType = SpecialType.System_Object
Symbols\ConstantValueUtils.vb (1)
44boundValueType = binder.GetSpecialType(SpecialType.System_Object, initValueSyntax, diagnostics)
Symbols\ConstraintsHelper.vb (8)
175Case SpecialType.System_Object, 176SpecialType.System_ValueType, 177SpecialType.System_Enum, 178SpecialType.System_Delegate, 179SpecialType.System_MulticastDelegate, 180SpecialType.System_Array 1101Case SpecialType.System_Object, SpecialType.System_ValueType
Symbols\ErrorMethodSymbol.vb (1)
175Return _returnType.SpecialType = SpecialType.System_Void
Symbols\EventSymbol.vb (1)
161Return ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Symbols\Metadata\PE\MetadataDecoder.vb (5)
161Return New MissingMetadataTypeSymbol.TopLevel(New MissingModuleSymbolWithName(ModuleSymbol.ContainingAssembly, moduleName), emittedName, SpecialType.None) 369Dim baseSpecialType As SpecialType = If(candidate.BaseTypeNoUseSiteDiagnostics?.SpecialType, SpecialType.None) 370If baseSpecialType = SpecialType.None OrElse baseSpecialType <> If(baseType?.SpecialType, SpecialType.None) Then
Symbols\Metadata\PE\PEFieldSymbol.vb (7)
165If Me.Type.SpecialType = SpecialType.System_DateTime Then 170ElseIf Me.Type.SpecialType = SpecialType.System_Decimal Then 243ElseIf selfOrUnderlyingSpecialType = SpecialType.System_DateTime Then 246ElseIf selfOrUnderlyingSpecialType = SpecialType.System_Boolean Then 249ElseIf selfOrUnderlyingSpecialType = SpecialType.System_Char Then 277If Me.Type.SpecialType = SpecialType.System_DateTime Then 281ElseIf Me.Type.SpecialType = SpecialType.System_Decimal Then
Symbols\Metadata\PE\PEMethodSymbol.vb (1)
922Return Me.ReturnType.SpecialType = SpecialType.System_Void
Symbols\Metadata\PE\PEModuleSymbol.vb (1)
284If (keepLookingForDeclaredCorTypes AndAlso t.SpecialType <> SpecialType.None) Then
Symbols\Metadata\PE\PENamedTypeSymbol.vb (37)
1026Dim baseCorTypeId As SpecialType = base.SpecialType 1028If baseCorTypeId = SpecialType.System_Enum Then 1031ElseIf baseCorTypeId = SpecialType.System_MulticastDelegate OrElse 1032(baseCorTypeId = SpecialType.System_Delegate AndAlso Me.SpecialType <> SpecialType.System_MulticastDelegate) Then 1035ElseIf (baseCorTypeId = SpecialType.System_ValueType AndAlso 1036Me.SpecialType <> SpecialType.System_Enum) Then 1156Case SpecialType.System_Void, 1157SpecialType.System_Boolean, 1158SpecialType.System_Char, 1159SpecialType.System_Byte, 1160SpecialType.System_SByte, 1161SpecialType.System_Int16, 1162SpecialType.System_UInt16, 1163SpecialType.System_Int32, 1164SpecialType.System_UInt32, 1165SpecialType.System_Int64, 1166SpecialType.System_UInt64, 1167SpecialType.System_Single, 1168SpecialType.System_Double, 1169SpecialType.System_Decimal, 1170SpecialType.System_IntPtr, 1171SpecialType.System_UIntPtr, 1172SpecialType.System_DateTime, 1173SpecialType.System_TypedReference, 1174SpecialType.System_ArgIterator, 1175SpecialType.System_RuntimeArgumentHandle, 1176SpecialType.System_RuntimeFieldHandle, 1177SpecialType.System_RuntimeMethodHandle, 1178SpecialType.System_RuntimeTypeHandle 1331specialtype <> SpecialType.System_Enum AndAlso specialtype <> SpecialType.System_MulticastDelegate Then 1334If base IsNot Nothing AndAlso base.SpecialType = SpecialType.None AndAlso base.ContainingAssembly?.IsMissing Then 1341Case SpecialType.System_Enum, 1342SpecialType.System_Delegate, 1343SpecialType.System_MulticastDelegate, 1344SpecialType.System_ValueType
Symbols\Metadata\PE\PETypeParameterSymbol.vb (1)
254ElseIf typeSymbol.SpecialType = SpecialType.System_ValueType Then
Symbols\Metadata\PE\SymbolFactory.vb (1)
33Friend Overrides Function GetSpecialType(moduleSymbol As PEModuleSymbol, specialType As SpecialType) As TypeSymbol
Symbols\MetadataOrSourceAssemblySymbol.vb (1)
71Debug.Assert(typeId <> SpecialType.None)
Symbols\MethodSymbol.vb (3)
570If returnType.SpecialType <> SpecialType.System_Int32 AndAlso returnType.SpecialType <> SpecialType.System_Void Then 592Return array.IsSZArray AndAlso array.ElementType.SpecialType = SpecialType.System_String
Symbols\MissingMetadataTypeSymbol.vb (4)
55Dim arg = If(Me.SpecialType <> SpecialType.None, DirectCast(CustomSymbolDisplayFormatter.DefaultErrorFormat(Me), Object), Me) 197Return CType(_lazyTypeId, SpecialType) 237Public Sub New(moduleSymbol As ModuleSymbol, ByRef emittedName As MetadataTypeName, errorInfo As DiagnosticInfo, Optional typeId As SpecialType = CType(-1, SpecialType))
Symbols\SignatureOnlyMethodSymbol.vb (1)
144Return ReturnType.SpecialType = SpecialType.System_Void
Symbols\Source\ImplicitNamedTypeSymbol.vb (1)
52Dim baseType = DeclaringCompilation.GetSpecialType(SpecialType.System_Object)
Symbols\Source\SourceAssemblySymbol.vb (7)
932Dim obj = GetSpecialType(SpecialType.System_Object) 1169Dim arg As Integer = attrData.GetConstructorArgument(Of Integer)(i, SpecialType.System_Int32) 1541Dim int32Type = Me.DeclaringCompilation.GetSpecialType(SpecialType.System_Int32) 1559Dim boolType = Me.DeclaringCompilation.GetSpecialType(SpecialType.System_Boolean) 1580Dim int32Type = Me.DeclaringCompilation.GetSpecialType(SpecialType.System_Int32) 1613Dim stringType = _compilation.GetSpecialType(SpecialType.System_String) 1622Dim stringType = _compilation.GetSpecialType(SpecialType.System_String)
Symbols\Source\SourceComplexParameterSymbol.vb (2)
379Case SpecialType.System_DateTime 384Case SpecialType.System_Decimal
Symbols\Source\SourceDelegateMethodSymbol.vb (8)
82Dim voidType = binder.GetSpecialType(SpecialType.System_Void, syntax, diagnostics) 83Dim iAsyncResultType = binder.GetSpecialType(SpecialType.System_IAsyncResult, syntax, diagnostics) 84Dim objectType = binder.GetSpecialType(SpecialType.System_Object, syntax, diagnostics) 85Dim intPtrType = binder.GetSpecialType(SpecialType.System_IntPtr, syntax, diagnostics) 86Dim asyncCallbackType = binder.GetSpecialType(SpecialType.System_AsyncCallback, syntax, diagnostics) 124Return binder.GetSpecialType(SpecialType.System_Void, syntax, diagnostics) 259If(returnType.SpecialType = SpecialType.System_Void, SourceMemberFlags.MethodIsSub, Nothing), 332If(invoke.ReturnType.SpecialType = SpecialType.System_Void, SourceMemberFlags.MethodIsSub, Nothing),
Symbols\Source\SourceFieldSymbol.vb (4)
683If Me.Type.SpecialType = SpecialType.System_DateTime Then 686Dim specialTypeInt64 = Me.ContainingAssembly.GetSpecialType(SpecialType.System_Int64) 697ElseIf Me.Type.SpecialType = SpecialType.System_Decimal Then 752Dim offset = attrData.CommonConstructorArguments(0).DecodeValue(Of Integer)(SpecialType.System_Int32)
Symbols\Source\SourceMemberFieldSymbol.vb (2)
268constantType = ContainingAssembly.GetSpecialType(SpecialType.System_Object) 273constantType = ContainingAssembly.GetSpecialType(SpecialType.System_Object)
Symbols\Source\SourceMethodSymbol.vb (16)
1527Dim conditionalSymbol As String = attrdata.GetConstructorArgument(Of String)(0, SpecialType.System_String) 1542Dim priority As Integer = attrdata.GetConstructorArgument(Of Integer)(0, SpecialType.System_Int32) 1699charSet = namedArg.Value.DecodeValue(Of CharSet)(SpecialType.System_Enum) 1702setLastError = namedArg.Value.DecodeValue(Of Boolean)(SpecialType.System_Boolean) 1705exactSpelling = namedArg.Value.DecodeValue(Of Boolean)(SpecialType.System_Boolean) 1708preserveSig = namedArg.Value.DecodeValue(Of Boolean)(SpecialType.System_Boolean) 1711callingConvention = namedArg.Value.DecodeValue(Of System.Runtime.InteropServices.CallingConvention)(SpecialType.System_Enum) 1714bestFitMapping = namedArg.Value.DecodeValue(Of Boolean)(SpecialType.System_Boolean) 1717throwOnUnmappable = namedArg.Value.DecodeValue(Of Boolean)(SpecialType.System_Boolean) 2293Return binder.GetSpecialType(SpecialType.System_Void, Syntax, diagBag) 2299binder.GetSpecialType(SpecialType.System_Void, Syntax, diagBag)) 2314retType = binder.GetSpecialType(SpecialType.System_Void, Syntax, diagBag) 2369If originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerable_T AndAlso 2370originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerator_T AndAlso 2371retType.SpecialType <> SpecialType.System_Collections_IEnumerable AndAlso 2372retType.SpecialType <> SpecialType.System_Collections_IEnumerator Then
Symbols\Source\SourceModuleSymbol.vb (1)
1084Dim charSet As CharSet = attrData.GetConstructorArgument(Of CharSet)(0, SpecialType.System_Enum)
Symbols\Source\SourceNamedTypeSymbol.vb (20)
1259Private Function IsRestrictedBaseClass(type As SpecialType) As Boolean 1261Case SpecialType.System_Array, 1262SpecialType.System_Delegate, 1263SpecialType.System_MulticastDelegate, 1264SpecialType.System_Enum, 1265SpecialType.System_ValueType 1385ReportUseSiteInfoForBaseType(Me.DeclaringCompilation.GetSpecialType(SpecialType.System_Object), declaredBase, diagnostics) 1389declaredOrDefaultBase = GetSpecialType(SpecialType.System_Object) 1395declaredOrDefaultBase = GetSpecialType(SpecialType.System_Enum) 1398declaredOrDefaultBase = GetSpecialType(SpecialType.System_ValueType) 1401declaredOrDefaultBase = GetSpecialType(SpecialType.System_MulticastDelegate) 1404declaredOrDefaultBase = GetSpecialType(SpecialType.System_Object) 1424Private Function GetSpecialType(type As SpecialType) As NamedTypeSymbol 1514Return GetSpecialType(SpecialType.System_Enum) 1517Return GetSpecialType(SpecialType.System_MulticastDelegate) 2124Dim conditionalSymbol As String = attrdata.GetConstructorArgument(Of String)(0, SpecialType.System_String) 2579Dim stringType = GetSpecialType(SpecialType.System_String) 2601New TypedConstant(GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, _comClassData.ClassId)))) 2607New TypedConstant(GetSpecialType(SpecialType.System_Int32), TypedConstantKind.Enum, CInt(ClassInterfaceType.None))))) 2628New TypedConstant(GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, eventInterfaceName))))
Symbols\Source\SourceNamedTypeSymbol_ComClass.vb (6)
558method.ReturnType.SpecialType = SpecialType.System_Collections_IEnumerator Then 592prop.Type.SpecialType = SpecialType.System_Collections_IEnumerator Then 1002New TypedConstant(_comClass.GetSpecialType(SpecialType.System_String), TypedConstantKind.Primitive, id)))) 1009New TypedConstant(_comClass.GetSpecialType(SpecialType.System_Int16), 1016ImmutableArray.Create(New TypedConstant(_comClass.GetSpecialType(SpecialType.System_Boolean), 1023ImmutableArray.Create(New TypedConstant(_comClass.GetSpecialType(SpecialType.System_String),
Symbols\Source\SourceNamedTypeSymbol_GroupClass.vb (3)
29Dim baseTypeNames() As String = If(attributeData.GetConstructorArgument(Of String)(0, SpecialType.System_String), "").Split(separatorComma, StringSplitOptions.None) 30Dim createMethods() As String = If(attributeData.GetConstructorArgument(Of String)(1, SpecialType.System_String), "").Split(separatorComma, StringSplitOptions.None) 31Dim disposeMethods() As String = If(attributeData.GetConstructorArgument(Of String)(2, SpecialType.System_String), "").Split(separatorComma, StringSplitOptions.None)
Symbols\Source\SourceNamespaceSymbol.vb (1)
63If type IsNot Nothing AndAlso type.SpecialType <> SpecialType.None Then
Symbols\Source\SourceParameterSymbol.vb (1)
250If attribute.ConstructorArguments.Single().TryDecodeValue(SpecialType.System_String, parameterName) Then
Symbols\Source\SourceParameterSymbolBase.vb (3)
60Case SpecialType.System_DateTime 63ImmutableArray.Create(New TypedConstant(compilation.GetSpecialType(SpecialType.System_Int64), 67Case SpecialType.System_Decimal
Symbols\Source\SourcePropertyAccessorSymbol.vb (1)
243Return binder.GetSpecialType(SpecialType.System_Void, Me.DeclarationSyntax, diagBag)
Symbols\Source\SourcePropertySymbol.vb (6)
282bodyBinder.GetSpecialType(SpecialType.System_Void, identifier, diagnostics), 391If originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerable_T AndAlso 392originalRetTypeDef.SpecialType <> SpecialType.System_Collections_Generic_IEnumerator_T AndAlso 393type.SpecialType <> SpecialType.System_Collections_IEnumerable AndAlso 394type.SpecialType <> SpecialType.System_Collections_IEnumerator Then 562Dim priority As Integer = attrdata.GetConstructorArgument(Of Integer)(0, SpecialType.System_Int32)
Symbols\Source\SourceWithEventsBackingFieldSymbol.vb (1)
75ImmutableArray.Create(New TypedConstant(compilation.GetSpecialType(SpecialType.System_String),
Symbols\Source\SynthesizedEntryPointSymbol.vb (4)
25Dim submissionArrayType = compilation.CreateArrayTypeSymbol(compilation.GetSpecialType(SpecialType.System_Object)) 42compilation.GetSpecialType(SpecialType.System_Void), 70Return _returnType.SpecialType = SpecialType.System_Void 229Debug.Assert(returnType.SpecialType = SpecialType.System_Void)
Symbols\Source\SynthesizedEventAccessorSymbol.vb (2)
82type = compilation.GetSpecialType(SpecialType.System_Void) 281Dim boolType As TypeSymbol = compilation.GetSpecialType(SpecialType.System_Boolean)
Symbols\Source\SynthesizedInteractiveInitializerMethod.vb (2)
95Return _returnType.SpecialType = SpecialType.System_Void 167resultType = compilation.GetSpecialType(SpecialType.System_Object)
Symbols\Source\SynthesizedMainTypeEntryPoint.vb (1)
44Return ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Symbols\Source\SynthesizedMyGroupCollectionPropertyAccessorSymbol.vb (1)
213Return ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Symbols\Source\SynthesizedSubmissionConstructorSymbol.vb (4)
33Dim submissionArrayType = compilation.CreateArrayTypeSymbol(compilation.GetSpecialType(SpecialType.System_Object)) 65Dim submissionArrayType = compilation.CreateArrayTypeSymbol(compilation.GetSpecialType(SpecialType.System_Object)) 68Dim intType = compilation.GetSpecialType(SpecialType.System_Int32) 69Dim objectType = compilation.GetSpecialType(SpecialType.System_Object)
Symbols\SpecialTypeExtensions.vb (169)
10Public Function IsFloatingType(this As SpecialType) As Boolean 12Case SpecialType.System_Single, 13SpecialType.System_Double 21Public Function IsIntrinsicType(this As SpecialType) As Boolean 22Return this = SpecialType.System_String OrElse this.IsIntrinsicValueType() 26Public Function IsIntrinsicValueType(this As SpecialType) As Boolean 28Case SpecialType.System_Boolean, 29SpecialType.System_Byte, 30SpecialType.System_SByte, 31SpecialType.System_Int16, 32SpecialType.System_UInt16, 33SpecialType.System_Int32, 34SpecialType.System_UInt32, 35SpecialType.System_Int64, 36SpecialType.System_UInt64, 37SpecialType.System_Single, 38SpecialType.System_Double, 39SpecialType.System_Decimal, 40SpecialType.System_DateTime, 41SpecialType.System_Char 49Public Function IsPrimitiveType(this As SpecialType) As Boolean 51Case SpecialType.System_Boolean, 52SpecialType.System_Byte, 53SpecialType.System_Char, 54SpecialType.System_Double, 55SpecialType.System_Int16, 56SpecialType.System_Int32, 57SpecialType.System_Int64, 58SpecialType.System_UInt16, 59SpecialType.System_UInt32, 60SpecialType.System_UInt64, 61SpecialType.System_IntPtr, 62SpecialType.System_UIntPtr, 63SpecialType.System_SByte, 64SpecialType.System_Single 72Public Function IsStrictSupertypeOfConcreteDelegate(this As SpecialType) As Boolean 74Case SpecialType.System_Object, 75SpecialType.System_Delegate, 76SpecialType.System_MulticastDelegate 84Public Function IsRestrictedType(this As SpecialType) As Boolean 86Case SpecialType.System_TypedReference, 87SpecialType.System_ArgIterator, 88SpecialType.System_RuntimeArgumentHandle 96Public Function IsValidTypeForAttributeArgument(this As SpecialType) As Boolean 98Case SpecialType.System_Boolean, 99SpecialType.System_Byte, 100SpecialType.System_SByte, 101SpecialType.System_Int16, 102SpecialType.System_UInt16, 103SpecialType.System_Int32, 104SpecialType.System_UInt32, 105SpecialType.System_Int64, 106SpecialType.System_UInt64, 107SpecialType.System_Single, 108SpecialType.System_Double, 109SpecialType.System_Char, 110SpecialType.System_Object, 111SpecialType.System_String 119Public Function IsValidTypeForSwitchTable(this As SpecialType) As Boolean 121Case SpecialType.System_Byte, 122SpecialType.System_SByte, 123SpecialType.System_Int16, 124SpecialType.System_UInt16, 125SpecialType.System_Int32, 126SpecialType.System_UInt32, 127SpecialType.System_Int64, 128SpecialType.System_UInt64, 129SpecialType.System_Char, 130SpecialType.System_Boolean, 131SpecialType.System_String 139Public Function TypeToIndex(type As SpecialType) As Integer? 143Case SpecialType.System_Object 145Case SpecialType.System_String 147Case SpecialType.System_Boolean 149Case SpecialType.System_Char 151Case SpecialType.System_SByte 153Case SpecialType.System_Int16 155Case SpecialType.System_Int32 157Case SpecialType.System_Int64 159Case SpecialType.System_Byte 161Case SpecialType.System_UInt16 163Case SpecialType.System_UInt32 165Case SpecialType.System_UInt64 167Case SpecialType.System_Single 169Case SpecialType.System_Double 171Case SpecialType.System_Decimal 173Case SpecialType.System_DateTime 184Public Function GetNativeCompilerVType(this As SpecialType) As String 186Case SpecialType.System_Void 188Case SpecialType.System_Boolean 190Case SpecialType.System_Char 192Case SpecialType.System_SByte 194Case SpecialType.System_Byte 196Case SpecialType.System_Int16 198Case SpecialType.System_UInt16 200Case SpecialType.System_Int32 202Case SpecialType.System_UInt32 204Case SpecialType.System_Int64 206Case SpecialType.System_UInt64 208Case SpecialType.System_Decimal 210Case SpecialType.System_Single 212Case SpecialType.System_Double 214Case SpecialType.System_String 216Case SpecialType.System_IntPtr, SpecialType.System_UIntPtr 218Case SpecialType.System_Array 220Case SpecialType.System_DateTime 228Public Function GetDisplayName(this As SpecialType) As String 235Public Function TryGetKeywordText(this As SpecialType) As String 237Case SpecialType.System_SByte 239Case SpecialType.System_Int16 241Case SpecialType.System_Int32 243Case SpecialType.System_Int64 245Case SpecialType.System_Byte 247Case SpecialType.System_UInt16 249Case SpecialType.System_UInt32 251Case SpecialType.System_UInt64 253Case SpecialType.System_Single 255Case SpecialType.System_Double 257Case SpecialType.System_Decimal 259Case SpecialType.System_Char 261Case SpecialType.System_Boolean 263Case SpecialType.System_String 265Case SpecialType.System_Object 267Case SpecialType.System_DateTime 269Case SpecialType.System_Void 277Friend Function ToConstantValueDiscriminator(this As SpecialType) As ConstantValueTypeDiscriminator 279Case SpecialType.System_SByte 281Case SpecialType.System_Byte 283Case SpecialType.System_Int16 285Case SpecialType.System_UInt16 287Case SpecialType.System_Int32 289Case SpecialType.System_UInt32 291Case SpecialType.System_Int64 293Case SpecialType.System_UInt64 295Case SpecialType.System_Char 297Case SpecialType.System_Boolean 299Case SpecialType.System_Single 301Case SpecialType.System_Double 303Case SpecialType.System_Decimal 305Case SpecialType.System_DateTime 307Case SpecialType.System_String 315Friend Function GetShiftSizeMask(this As SpecialType) As Integer 317Case SpecialType.System_SByte, SpecialType.System_Byte 320Case SpecialType.System_Int16, SpecialType.System_UInt16 323Case SpecialType.System_Int32, SpecialType.System_UInt32 326Case SpecialType.System_Int64, SpecialType.System_UInt64 335Public Function ToRuntimeType(this As SpecialType) As Type 337Case SpecialType.System_SByte 339Case SpecialType.System_Int16 341Case SpecialType.System_Int32 343Case SpecialType.System_Int64 345Case SpecialType.System_Byte 347Case SpecialType.System_UInt16 349Case SpecialType.System_UInt32 351Case SpecialType.System_UInt64 353Case SpecialType.System_Single 355Case SpecialType.System_Double 357Case SpecialType.System_Decimal 359Case SpecialType.System_Char 361Case SpecialType.System_Boolean 363Case SpecialType.System_String 365Case SpecialType.System_Object 367Case SpecialType.System_DateTime 369Case SpecialType.System_Void
Symbols\SynthesizedSymbols\SynthesizedConstructorBase.vb (2)
47m_voidType = binder.GetSpecialType(SpecialType.System_Void, syntaxReference.GetSyntax(), diagnostics) 52m_voidType = ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Symbols\SynthesizedSymbols\SynthesizedDelegateMethodSymbol.vb (1)
257Return _returnType.SpecialType = SpecialType.System_Void
Symbols\SynthesizedSymbols\SynthesizedGlobal_StringSwitchHashMethodSymbol.vb (2)
34_parameters = ImmutableArray.Create(Of ParameterSymbol)(New SynthesizedParameterSimpleSymbol(Me, compilation.GetSpecialType(SpecialType.System_String), 0, "s")) 35_returnType = compilation.GetSpecialType(SpecialType.System_UInt32)
Symbols\SynthesizedSymbols\SynthesizedMethod.vb (1)
96Dim type = ContainingAssembly.GetSpecialType(SpecialType.System_Void)
Symbols\TypedConstant.vb (4)
37If constant.Kind = TypedConstantKind.Type OrElse constant.TypeInternal.SpecialType = SpecialType.System_Object Then 54Dim splType As SpecialType = DirectCast(constant.TypeInternal, NamedTypeSymbol).EnumUnderlyingType.SpecialType 66Private Function DisplayUnsignedEnumConstant(constant As TypedConstant, splType As SpecialType, ByVal constantToDecode As ULong, ByVal typeName As String) As String 130Private Function DisplaySignedEnumConstant(constant As TypedConstant, ByVal splType As SpecialType, ByVal constantToDecode As Long, ByVal typeName As String) As String
Symbols\TypeParameterSymbol.vb (3)
255Case SpecialType.System_Object, 256SpecialType.System_ValueType, 257SpecialType.System_Enum
Symbols\TypeSymbol.vb (2)
287Public ReadOnly Property SpecialType As SpecialType Implements ITypeSymbol.SpecialType, ITypeSymbolInternal.SpecialType 289Return CType(ExtendedSpecialType, SpecialType)
Symbols\TypeSymbolExtensions.vb (32)
15Return this.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T 172If array.IsSZArray AndAlso array.ElementType.SpecialType = SpecialType.System_Char Then 190If type.SpecialType = SpecialType.None AndAlso 211If type.SpecialType = SpecialType.None AndAlso 285Public Function GetSpecialTypeSafe(this As TypeSymbol) As SpecialType 286Return If(this IsNot Nothing, this.SpecialType, SpecialType.None) 316Return this.SpecialType = SpecialType.System_Single 321Return this.SpecialType = SpecialType.System_Double 326Return this.SpecialType = SpecialType.System_Boolean 331Return this.SpecialType = SpecialType.System_Char 336Return this.SpecialType = SpecialType.System_String 341Return this.SpecialType = SpecialType.System_Object 351Return this.SpecialType = SpecialType.System_Void 356Return this.SpecialType = SpecialType.System_Decimal 361Return this.SpecialType = SpecialType.System_DateTime 430Case SpecialType.System_Boolean 432Case SpecialType.System_Byte 434Case SpecialType.System_SByte 436Case SpecialType.System_Int16 438Case SpecialType.System_UInt16 440Case SpecialType.System_Int32 442Case SpecialType.System_UInt32 444Case SpecialType.System_Int64 446Case SpecialType.System_UInt64 448Case SpecialType.System_Single 450Case SpecialType.System_Double 452Case SpecialType.System_Decimal 454Case SpecialType.System_DateTime 456Case SpecialType.System_Char 458Case SpecialType.System_String 682Dim genericIEnumerable = typeWithContainingAssembly.ContainingAssembly.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 734fieldType.SpecialType = SpecialType.System_Object OrElse
Symbols\WellKnownMembers.vb (3)
236Dim specialTypeByte = GetSpecialType(SpecialType.System_Byte) 239Dim specialTypeUInt32 = GetSpecialType(SpecialType.System_UInt32) 705Dim stringType = GetSpecialType(SpecialType.System_String)
Syntax\VisualBasicSyntaxTree.ConditionalSymbolsMap.vb (10)
179Case SpecialType.System_Boolean 182Case SpecialType.System_Byte 185Case SpecialType.System_Int16 188Case SpecialType.System_Int32 191Case SpecialType.System_Int64 194Case SpecialType.System_SByte 197Case SpecialType.System_UInt16 200Case SpecialType.System_UInt32 203Case SpecialType.System_UInt64 206Case SpecialType.System_String
Utilities\TypeUnification.vb (1)
151If t2.Type.SpecialType = SpecialType.System_Void Then
Utilities\VarianceAmbiguity.vb (2)
138If typeArgument1.SpecialType <> SpecialType.System_Object AndAlso 139typeArgument2.SpecialType <> SpecialType.System_Object AndAlso
VisualBasicExtensions.vb (1)
788Public Function GetSpecialType(compilation As Compilation, typeId As SpecialType) As INamedTypeSymbol
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (16)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Extensions\ExpressionSyntaxExtensions.vb (1)
111If typeInfo.Type IsNot Nothing AndAlso typeInfo.Type.SpecialType = SpecialType.System_Void Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (15)
225If If(castType?.SpecialType = SpecialType.System_Object, False) AndAlso 319DirectCast(castExpressionType.OriginalDefinition, ITypeSymbol).SpecialType = SpecialType.System_Nullable_T 381Case SpecialType.System_Single, SpecialType.System_Double 383Case SpecialType.System_UInt32, SpecialType.System_Int32, 384SpecialType.System_UInt64, SpecialType.System_Int64, 385SpecialType.System_Decimal 397ElseIf castType.SpecialType = SpecialType.System_DateTime Then 398Return Not outerType.SpecialType = SpecialType.System_DateTime 399ElseIf castType.SpecialType = SpecialType.System_Boolean Then 400Return Not (outerType.IsNumericType OrElse outerType.SpecialType = SpecialType.System_Boolean) 403If castType.OriginalDefinition?.SpecialType = SpecialType.System_Nullable_T Then 415If castType.Equals(outerType) OrElse outerType.SpecialType = SpecialType.System_Object Then
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (151)
src\roslyn\src\Analyzers\VisualBasic\CodeFixes\GenerateParameterizedMember\VisualBasicGenerateParameterizedMemberService.vb (6)
43Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int32) 45Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int64) 47Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Decimal) 49Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Single) 51Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Double) 53Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (28)
71Return GenerateIntegralLiteralExpression(type, SpecialType.System_SByte, DirectCast(value, SByte), canUseFieldReference, LiteralSpecialValues.SByteSpecialValues, Function(x) x < 0, Function(x) -x, "128") 73Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int16, DirectCast(value, Short), canUseFieldReference, LiteralSpecialValues.Int16SpecialValues, Function(x) x < 0, Function(x) -x, "32768") 75Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int32, DirectCast(value, Integer), canUseFieldReference, LiteralSpecialValues.Int32SpecialValues, Function(x) x < 0, Function(x) -x, "2147483648") 77Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int64, DirectCast(value, Long), canUseFieldReference, LiteralSpecialValues.Int64SpecialValues, Function(x) x < 0, Function(x) -x, "9223372036854775808") 79Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_Byte, DirectCast(value, Byte), canUseFieldReference, LiteralSpecialValues.ByteSpecialValues) 81Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt16, DirectCast(value, UShort), canUseFieldReference, LiteralSpecialValues.UInt16SpecialValues) 83Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt32, DirectCast(value, UInteger), canUseFieldReference, LiteralSpecialValues.UInt32SpecialValues) 85Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt64, DirectCast(value, ULong), canUseFieldReference, LiteralSpecialValues.UInt64SpecialValues) 116If Not IsSpecialType(type, SpecialType.System_String) Then 163specialType As SpecialType, 179specialType As SpecialType, 216If TypeOf value Is Byte AndAlso Not IsSpecialType(type, SpecialType.System_Byte) Then 218ElseIf TypeOf value Is SByte AndAlso Not IsSpecialType(type, SpecialType.System_SByte) Then 229If TypeOf value Is Short AndAlso Not IsSpecialType(type, SpecialType.System_Int16) Then 232ElseIf TypeOf value Is Long AndAlso Not IsSpecialType(type, SpecialType.System_Int64) Then 239Dim typeIsNotDecimal = Not IsSpecialType(type, SpecialType.System_Decimal) 249ElseIf TypeOf value Is UShort AndAlso Not IsSpecialType(type, SpecialType.System_UInt16) Then 252ElseIf TypeOf value Is UInteger AndAlso Not IsSpecialType(type, SpecialType.System_UInt32) Then 258Dim typeIsNotULong = Not IsSpecialType(type, SpecialType.System_UInt64) 266ElseIf TypeOf value Is Single AndAlso Not IsSpecialType(type, SpecialType.System_Single) Then 269ElseIf TypeOf value Is Double AndAlso Not IsSpecialType(type, SpecialType.System_Double) Then 295type, SpecialType.System_Double, value, canUseFieldReference, 320type, SpecialType.System_Single, value, canUseFieldReference, 326specialType As SpecialType, 375Dim field = GenerateFieldReference(SpecialType.System_Decimal, value, LiteralSpecialValues.DecimalSpecialValues) 389Private Function AddSpecialTypeAnnotation(type As SpecialType, expression As MemberAccessExpressionSyntax) As MemberAccessExpressionSyntax 390If SpecialType.None <> type Then 397Private Function GenerateFieldReference(Of TStructure)(type As SpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\MethodGenerator.vb (1)
70Dim isSub = method.ReturnType.SpecialType = SpecialType.System_Void
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\NamedTypeGenerator.vb (2)
149If(namedType.EnumUnderlyingType IsNot Nothing AndAlso namedType.EnumUnderlyingType.SpecialType <> SpecialType.System_Int32, 207namedType.BaseType.SpecialType = SpecialType.System_Object Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ParameterGenerator.vb (1)
47elementType.OriginalDefinition.SpecialType <> SpecialType.System_Nullable_T Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicFlagsEnumGenerator.vb (1)
25underlyingSpecialType As SpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ITypeSymbolExtensions.vb (49)
19Public Function GetPredefinedCastKeyword(specialType As SpecialType) As SyntaxKind 21Case specialType.System_Boolean 23Case specialType.System_Byte 25Case specialType.System_Char 27Case specialType.System_DateTime 29Case specialType.System_Decimal 31Case specialType.System_Double 33Case specialType.System_Int32 35Case specialType.System_Int64 37Case specialType.System_Object 39Case specialType.System_SByte 41Case specialType.System_Single 43Case specialType.System_Int16 45Case SpecialType.System_String 47Case specialType.System_UInt32 49Case specialType.System_UInt64 51Case specialType.System_UInt16 60Dim specialType As SpecialType 63specialType = specialType.System_Boolean 65specialType = specialType.System_Byte 67specialType = specialType.System_Char 69specialType = specialType.System_DateTime 71specialType = specialType.System_Decimal 73specialType = specialType.System_Double 75specialType = specialType.System_Int32 77specialType = specialType.System_Int64 79specialType = specialType.System_Object 81specialType = specialType.System_SByte 83specialType = specialType.System_Single 85specialType = specialType.System_String 87specialType = specialType.System_Int16 89specialType = specialType.System_UInt32 91specialType = specialType.System_UInt64 93specialType = specialType.System_UInt16 104Case SpecialType.System_Boolean, 105SpecialType.System_Byte, 106SpecialType.System_SByte, 107SpecialType.System_Int16, 108SpecialType.System_UInt16, 109SpecialType.System_Int32, 110SpecialType.System_UInt32, 111SpecialType.System_Int64, 112SpecialType.System_UInt64, 113SpecialType.System_Single, 114SpecialType.System_Double, 115SpecialType.System_Decimal, 116SpecialType.System_DateTime, 117SpecialType.System_Char, 118SpecialType.System_String
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\StringExtensions.vb (16)
97Case SpecialType.System_Boolean, 98SpecialType.System_Byte, 99SpecialType.System_SByte, 100SpecialType.System_Int16, 101SpecialType.System_UInt16, 102SpecialType.System_Int32, 103SpecialType.System_UInt32, 104SpecialType.System_Int64, 105SpecialType.System_UInt64, 106SpecialType.System_Single, 107SpecialType.System_Double, 108SpecialType.System_Decimal, 109SpecialType.System_DateTime, 110SpecialType.System_Char, 111SpecialType.System_String, 112SpecialType.System_Object
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (17)
81If symbol.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 96Case SpecialType.System_Object 98Case SpecialType.System_Boolean 100Case SpecialType.System_Char 102Case SpecialType.System_SByte 104Case SpecialType.System_Byte 106Case SpecialType.System_Int16 108Case SpecialType.System_UInt16 110Case SpecialType.System_Int32 112Case SpecialType.System_Int64 114Case SpecialType.System_UInt32 116Case SpecialType.System_UInt64 118Case SpecialType.System_Decimal 120Case SpecialType.System_Single 122Case SpecialType.System_Double 124Case SpecialType.System_String 126Case SpecialType.System_DateTime
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (30)
235Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 282Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 412Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 452Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 486Return types.Select(Function(t) New TypeInferenceInfo(If(t.InferredType.SpecialType = SpecialType.System_Void, task, taskOfT.Construct(t.InferredType)))) 505New TypeInferenceInfo(Me.Compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(t.InferredType)), 511If t.InferredType.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 534Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 544If otherSideTypes.Any(Function(t) t.InferredType.SpecialType <> SpecialType.System_Object AndAlso Not t.InferredType.IsErrorType()) Then 568Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 574Return CreateResult(SpecialType.System_Boolean) 594Return CreateResult(SpecialType.System_Boolean) 598Return CreateResult(SpecialType.System_Boolean) 605Return CreateResult(SpecialType.System_IDisposable) 648Return CreateResult(SpecialType.System_Void) 660Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 664Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 665Return CreateResult(type.Construct(Compilation.GetSpecialType(SpecialType.System_Object))) 694Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 698Return CreateResult(SpecialType.System_Boolean) 773If memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 774memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerator_T Then 806Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 815Return CreateResult(SpecialType.System_Boolean) 823Return CreateResult(SpecialType.System_Boolean) 841Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 848Return CreateResult(SpecialType.System_Boolean) 857Return CreateResult(SpecialType.System_IDisposable) 869Return CreateResult(SpecialType.System_Boolean) 873Return CreateResult(SpecialType.System_Boolean)
Microsoft.CodeAnalysis.VisualBasic.Features (46)
CodeFixes\GenerateEvent\GenerateEventCodeFixProvider.vb (3)
143returnType:=semanticModel.Compilation.GetSpecialType(SpecialType.System_Void), 285semanticModel.Compilation.GetSpecialType(SpecialType.System_Void)) 392returnType:=semanticModel.Compilation.GetSpecialType(SpecialType.System_Void),
Completion\CompletionProviders\OverrideCompletionProvider.vb (1)
192If overriddenMember.ContainingType.SpecialType = SpecialType.System_Object Then
Completion\KeywordRecommenders\Expressions\TrueFalseKeywordRecommender.vb (1)
37Return types.Any(Function(t) t.SpecialType = SpecialType.System_Boolean)
Completion\KeywordRecommenders\Types\BuiltInTypesKeywordRecommender.vb (19)
86SpecialType.System_Boolean, 87SpecialType.System_Byte, 88SpecialType.System_Char, 89SpecialType.System_DateTime, 90SpecialType.System_Decimal, 91SpecialType.System_Double, 92SpecialType.System_Int32, 93SpecialType.System_Int64, 94SpecialType.System_Object, 95SpecialType.System_SByte, 96SpecialType.System_Int16, 97SpecialType.System_Single, 98SpecialType.System_String, 99SpecialType.System_UInt32, 100SpecialType.System_UInt64, 101SpecialType.System_UInt16} 111Dim specialType As SpecialType = DirectCast(s_intrinsicSpecialTypes(i), SpecialType) 125Private Shared Function GetDocumentationCommentText(context As VisualBasicSyntaxContext, type As SpecialType, cancellationToken As CancellationToken) As String
Completion\Providers\DefaultArgumentProvider.vb (13)
26Case SpecialType.System_Boolean 28Case SpecialType.System_Char 30Case SpecialType.System_Byte 32Case SpecialType.System_SByte 34Case SpecialType.System_Int16 36Case SpecialType.System_UInt16 38Case SpecialType.System_Int32 40Case SpecialType.System_UInt32 42Case SpecialType.System_Int64 44Case SpecialType.System_UInt64 46Case SpecialType.System_Decimal 48Case SpecialType.System_Single 50Case SpecialType.System_Double
ExtractMethod\Extensions.vb (1)
474Return type Is Nothing OrElse type.SpecialType = SpecialType.System_Object
ExtractMethod\VisualBasicMethodExtractor.VisualBasicCodeGenerator.ExpressionCodeGenerator.vb (1)
73If Me.AnalyzerResult.CoreReturnType.SpecialType <> SpecialType.System_Void Then
ExtractMethod\VisualBasicSelectionResult.vb (1)
179If If(info.Type?.SpecialType = SpecialType.System_String, False) AndAlso
src\roslyn\src\Analyzers\VisualBasic\CodeFixes\GenerateParameterizedMember\VisualBasicGenerateParameterizedMemberService.vb (6)
43Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int32) 45Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int64) 47Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Decimal) 49Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Single) 51Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Double) 53Return Me.Document.SemanticModel.Compilation.GetSpecialType(SpecialType.System_String)
Microsoft.CodeAnalysis.VisualBasic.NetAnalyzers (36)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\BasicOverrideEqualsOnOverloadingOperatorEquals.vb (1)
43If type.TypeKind = TypeKind.Interface OrElse type.IsImplicitClass OrElse type.SpecialType = SpecialType.System_Object Then
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\BasicOverrideGetHashCodeOnOverridingEquals.vb (1)
44If type.TypeKind = TypeKind.Interface OrElse type.IsImplicitClass OrElse type.SpecialType = SpecialType.System_Object Then
Microsoft.NetCore.Analyzers\Runtime\BasicForwardCancellationTokenToInvocationsFixer.TypeNameVisitor.vb (33)
117If symbol.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 132Case SpecialType.System_Object 134Case SpecialType.System_Boolean 136Case SpecialType.System_Char 138Case SpecialType.System_SByte 140Case SpecialType.System_Byte 142Case SpecialType.System_Int16 144Case SpecialType.System_UInt16 146Case SpecialType.System_Int32 148Case SpecialType.System_Int64 150Case SpecialType.System_UInt32 152Case SpecialType.System_UInt64 154Case SpecialType.System_Decimal 156Case SpecialType.System_Single 158Case SpecialType.System_Double 160Case SpecialType.System_String 162Case SpecialType.System_DateTime 242Case SpecialType.System_Boolean, 243SpecialType.System_Byte, 244SpecialType.System_SByte, 245SpecialType.System_Int16, 246SpecialType.System_UInt16, 247SpecialType.System_Int32, 248SpecialType.System_UInt32, 249SpecialType.System_Int64, 250SpecialType.System_UInt64, 251SpecialType.System_Single, 252SpecialType.System_Double, 253SpecialType.System_Decimal, 254SpecialType.System_DateTime, 255SpecialType.System_Char, 256SpecialType.System_String, 257SpecialType.System_Object
Microsoft.NetCore.Analyzers\Runtime\BasicUseSpanBasedStringConcat.vb (1)
36If conversion IsNot Nothing AndAlso conversion.Type.SpecialType = SpecialType.System_Object AndAlso
Microsoft.CodeAnalysis.VisualBasic.Scripting (17)
Hosting\ObjectFormatter\VisualBasicTypeNameFormatter.vb (17)
18Protected Overrides Function GetPrimitiveTypeName(type As SpecialType) As String 20Case SpecialType.System_Boolean 22Case SpecialType.System_Byte 24Case SpecialType.System_Char 26Case SpecialType.System_Decimal 28Case SpecialType.System_Double 30Case SpecialType.System_Int16 32Case SpecialType.System_Int32 34Case SpecialType.System_Int64 36Case SpecialType.System_SByte 38Case SpecialType.System_Single 40Case SpecialType.System_String 42Case SpecialType.System_UInt16 44Case SpecialType.System_UInt32 46Case SpecialType.System_UInt64 48Case SpecialType.System_DateTime 50Case SpecialType.System_Object
Microsoft.CodeAnalysis.VisualBasic.Workspaces (203)
CodeCleanup\AsyncOrIteratorFunctionReturnTypeFixer.vb (5)
133Case SpecialType.System_Collections_IEnumerable, SpecialType.System_Collections_IEnumerator, 134SpecialType.System_Collections_Generic_IEnumerable_T, SpecialType.System_Collections_Generic_IEnumerator_T 137Dim iEnumerableOfT = semanticModel.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T)
CodeGeneration\VisualBasicSyntaxGenerator.vb (17)
346Public Overrides Function TypeExpression(specialType As SpecialType) As SyntaxNode 348Case SpecialType.System_Boolean 350Case SpecialType.System_Byte 352Case SpecialType.System_Char 354Case SpecialType.System_Decimal 356Case SpecialType.System_Double 358Case SpecialType.System_Int16 360Case SpecialType.System_Int32 362Case SpecialType.System_Int64 364Case SpecialType.System_Object 366Case SpecialType.System_SByte 368Case SpecialType.System_Single 370Case SpecialType.System_String 372Case SpecialType.System_UInt16 374Case SpecialType.System_UInt32 376Case SpecialType.System_UInt64 378Case SpecialType.System_DateTime
Recommendations\VisualBasicRecommendationServiceRunner.vb (1)
158Return typeSymbol.SpecialType <> SpecialType.System_Delegate
Rename\VisualBasicRenameRewriterLanguageService.vb (1)
954If Not method.ReturnsVoid AndAlso Not method.Parameters.Any() AndAlso method.ReturnType.SpecialType = SpecialType.System_Boolean Then
Simplification\Simplifiers\AbstractVisualBasicSimplifier.vb (17)
20Protected Shared Function GetPredefinedKeywordKind(type As SpecialType) As SyntaxKind 22Case SpecialType.System_Boolean 24Case SpecialType.System_Byte 26Case SpecialType.System_SByte 28Case SpecialType.System_Int32 30Case SpecialType.System_UInt32 32Case SpecialType.System_Int16 34Case SpecialType.System_UInt16 36Case SpecialType.System_Int64 38Case SpecialType.System_UInt64 40Case SpecialType.System_Single 42Case SpecialType.System_Double 44Case SpecialType.System_Decimal 46Case SpecialType.System_String 48Case SpecialType.System_Char 50Case SpecialType.System_Object 52Case SpecialType.System_DateTime
Simplification\Simplifiers\ExpressionSimplifier.vb (1)
246If isInCref AndAlso TypeOf rightSymbol Is IMethodSymbol AndAlso Not containingType.SpecialType = SpecialType.None Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Extensions\ExpressionSyntaxExtensions.vb (1)
111If typeInfo.Type IsNot Nothing AndAlso typeInfo.Type.SpecialType = SpecialType.System_Void Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (15)
225If If(castType?.SpecialType = SpecialType.System_Object, False) AndAlso 319DirectCast(castExpressionType.OriginalDefinition, ITypeSymbol).SpecialType = SpecialType.System_Nullable_T 381Case SpecialType.System_Single, SpecialType.System_Double 383Case SpecialType.System_UInt32, SpecialType.System_Int32, 384SpecialType.System_UInt64, SpecialType.System_Int64, 385SpecialType.System_Decimal 397ElseIf castType.SpecialType = SpecialType.System_DateTime Then 398Return Not outerType.SpecialType = SpecialType.System_DateTime 399ElseIf castType.SpecialType = SpecialType.System_Boolean Then 400Return Not (outerType.IsNumericType OrElse outerType.SpecialType = SpecialType.System_Boolean) 403If castType.OriginalDefinition?.SpecialType = SpecialType.System_Nullable_T Then 415If castType.Equals(outerType) OrElse outerType.SpecialType = SpecialType.System_Object Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (28)
71Return GenerateIntegralLiteralExpression(type, SpecialType.System_SByte, DirectCast(value, SByte), canUseFieldReference, LiteralSpecialValues.SByteSpecialValues, Function(x) x < 0, Function(x) -x, "128") 73Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int16, DirectCast(value, Short), canUseFieldReference, LiteralSpecialValues.Int16SpecialValues, Function(x) x < 0, Function(x) -x, "32768") 75Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int32, DirectCast(value, Integer), canUseFieldReference, LiteralSpecialValues.Int32SpecialValues, Function(x) x < 0, Function(x) -x, "2147483648") 77Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int64, DirectCast(value, Long), canUseFieldReference, LiteralSpecialValues.Int64SpecialValues, Function(x) x < 0, Function(x) -x, "9223372036854775808") 79Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_Byte, DirectCast(value, Byte), canUseFieldReference, LiteralSpecialValues.ByteSpecialValues) 81Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt16, DirectCast(value, UShort), canUseFieldReference, LiteralSpecialValues.UInt16SpecialValues) 83Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt32, DirectCast(value, UInteger), canUseFieldReference, LiteralSpecialValues.UInt32SpecialValues) 85Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt64, DirectCast(value, ULong), canUseFieldReference, LiteralSpecialValues.UInt64SpecialValues) 116If Not IsSpecialType(type, SpecialType.System_String) Then 163specialType As SpecialType, 179specialType As SpecialType, 216If TypeOf value Is Byte AndAlso Not IsSpecialType(type, SpecialType.System_Byte) Then 218ElseIf TypeOf value Is SByte AndAlso Not IsSpecialType(type, SpecialType.System_SByte) Then 229If TypeOf value Is Short AndAlso Not IsSpecialType(type, SpecialType.System_Int16) Then 232ElseIf TypeOf value Is Long AndAlso Not IsSpecialType(type, SpecialType.System_Int64) Then 239Dim typeIsNotDecimal = Not IsSpecialType(type, SpecialType.System_Decimal) 249ElseIf TypeOf value Is UShort AndAlso Not IsSpecialType(type, SpecialType.System_UInt16) Then 252ElseIf TypeOf value Is UInteger AndAlso Not IsSpecialType(type, SpecialType.System_UInt32) Then 258Dim typeIsNotULong = Not IsSpecialType(type, SpecialType.System_UInt64) 266ElseIf TypeOf value Is Single AndAlso Not IsSpecialType(type, SpecialType.System_Single) Then 269ElseIf TypeOf value Is Double AndAlso Not IsSpecialType(type, SpecialType.System_Double) Then 295type, SpecialType.System_Double, value, canUseFieldReference, 320type, SpecialType.System_Single, value, canUseFieldReference, 326specialType As SpecialType, 375Dim field = GenerateFieldReference(SpecialType.System_Decimal, value, LiteralSpecialValues.DecimalSpecialValues) 389Private Function AddSpecialTypeAnnotation(type As SpecialType, expression As MemberAccessExpressionSyntax) As MemberAccessExpressionSyntax 390If SpecialType.None <> type Then 397Private Function GenerateFieldReference(Of TStructure)(type As SpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\MethodGenerator.vb (1)
70Dim isSub = method.ReturnType.SpecialType = SpecialType.System_Void
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\NamedTypeGenerator.vb (2)
149If(namedType.EnumUnderlyingType IsNot Nothing AndAlso namedType.EnumUnderlyingType.SpecialType <> SpecialType.System_Int32, 207namedType.BaseType.SpecialType = SpecialType.System_Object Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ParameterGenerator.vb (1)
47elementType.OriginalDefinition.SpecialType <> SpecialType.System_Nullable_T Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicFlagsEnumGenerator.vb (1)
25underlyingSpecialType As SpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ITypeSymbolExtensions.vb (49)
19Public Function GetPredefinedCastKeyword(specialType As SpecialType) As SyntaxKind 21Case specialType.System_Boolean 23Case specialType.System_Byte 25Case specialType.System_Char 27Case specialType.System_DateTime 29Case specialType.System_Decimal 31Case specialType.System_Double 33Case specialType.System_Int32 35Case specialType.System_Int64 37Case specialType.System_Object 39Case specialType.System_SByte 41Case specialType.System_Single 43Case specialType.System_Int16 45Case SpecialType.System_String 47Case specialType.System_UInt32 49Case specialType.System_UInt64 51Case specialType.System_UInt16 60Dim specialType As SpecialType 63specialType = specialType.System_Boolean 65specialType = specialType.System_Byte 67specialType = specialType.System_Char 69specialType = specialType.System_DateTime 71specialType = specialType.System_Decimal 73specialType = specialType.System_Double 75specialType = specialType.System_Int32 77specialType = specialType.System_Int64 79specialType = specialType.System_Object 81specialType = specialType.System_SByte 83specialType = specialType.System_Single 85specialType = specialType.System_String 87specialType = specialType.System_Int16 89specialType = specialType.System_UInt32 91specialType = specialType.System_UInt64 93specialType = specialType.System_UInt16 104Case SpecialType.System_Boolean, 105SpecialType.System_Byte, 106SpecialType.System_SByte, 107SpecialType.System_Int16, 108SpecialType.System_UInt16, 109SpecialType.System_Int32, 110SpecialType.System_UInt32, 111SpecialType.System_Int64, 112SpecialType.System_UInt64, 113SpecialType.System_Single, 114SpecialType.System_Double, 115SpecialType.System_Decimal, 116SpecialType.System_DateTime, 117SpecialType.System_Char, 118SpecialType.System_String
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\StringExtensions.vb (16)
97Case SpecialType.System_Boolean, 98SpecialType.System_Byte, 99SpecialType.System_SByte, 100SpecialType.System_Int16, 101SpecialType.System_UInt16, 102SpecialType.System_Int32, 103SpecialType.System_UInt32, 104SpecialType.System_Int64, 105SpecialType.System_UInt64, 106SpecialType.System_Single, 107SpecialType.System_Double, 108SpecialType.System_Decimal, 109SpecialType.System_DateTime, 110SpecialType.System_Char, 111SpecialType.System_String, 112SpecialType.System_Object
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (17)
81If symbol.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 96Case SpecialType.System_Object 98Case SpecialType.System_Boolean 100Case SpecialType.System_Char 102Case SpecialType.System_SByte 104Case SpecialType.System_Byte 106Case SpecialType.System_Int16 108Case SpecialType.System_UInt16 110Case SpecialType.System_Int32 112Case SpecialType.System_Int64 114Case SpecialType.System_UInt32 116Case SpecialType.System_UInt64 118Case SpecialType.System_Decimal 120Case SpecialType.System_Single 122Case SpecialType.System_Double 124Case SpecialType.System_String 126Case SpecialType.System_DateTime
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (30)
235Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 282Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 412Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 452Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 486Return types.Select(Function(t) New TypeInferenceInfo(If(t.InferredType.SpecialType = SpecialType.System_Void, task, taskOfT.Construct(t.InferredType)))) 505New TypeInferenceInfo(Me.Compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(t.InferredType)), 511If t.InferredType.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 534Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 544If otherSideTypes.Any(Function(t) t.InferredType.SpecialType <> SpecialType.System_Object AndAlso Not t.InferredType.IsErrorType()) Then 568Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 574Return CreateResult(SpecialType.System_Boolean) 594Return CreateResult(SpecialType.System_Boolean) 598Return CreateResult(SpecialType.System_Boolean) 605Return CreateResult(SpecialType.System_IDisposable) 648Return CreateResult(SpecialType.System_Void) 660Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 664Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 665Return CreateResult(type.Construct(Compilation.GetSpecialType(SpecialType.System_Object))) 694Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 698Return CreateResult(SpecialType.System_Boolean) 773If memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 774memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerator_T Then 806Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 815Return CreateResult(SpecialType.System_Boolean) 823Return CreateResult(SpecialType.System_Boolean) 841Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 848Return CreateResult(SpecialType.System_Boolean) 857Return CreateResult(SpecialType.System_IDisposable) 869Return CreateResult(SpecialType.System_Boolean) 873Return CreateResult(SpecialType.System_Boolean)
Microsoft.CodeAnalysis.Workspaces (405)
Editing\SyntaxGenerator.cs (2)
794underlyingType: type.EnumUnderlyingType is null or { SpecialType: SpecialType.System_Int32 } 2007public abstract SyntaxNode TypeExpression(SpecialType specialType);
FindSymbols\FindReferences\DependentProjectsFinder.cs (1)
301typeNameConstant.Type.SpecialType != SpecialType.System_String ||
FindSymbols\FindReferences\DependentTypeFinder.cs (5)
216case SpecialType.System_Object: 220predicate: static n => n.BaseType?.SpecialType == SpecialType.System_Object).ConfigureAwait(false); 222case SpecialType.System_ValueType: 226case SpecialType.System_Enum: 230case SpecialType.System_MulticastDelegate:
ObsoleteSymbol\AbstractObsoleteSymbolService.cs (1)
200if (symbol is INamedTypeSymbol { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T, TypeArguments: [var valueType] })
Recommendations\AbstractRecommendationService.cs (1)
76if (namedType.SpecialType == SpecialType.System_Void)
Recommendations\AbstractRecommendationServiceRunner.cs (9)
305AddSpecialTypeSymbolAndItsAliases(nameof(Byte), SpecialType.System_Byte); 306AddSpecialTypeSymbolAndItsAliases(nameof(SByte), SpecialType.System_SByte); 307AddSpecialTypeSymbolAndItsAliases(nameof(Int16), SpecialType.System_Int16); 308AddSpecialTypeSymbolAndItsAliases(nameof(UInt16), SpecialType.System_UInt16); 309AddSpecialTypeSymbolAndItsAliases(nameof(Int32), SpecialType.System_Int32); 310AddSpecialTypeSymbolAndItsAliases(nameof(UInt32), SpecialType.System_UInt32); 311AddSpecialTypeSymbolAndItsAliases(nameof(Int64), SpecialType.System_Int64); 312AddSpecialTypeSymbolAndItsAliases(nameof(UInt64), SpecialType.System_UInt64); 316void AddSpecialTypeSymbolAndItsAliases(string name, SpecialType specialType)
Shared\Extensions\ITypeSymbolExtensions.cs (4)
178return type.OriginalDefinition is { SpecialType: SpecialType.System_Collections_Generic_IEnumerable_T or SpecialType.System_Collections_IEnumerable } || 179type.AllInterfaces.Any(s => s.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T or SpecialType.System_Collections_IEnumerable);
Shared\Utilities\EditorBrowsableHelpers.cs (1)
100var shortType = compilation.GetSpecialType(SpecialType.System_Int16);
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (5)
14protected abstract SyntaxNode CreateExplicitlyCastedLiteralValue(INamedTypeSymbol enumType, SpecialType underlyingSpecialType, object constantValue); 77var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 171var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 187var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (12)
83public static bool IsSpecialType([NotNullWhen(true)] ITypeSymbol? type, SpecialType specialType) 136SpecialType.System_SByte => value is sbyte, 137SpecialType.System_Byte => value is byte, 138SpecialType.System_Int16 => value is short, 139SpecialType.System_UInt16 => value is ushort, 140SpecialType.System_Int32 => value is int, 141SpecialType.System_UInt32 => value is uint, 142SpecialType.System_Int64 => value is long, 143SpecialType.System_UInt64 => value is ulong, 144SpecialType.System_Decimal => value is decimal, 145SpecialType.System_Single => value is float, 146SpecialType.System_Double => value is double,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
422SpecialType specialType = SpecialType.None, 441SpecialType specialType = SpecialType.None, 493specialType: SpecialType.None,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\LiteralSpecialValues.cs (11)
16public static bool HasSpecialValues(SpecialType specialType) 20case SpecialType.System_SByte: 21case SpecialType.System_Int16: 22case SpecialType.System_UInt16: 23case SpecialType.System_Int32: 24case SpecialType.System_UInt32: 25case SpecialType.System_Int64: 26case SpecialType.System_UInt64: 27case SpecialType.System_Single: 28case SpecialType.System_Double: 29case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
29SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationArrayTypeSymbol.cs (1)
10internal sealed class CodeGenerationArrayTypeSymbol(ITypeSymbol elementType, int rank, NullableAnnotation nullableAnnotation) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, nullableAnnotation), IArrayTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationMethodSymbol.cs (1)
75=> this.ReturnType == null || this.ReturnType.SpecialType == SpecialType.System_Void;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationNamedTypeSymbol.cs (1)
34SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationPointerTypeSymbol.cs (1)
9internal sealed class CodeGenerationPointerTypeSymbol(ITypeSymbol pointedAtType) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, NullableAnnotation.None), IPointerTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeParameterSymbol.cs (1)
24int ordinal) : CodeGenerationTypeSymbol(containingType?.ContainingAssembly, containingType, attributes, Accessibility.NotApplicable, default, name, SpecialType.None, nullableAnnotation), ITypeParameterSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (2)
19SpecialType specialType, 23public SpecialType SpecialType { get; protected set; } = specialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
85_ => compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (19)
58parameterType ??= compilation.GetSpecialType(SpecialType.System_Object); 66returnType: compilation.GetSpecialType(SpecialType.System_Boolean), 436case SpecialType.System_Boolean: 437case SpecialType.System_Char: 438case SpecialType.System_SByte: 439case SpecialType.System_Byte: 440case SpecialType.System_Int16: 441case SpecialType.System_UInt16: 442case SpecialType.System_Int32: 443case SpecialType.System_UInt32: 444case SpecialType.System_Int64: 445case SpecialType.System_UInt64: 446case SpecialType.System_Decimal: 447case SpecialType.System_Single: 448case SpecialType.System_Double: 449case SpecialType.System_String: 450case SpecialType.System_DateTime: 468method.ReturnType.SpecialType == SpecialType.System_Boolean && 469method.Parameters[0].Type.SpecialType == SpecialType.System_Object &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateGetHashCodeMethod.cs (4)
136? factory.SimpleLocalDeclarationStatement(generatorInternal, compilation.GetSpecialType(SpecialType.System_Int32), HashCodeName, CreateLiteralExpression(factory, initHash)) 137: factory.LocalDeclarationStatement(compilation.GetSpecialType(SpecialType.System_Int64), HashCodeName, CreateLiteralExpression(factory, initHash))); 166compilation.GetSpecialType(SpecialType.System_Int32), 210method.ReturnType.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_Negate.cs (12)
60SpecialType? patternValueType, 182else if (operation is IIsTypeOperation { TypeOperand.SpecialType: SpecialType.System_Object } && generatorInternal.SupportsPatterns(semanticModel.SyntaxTree.Options)) 303SpecialType? patternValueType) 305if (patternValueType is SpecialType specialType && specialType.IsNumericType()) 445if (containingType?.SpecialType == SpecialType.System_Array || 446containingType?.SpecialType == SpecialType.System_String) 456case SpecialType.System_Byte: 457case SpecialType.System_UInt16: 458case SpecialType.System_UInt32: 459case SpecialType.System_UInt64: 501SpecialType? patternValueType) 508if (patternValueType == SpecialType.System_Boolean)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (2)
78protected IEnumerable<TypeInferenceInfo> CreateResult(SpecialType type, NullableAnnotation nullableAnnotation = NullableAnnotation.None) 120symbol.ContainingType?.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.cs (1)
46? [semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean)]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Simplification\SimplificationHelpers.cs (2)
77var specialType = SpecialTypeAnnotation.GetSpecialType(annotation2); 78if (specialType != SpecialType.None)
Microsoft.DotNet.CodeAnalysis (2)
Analyzers\AppContextDefaultsAnalyzer.cs (2)
147if (methodSym.Parameters[0].Type.SpecialType != SpecialType.System_String) 150if (methodSym.Parameters[1].Type.SpecialType != SpecialType.System_Boolean)
Microsoft.Extensions.Logging.Generators (4)
LoggerMessageGenerator.Parser.cs (2)
152if (items[0].Type.SpecialType == SpecialType.System_String) 696while (currentClassType is { SpecialType: not SpecialType.System_Object })
LoggerMessageGenerator.Roslyn4.0.cs (2)
51INamedTypeSymbol? enumerableSymbol = compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable); 52INamedTypeSymbol? stringSymbol = compilation.GetSpecialType(SpecialType.System_String);
Microsoft.Extensions.Options.SourceGeneration (36)
OptionsSourceGenContext.cs (15)
49SpecialType.System_Boolean => true, 50SpecialType.System_Byte => true, 51SpecialType.System_Char => true, 52SpecialType.System_DateTime => true, 53SpecialType.System_Decimal => true, 54SpecialType.System_Double => true, 55SpecialType.System_Int16 => true, 56SpecialType.System_Int32 => true, 57SpecialType.System_Int64 => true, 58SpecialType.System_SByte => true, 59SpecialType.System_Single => true, 60SpecialType.System_UInt16 => true, 61SpecialType.System_UInt32 => true, 62SpecialType.System_UInt64 => true, 63SpecialType.System_String => true,
Parser.cs (16)
204&& m.Parameters[0].Type.SpecialType == SpecialType.System_String 242if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 257if (SymbolEqualityComparer.Default.Equals(implementingInterface.OriginalDefinition, _compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T))) 270if (modelType.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 279while (baseType is not null && baseType.SpecialType != SpecialType.System_Object 550if (transValidatorTypeName == null && speculate && memberType.SpecialType == SpecialType.None) 563if (enumerationValidatorTypeName == null && speculate && memberType.SpecialType != SpecialType.System_String) 600if (memberType.SpecialType == SpecialType.System_String || ConvertTo(memberType, _symbolHolder.ICollectionSymbol)) 604else if (ParserUtilities.TypeHasProperty(memberType, "Count", SpecialType.System_Int32)) 622if (constructorParameters.Length == 1 && constructorParameters[0].Name == "otherProperty" && constructorParameters[0].Type.SpecialType == SpecialType.System_String) 637if (typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 669(SymbolEqualityComparer.Default.Equals(typeSymbol, _symbolHolder.TimeSpanSymbol) || typeSymbol.SpecialType == SpecialType.System_String)) 687if (mt.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 811if (type.SpecialType == SpecialType.System_Boolean) 822if (type.SpecialType == SpecialType.System_String) 827if (type.SpecialType == SpecialType.System_Char)
ParserUtilities.cs (5)
71internal static bool TypeHasProperty(ITypeSymbol typeSymbol, string propertyName, SpecialType returnType) 76if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 89} while (type is not null && type.SpecialType != SpecialType.System_Object); 108=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
Microsoft.Gen.BuildMetadata (2)
src\Generators\Shared\ParserUtilities.cs (2)
78=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
Microsoft.Gen.Logging (13)
Parsing\AttributeProcessors.cs (1)
50else if (a.Type?.SpecialType == SpecialType.System_Int32)
Parsing\Parser.cs (1)
645while (currentClassType is { SpecialType: not SpecialType.System_Object })
Parsing\Parser.LogProperties.cs (1)
93while (namedType != null && namedType.SpecialType != SpecialType.System_Object)
Parsing\Parser.Records.cs (1)
35while (namedType != null && namedType.SpecialType != SpecialType.System_Object)
Parsing\SymbolLoader.cs (1)
89var enumerableSymbol = compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable);
Parsing\TypeSymbolExtensions.cs (6)
14&& sym.SpecialType != SpecialType.System_String; 51&& ts.Parameters[0].Type.SpecialType == SpecialType.System_String 71=> typeSymbol.SpecialType != SpecialType.None || 72typeSymbol.OriginalDefinition.SpecialType != SpecialType.None || 80while (current != null && current.SpecialType != SpecialType.System_Object) 95if (sym is INamedTypeSymbol namedTypeSymbol && namedTypeSymbol.IsGenericType && namedTypeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T)
src\Generators\Shared\ParserUtilities.cs (2)
78=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
Microsoft.Gen.Logging.Unit.Tests (9)
LogParserUtilitiesTests.cs (5)
24typeSymbolMock.SetupGet(x => x.SpecialType).Returns(SpecialType.System_Nullable_T); 29anotherTypeSymbolMock.SetupGet(x => x.SpecialType).Returns(SpecialType.None); 39typeSymbolMock.SetupGet(x => x.SpecialType).Returns(SpecialType.None); 99.Returns(SpecialType.None); 156paramTypeMock.SetupGet(x => x.SpecialType).Returns(SpecialType.None);
TypeSymbolExtensionsTests.cs (4)
286INamedTypeSymbol nullableType = compilation.GetSpecialType(SpecialType.System_Nullable_T); 287INamedTypeSymbol intType = compilation.GetSpecialType(SpecialType.System_Int32); 298INamedTypeSymbol intType = compilation.GetSpecialType(SpecialType.System_Int32); 308INamedTypeSymbol intType = compilation.GetSpecialType(SpecialType.System_Int32);
Microsoft.Gen.MetadataExtractor (17)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (14)
35private static readonly HashSet<SpecialType> _allowedGenericAttributeTypeArgs = 37SpecialType.System_Byte, 38SpecialType.System_Int16, 39SpecialType.System_Int32, 40SpecialType.System_Int64, 41SpecialType.System_Decimal, 42SpecialType.System_Single, 43SpecialType.System_Double 578if (returnType.SpecialType != SpecialType.None || 699SpecialType specialType; 732if (specialType == SpecialType.None) 771if (specialType == SpecialType.System_String) 800else if (specialType == SpecialType.None) 827if (kind == TypeKind.Struct && specialType == SpecialType.None)
src\Generators\Microsoft.Gen.Metrics\SymbolLoader.cs (1)
38var longType = compilation.GetSpecialType(SpecialType.System_Int64);
src\Generators\Shared\ParserUtilities.cs (2)
78=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
Microsoft.Gen.Metrics (17)
Parser.cs (14)
35private static readonly HashSet<SpecialType> _allowedGenericAttributeTypeArgs = 37SpecialType.System_Byte, 38SpecialType.System_Int16, 39SpecialType.System_Int32, 40SpecialType.System_Int64, 41SpecialType.System_Decimal, 42SpecialType.System_Single, 43SpecialType.System_Double 578if (returnType.SpecialType != SpecialType.None || 699SpecialType specialType; 732if (specialType == SpecialType.None) 771if (specialType == SpecialType.System_String) 800else if (specialType == SpecialType.None) 827if (kind == TypeKind.Struct && specialType == SpecialType.None)
src\Generators\Shared\ParserUtilities.cs (2)
78=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
SymbolLoader.cs (1)
38var longType = compilation.GetSpecialType(SpecialType.System_Int64);
Microsoft.Gen.MetricsReports (17)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (14)
35private static readonly HashSet<SpecialType> _allowedGenericAttributeTypeArgs = 37SpecialType.System_Byte, 38SpecialType.System_Int16, 39SpecialType.System_Int32, 40SpecialType.System_Int64, 41SpecialType.System_Decimal, 42SpecialType.System_Single, 43SpecialType.System_Double 578if (returnType.SpecialType != SpecialType.None || 699SpecialType specialType; 732if (specialType == SpecialType.None) 771if (specialType == SpecialType.System_String) 800else if (specialType == SpecialType.None) 827if (kind == TypeKind.Struct && specialType == SpecialType.None)
src\Generators\Microsoft.Gen.Metrics\SymbolLoader.cs (1)
38var longType = compilation.GetSpecialType(SpecialType.System_Int64);
src\Generators\Shared\ParserUtilities.cs (2)
78=> type.SpecialType == SpecialType.System_Nullable_T || type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
Microsoft.Interop.ComInterfaceGenerator (9)
Analyzers\ConvertComImportToGeneratedComInterfaceAnalyzer.cs (3)
219public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type.SpecialType == SpecialType.System_String; 226public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type is { TypeKind: TypeKind.Array or TypeKind.Delegate } or { SpecialType: SpecialType.System_Array or SpecialType.System_Object };
Analyzers\RuntimeComApiUsageWithSourceGeneratedComAnalyzer.cs (2)
146if (operand is IConversionOperation { Type.SpecialType: SpecialType.System_Object } objConversion) 174if (operand is IConversionOperation { Type.SpecialType: SpecialType.System_Object } objConversion)
ComInterfaceGenerator.cs (2)
249if ((returnSwappedSignatureElements[i].ManagedType is SpecialTypeInfo { SpecialType: SpecialType.System_Int32 or SpecialType.System_Enum } or EnumTypeInfo
src\runtime\src\libraries\System.Runtime.InteropServices\gen\Common\ConvertToSourceGeneratedInteropFixer.cs (2)
240if (parameter.Type.SpecialType == SpecialType.System_Boolean 249if (methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean
Microsoft.Interop.JavaScript.JSImportGenerator (15)
JSManagedTypeInfo.cs (15)
19case { SpecialType: SpecialType.System_Void }: 24case { SpecialType: SpecialType.System_Boolean }: 29case { SpecialType: SpecialType.System_Byte }: 34case { SpecialType: SpecialType.System_Char }: 39case { SpecialType: SpecialType.System_Int16 }: 44case { SpecialType: SpecialType.System_Int32 }: 49case { SpecialType: SpecialType.System_Int64 }: 54case { SpecialType: SpecialType.System_Single }: 59case { SpecialType: SpecialType.System_Double }: 64case { SpecialType: SpecialType.System_IntPtr }: 65case IPointerTypeSymbol { PointedAtType.SpecialType: SpecialType.System_Void }: 70case { SpecialType: SpecialType.System_DateTime }: 85case { SpecialType: SpecialType.System_Object }: 90case { SpecialType: SpecialType.System_String }: 102case INamedTypeSymbol { ConstructedFrom.SpecialType: SpecialType.System_Nullable_T } nullable:
Microsoft.Interop.LibraryImportGenerator (19)
Analyzers\ConvertToLibraryImportFixer.cs (5)
263editor.Generator.TypeExpression(editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int32))); 695if (param.Type.SpecialType is SpecialType.System_String or SpecialType.System_Char) 701return method.ReturnType.SpecialType is SpecialType.System_String or SpecialType.System_Char;
Analyzers\CustomMarshallerAttributeFixer.cs (12)
248gen.TypeExpression(editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int32)), 262gen.ParameterDeclaration("numElements", type: gen.TypeExpression(SpecialType.System_Int32), refKind: RefKind.Out), 278gen.ParameterDeclaration("numElements", type: gen.TypeExpression(SpecialType.System_Int32)), 309gen.ParameterDeclaration("numElements", gen.TypeExpression(SpecialType.System_Int32)) 325gen.ParameterDeclaration("numElements", gen.TypeExpression(SpecialType.System_Int32)) 382return gen.TypeExpression(editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_IntPtr)); 396return editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_IntPtr); 460gen.TypeExpression(editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Int32)), 493gen.ParameterDeclaration("numElements", gen.TypeExpression(SpecialType.System_Int32)) 507gen.ParameterDeclaration("numElements", gen.TypeExpression(SpecialType.System_Int32)) 549return gen.TypeExpression(editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_IntPtr)); 563return editor.SemanticModel.Compilation.GetSpecialType(SpecialType.System_IntPtr);
src\runtime\src\libraries\System.Runtime.InteropServices\gen\Common\ConvertToSourceGeneratedInteropFixer.cs (2)
240if (parameter.Type.SpecialType == SpecialType.System_Boolean 249if (methodSymbol.ReturnType.SpecialType == SpecialType.System_Boolean
Microsoft.Interop.LibraryImportGenerator.Downlevel (1)
DownlevelStringMarshallingInfoProvider.cs (1)
26public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type.SpecialType == SpecialType.System_String;
Microsoft.Interop.SourceGeneration (87)
BooleanMarshallingInfoProvider.cs (1)
16public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type.SpecialType == SpecialType.System_Boolean;
CharMarshallingInfoProvider.cs (1)
23public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type.SpecialType == SpecialType.System_Char;
IncrementalGeneratorInitializationContextExtensions.cs (1)
33(context, ct) => SymbolEqualityComparer.Default.Equals(context.Attributes[0].AttributeClass.ContainingAssembly, context.SemanticModel.Compilation.GetSpecialType(SpecialType.System_Object).ContainingAssembly))
ManagedToNativeStubGenerator.cs (1)
88HasForwardedTypes |= generator.IsForwarder() && generator is { TypeInfo.ManagedType: not SpecialTypeInfo { SpecialType: Microsoft.CodeAnalysis.SpecialType.System_Void } };
ManagedTypeInfo.cs (13)
44if (type.SpecialType != SpecialType.None) 80public sealed record SpecialTypeInfo(string FullTypeName, string DiagnosticFormattedName, SpecialType SpecialType) : ManagedTypeInfo(FullTypeName, DiagnosticFormattedName) 82public static readonly SpecialTypeInfo Byte = new("byte", "byte", SpecialType.System_Byte); 83public static readonly SpecialTypeInfo SByte = new("sbyte", "sbyte", SpecialType.System_SByte); 84public static readonly SpecialTypeInfo Int16 = new("short", "short", SpecialType.System_Int16); 85public static readonly SpecialTypeInfo UInt16 = new("ushort", "ushort", SpecialType.System_UInt16); 86public static readonly SpecialTypeInfo Int32 = new("int", "int", SpecialType.System_Int32); 87public static readonly SpecialTypeInfo UInt32 = new("uint", "uint", SpecialType.System_UInt32); 88public static readonly SpecialTypeInfo Void = new("void", "void", SpecialType.System_Void); 89public static readonly SpecialTypeInfo String = new("string", "string", SpecialType.System_String); 90public static readonly SpecialTypeInfo Boolean = new("bool", "bool", SpecialType.System_Boolean); 91public static readonly SpecialTypeInfo IntPtr = new("nint", "nint", SpecialType.System_IntPtr); 104public sealed record EnumTypeInfo(string FullTypeName, string DiagnosticFormattedName, SpecialType UnderlyingType) : ManagedTypeInfo(FullTypeName, DiagnosticFormattedName);
MarshalAsParser.cs (1)
257&& type.SpecialType == SpecialType.System_Object
MarshalAsWithCustomMarshallersParser.cs (3)
62if (elementType.SpecialType == SpecialType.System_String) 83if (type.SpecialType == SpecialType.System_String) 88if (type.SpecialType == SpecialType.System_Object && marshalAsInfo is MarshalAsScalarInfo(UnmanagedType.Struct, _))
MarshallerShape.cs (8)
316&& m.Parameters[1].Type.SpecialType == SpecialType.System_Int32 327&& m.Parameters[2].Type.SpecialType == SpecialType.System_Int32 357&& m.Parameters[1].Type.SpecialType == SpecialType.System_Int32 367&& m.Parameters[1].Type.SpecialType == SpecialType.System_Int32 377&& m.Parameters[1].Type.SpecialType == SpecialType.System_Int32 397&& m.Parameters[1].Type.SpecialType == SpecialType.System_Int32 709&& m.Parameters[0].Type.SpecialType == SpecialType.System_Int32 719&& m.Parameters[0].Type.SpecialType == SpecialType.System_Int32
Marshalling\AttributedMarshallingModelGeneratorResolver.cs (1)
111requiresCast = specialType.SpecialType != SpecialType.System_Int32;
Marshalling\BoolMarshaller.cs (1)
31Debug.Assert(info.ManagedType is SpecialTypeInfo { SpecialType: SpecialType.System_Boolean });
Marshalling\CharMarshaller.cs (1)
38Debug.Assert(info.ManagedType is SpecialTypeInfo {SpecialType: SpecialType.System_Char });
Marshalling\CharMarshallingGeneratorResolver.cs (1)
26if (info.ManagedType is SpecialTypeInfo { SpecialType: SpecialType.System_Char })
Marshalling\MarshalAsMarshallingGeneratorResolver.cs (21)
41case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_SByte }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.I1, _) } 42or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Byte }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.U1, _) } 43or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Int16 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.I2, _) } 44or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_UInt16 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.U2, _) } 45or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Int32 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.I4 or UnmanagedType.Error, _) } 46or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_UInt32 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.U4 or UnmanagedType.Error, _) } 47or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Int64 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.I8, _) } 48or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_UInt64 }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.U8, _) } 49or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_IntPtr }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.SysInt, _) } 50or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_UIntPtr }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.SysUInt, _) } 51or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Single }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.R4, _) } 52or { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Double }, MarshallingAttributeInfo: NoMarshallingInfo or MarshalAsInfo(UnmanagedType.R8, _) }: 59SpecialType underlyingSpecialType = enumType.UnderlyingType; 60if (underlyingSpecialType == SpecialType.System_Boolean || underlyingSpecialType == SpecialType.System_Char) 75case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Boolean }, MarshallingAttributeInfo: MarshalAsInfo(UnmanagedType.U1, _) }: 77case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Boolean }, MarshallingAttributeInfo: MarshalAsInfo(UnmanagedType.I1, _) }: 79case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Boolean }, MarshallingAttributeInfo: MarshalAsInfo(UnmanagedType.U4, _) }: 81case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Boolean }, MarshallingAttributeInfo: MarshalAsInfo(UnmanagedType.I4 or UnmanagedType.Bool, _) }: 83case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Boolean }, MarshallingAttributeInfo: MarshalAsInfo(UnmanagedType.VariantBool, _) }: 95case { ManagedType: SpecialTypeInfo { SpecialType: SpecialType.System_Void } }:
MarshallingAttributeInfo.cs (5)
175SpecialType.System_Void => CreateWellKnownComExceptionMarshallingData(TypeNames.ExceptionAsVoidMarshaller, unmanagedReturnType), 176SpecialType.System_Int32 => CreateWellKnownComExceptionMarshallingData($"{TypeNames.ExceptionAsHResultMarshaller}<int>", unmanagedReturnType), 177SpecialType.System_UInt32 => CreateWellKnownComExceptionMarshallingData($"{TypeNames.ExceptionAsHResultMarshaller}<uint>", unmanagedReturnType), 178SpecialType.System_Single => CreateWellKnownComExceptionMarshallingData($"{TypeNames.ExceptionAsNaNMarshaller}<float>", unmanagedReturnType), 179SpecialType.System_Double => CreateWellKnownComExceptionMarshallingData($"{TypeNames.ExceptionAsNaNMarshaller}<double>", unmanagedReturnType),
StringMarshallingInfoProvider.cs (1)
28public bool CanProvideMarshallingInfoForType(ITypeSymbol type) => type.SpecialType == SpecialType.System_String;
TypeSymbolExtensions.cs (27)
64if (t.SpecialType is not SpecialType.None) 83if (t.ContainingAssembly.Equals(compilation.GetSpecialType(SpecialType.System_Object).ContainingAssembly, SymbolEqualityComparer.Default)) 175public static bool IsIntegralType(this SpecialType type) 177return type is SpecialType.System_SByte 178or SpecialType.System_Byte 179or SpecialType.System_Int16 180or SpecialType.System_UInt16 181or SpecialType.System_Int32 182or SpecialType.System_UInt32 183or SpecialType.System_Int64 184or SpecialType.System_UInt64 185or SpecialType.System_IntPtr 186or SpecialType.System_UIntPtr; 189public static bool IsAlwaysBlittable(this SpecialType type) 191return type is SpecialType.System_Void 192or SpecialType.System_SByte 193or SpecialType.System_Byte 194or SpecialType.System_Int16 195or SpecialType.System_UInt16 196or SpecialType.System_Int32 197or SpecialType.System_UInt32 198or SpecialType.System_Int64 199or SpecialType.System_UInt64 200or SpecialType.System_IntPtr 201or SpecialType.System_UIntPtr 202or SpecialType.System_Single 203or SpecialType.System_Double;
Microsoft.Maui.Controls.BindingSourceGen (1)
ITypeSymbolExtensions.cs (1)
30 && namedTypeSymbol.ConstructedFrom.SpecialType == SpecialType.System_Nullable_T;
Roslyn.Diagnostics.Analyzers (450)
AbstractDoNotCopyValue.cs (1)
1564if (type.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T)
AbstractRunIterations`1.cs (1)
117syntaxGenerator.TypeExpression(SpecialType.System_Int32)),
src\roslyn\src\Compilers\Core\Portable\SpecialTypeExtensions.cs (154)
17public static bool IsClrInteger(this SpecialType specialType) 21case SpecialType.System_Boolean: 22case SpecialType.System_Char: 23case SpecialType.System_Byte: 24case SpecialType.System_SByte: 25case SpecialType.System_Int16: 26case SpecialType.System_UInt16: 27case SpecialType.System_Int32: 28case SpecialType.System_UInt32: 29case SpecialType.System_Int64: 30case SpecialType.System_UInt64: 31case SpecialType.System_IntPtr: 32case SpecialType.System_UIntPtr: 42public static bool IsBlittable(this SpecialType specialType) 46case SpecialType.System_Boolean: 47case SpecialType.System_Char: 48case SpecialType.System_Byte: 49case SpecialType.System_SByte: 50case SpecialType.System_Int16: 51case SpecialType.System_UInt16: 52case SpecialType.System_Int32: 53case SpecialType.System_UInt32: 54case SpecialType.System_Int64: 55case SpecialType.System_UInt64: 56case SpecialType.System_Single: 57case SpecialType.System_Double: 64public static bool IsValueType(this SpecialType specialType) 68case SpecialType.System_Void: 69case SpecialType.System_Boolean: 70case SpecialType.System_Char: 71case SpecialType.System_Byte: 72case SpecialType.System_SByte: 73case SpecialType.System_Int16: 74case SpecialType.System_UInt16: 75case SpecialType.System_Int32: 76case SpecialType.System_UInt32: 77case SpecialType.System_Int64: 78case SpecialType.System_UInt64: 79case SpecialType.System_Single: 80case SpecialType.System_Double: 81case SpecialType.System_Decimal: 82case SpecialType.System_IntPtr: 83case SpecialType.System_UIntPtr: 84case SpecialType.System_Nullable_T: 85case SpecialType.System_DateTime: 86case SpecialType.System_TypedReference: 87case SpecialType.System_ArgIterator: 88case SpecialType.System_RuntimeArgumentHandle: 89case SpecialType.System_RuntimeFieldHandle: 90case SpecialType.System_RuntimeMethodHandle: 91case SpecialType.System_RuntimeTypeHandle: 98public static int SizeInBytes(this SpecialType specialType) 102case SpecialType.System_SByte: 104case SpecialType.System_Byte: 106case SpecialType.System_Int16: 108case SpecialType.System_UInt16: 110case SpecialType.System_Int32: 112case SpecialType.System_UInt32: 114case SpecialType.System_Int64: 116case SpecialType.System_UInt64: 118case SpecialType.System_Char: 120case SpecialType.System_Single: 122case SpecialType.System_Double: 124case SpecialType.System_Boolean: 127case SpecialType.System_Decimal: 141public static bool IsPrimitiveRecursiveStruct(this SpecialType specialType) 145case SpecialType.System_Boolean: 146case SpecialType.System_Byte: 147case SpecialType.System_Char: 148case SpecialType.System_Double: 149case SpecialType.System_Int16: 150case SpecialType.System_Int32: 151case SpecialType.System_Int64: 152case SpecialType.System_UInt16: 153case SpecialType.System_UInt32: 154case SpecialType.System_UInt64: 155case SpecialType.System_IntPtr: 156case SpecialType.System_UIntPtr: 157case SpecialType.System_SByte: 158case SpecialType.System_Single: 165public static bool IsValidEnumUnderlyingType(this SpecialType specialType) 169case SpecialType.System_Byte: 170case SpecialType.System_SByte: 171case SpecialType.System_Int16: 172case SpecialType.System_UInt16: 173case SpecialType.System_Int32: 174case SpecialType.System_UInt32: 175case SpecialType.System_Int64: 176case SpecialType.System_UInt64: 183public static bool IsNumericType(this SpecialType specialType) 187case SpecialType.System_Byte: 188case SpecialType.System_SByte: 189case SpecialType.System_Int16: 190case SpecialType.System_UInt16: 191case SpecialType.System_Int32: 192case SpecialType.System_UInt32: 193case SpecialType.System_Int64: 194case SpecialType.System_UInt64: 195case SpecialType.System_Single: 196case SpecialType.System_Double: 197case SpecialType.System_Decimal: 207public static bool IsIntegralType(this SpecialType specialType) 211case SpecialType.System_Byte: 212case SpecialType.System_SByte: 213case SpecialType.System_Int16: 214case SpecialType.System_UInt16: 215case SpecialType.System_Int32: 216case SpecialType.System_UInt32: 217case SpecialType.System_Int64: 218case SpecialType.System_UInt64: 225public static bool IsUnsignedIntegralType(this SpecialType specialType) 229case SpecialType.System_Byte: 230case SpecialType.System_UInt16: 231case SpecialType.System_UInt32: 232case SpecialType.System_UInt64: 239public static bool IsSignedIntegralType(this SpecialType specialType) 243case SpecialType.System_SByte: 244case SpecialType.System_Int16: 245case SpecialType.System_Int32: 246case SpecialType.System_Int64: 258public static int VBForToShiftBits(this SpecialType specialType) 262case SpecialType.System_SByte: 264case SpecialType.System_Int16: 266case SpecialType.System_Int32: 268case SpecialType.System_Int64: 275public static SpecialType FromRuntimeTypeOfLiteralValue(object value) 282return SpecialType.System_Int32; 287return SpecialType.System_String; 292return SpecialType.System_Boolean; 297return SpecialType.System_Char; 302return SpecialType.System_Int64; 307return SpecialType.System_Double; 312return SpecialType.System_UInt32; 317return SpecialType.System_UInt64; 322return SpecialType.System_Single; 327return SpecialType.System_Decimal; 332return SpecialType.System_Int16; 337return SpecialType.System_UInt16; 342return SpecialType.System_DateTime; 347return SpecialType.System_Byte; 352return SpecialType.System_SByte; 355return SpecialType.None; 365public static bool CanOptimizeBehavior(this SpecialType specialType) 366=> specialType is >= SpecialType.System_Object and <= SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute; 371internal static ulong ConvertUnderlyingValueToUInt64(this SpecialType enumUnderlyingType, object value) 379SpecialType.System_SByte => (ulong)(sbyte)value, 380SpecialType.System_Int16 => (ulong)(short)value, 381SpecialType.System_Int32 => (ulong)(int)value, 382SpecialType.System_Int64 => (ulong)(long)value, 383SpecialType.System_Byte => (byte)value, 384SpecialType.System_UInt16 => (ushort)value, 385SpecialType.System_UInt32 => (uint)value, 386SpecialType.System_UInt64 => (ulong)value,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (19)
339(binaryOperation.Type.SpecialType == SpecialType.System_Boolean && 373SpecialType.System_Boolean 374or SpecialType.System_Byte 375or SpecialType.System_Char 376or SpecialType.System_Double 377or SpecialType.System_Int16 378or SpecialType.System_Int32 379or SpecialType.System_Int64 380or SpecialType.System_UInt16 381or SpecialType.System_UInt32 382or SpecialType.System_UInt64 383or SpecialType.System_IntPtr 384or SpecialType.System_UIntPtr 385or SpecialType.System_SByte 386or SpecialType.System_Single 387or SpecialType.System_String 388or SpecialType.System_Object 389or SpecialType.System_ValueType 390or SpecialType.System_Void => true,
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DiagnosticHelpers.cs (11)
11public static bool TryConvertToUInt64(object? value, SpecialType specialType, out ulong convertedValue) 19case SpecialType.System_Int16: 23case SpecialType.System_Int32: 27case SpecialType.System_Int64: 31case SpecialType.System_UInt16: 35case SpecialType.System_UInt32: 39case SpecialType.System_UInt64: 43case SpecialType.System_Byte: 47case SpecialType.System_SByte: 51case SpecialType.System_Char: 55case SpecialType.System_Boolean:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\DoNotCatchGeneralUnlessRethrown.cs (1)
104compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IMethodSymbolExtensions.cs (16)
31method.ReturnType.SpecialType == SpecialType.System_Boolean && 33method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 43method.ContainingType.SpecialType == SpecialType.System_Object && 46method.ReturnType.SpecialType == SpecialType.System_Boolean && 48method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 58method.ContainingType.SpecialType == SpecialType.System_Object && 60method.ReturnType.SpecialType == SpecialType.System_Boolean && 61method.Parameters[0].Type.SpecialType == SpecialType.System_Object && 62method.Parameters[1].Type.SpecialType == SpecialType.System_Object && 74if (overriddenMethod.ContainingType.SpecialType == SpecialType.System_Object) 185Name: "Dispose", MethodKind: MethodKind.Ordinary, ReturnsVoid: true, Parameters: [{ Type.SpecialType: SpecialType.System_Boolean, RefKind: RefKind.None }] 230method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean; 397method.Parameters[0].Type.SpecialType == SpecialType.System_Boolean && 411method.Parameters[1].Type.SpecialType == SpecialType.System_Boolean && 490method.Parameters[0].Type.SpecialType == SpecialType.System_Object; 530method.ReturnType.SpecialType == SpecialType.System_Boolean &&
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ITypeSymbolExtensions.cs (16)
22SpecialType.System_Boolean 23or SpecialType.System_Byte 24or SpecialType.System_Char 25or SpecialType.System_Double 26or SpecialType.System_Int16 27or SpecialType.System_Int32 28or SpecialType.System_Int64 29or SpecialType.System_UInt16 30or SpecialType.System_UInt32 31or SpecialType.System_UInt64 32or SpecialType.System_SByte 33or SpecialType.System_Single 34or SpecialType.System_String => true, 249=> typeSymbol.IsValueType || typeSymbol.SpecialType == SpecialType.System_String; 257=> typeSymbol != null && typeSymbol.IsValueType && typeSymbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 263=> typeSymbol.IsNullableValueType() && ((INamedTypeSymbol)typeSymbol).TypeArguments[0].SpecialType == SpecialType.System_Boolean;
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (4)
330generator.TypeExpression(SpecialType.System_Boolean), 386generator.ParameterDeclaration(argumentName.ToString(), generator.TypeExpression(SpecialType.System_Object)) 388returnType: generator.TypeExpression(SpecialType.System_Boolean), 409returnType: generator.TypeExpression(SpecialType.System_Int32),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\CollectionExpressionUtilities.cs (6)
23is SpecialType.System_Collections_Generic_IEnumerable_T 24or SpecialType.System_Collections_Generic_IReadOnlyCollection_T 25or SpecialType.System_Collections_Generic_IReadOnlyList_T; 31is SpecialType.System_Collections_Generic_ICollection_T 32or SpecialType.System_Collections_Generic_IList_T; 98var capacityConstructor = GetAccessibleInstanceConstructor(constructors, c => c.Parameters is [{ Name: "capacity", Type.SpecialType: SpecialType.System_Int32 }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (1)
169if (type.SpecialType == SpecialType.System_String)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (2)
119=> type?.SpecialType is SpecialType.System_Single or SpecialType.System_Double;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Simplification\SpecialTypeAnnotation.cs (8)
14private static readonly ConcurrentDictionary<SpecialType, string> s_fromSpecialTypes = new(); 15private static readonly ConcurrentDictionary<string, SpecialType> s_toSpecialTypes = new(); 17public static SyntaxAnnotation Create(SpecialType specialType) 20public static SpecialType GetSpecialType(SyntaxAnnotation annotation) 23private static string CreateFromSpecialTypes(SpecialType arg) 26private static SpecialType CreateToSpecialTypes(string arg) 27=> (SpecialType)Enum.Parse(typeof(SpecialType), arg);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.NamedTypeSymbolKey.cs (1)
26visitor.WriteBoolean(symbol.SpecialType == SpecialType.System_IntPtr);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (6)
757return symbol is IMethodSymbol { ContainingType.SpecialType: SpecialType.System_Object } 1016if (newReceiverType.SpecialType != SpecialType.None) 1023return newSymbolContainingType.SpecialType is SpecialType.System_Array or 1024SpecialType.System_Delegate or 1025SpecialType.System_Enum or 1026SpecialType.System_String;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (9)
58private static object CreateOne(SpecialType specialType) 61SpecialType.System_SByte => (sbyte)1, 62SpecialType.System_Byte => (byte)1, 63SpecialType.System_Int16 => (short)1, 64SpecialType.System_UInt16 => (ushort)1, 65SpecialType.System_Int32 => 1, 66SpecialType.System_UInt32 => (uint)1, 67SpecialType.System_Int64 => (long)1, 68SpecialType.System_UInt64 => (ulong)1,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\IntegerUtilities.cs (7)
60public static long Convert(long v, SpecialType type) 63SpecialType.System_SByte => unchecked((sbyte)v), 64SpecialType.System_Byte => unchecked((byte)v), 65SpecialType.System_Int16 => unchecked((short)v), 66SpecialType.System_UInt16 => unchecked((ushort)v), 67SpecialType.System_Int32 => unchecked((int)v), 68SpecialType.System_UInt32 => unchecked((uint)v),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IMethodSymbolExtensions.cs (2)
74method.Parameters is [{ Type.SpecialType: SpecialType.System_Object }, var secondParam] && 135methodSymbol.ReturnType.SpecialType == SpecialType.System_Int32 ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (1)
675ContainingType.SpecialType: SpecialType.System_Object,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (4)
514.Select(p => (p.Type ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(p.NullableAnnotation)); 519types = types.Concat((method.ReturnType ?? compilation.GetSpecialType(SpecialType.System_Object)).WithNullableAnnotation(method.ReturnNullableAnnotation)); 716if (!returnType.GetMembers().OfType<IPropertySymbol>().Any(p => p is { Name: WellKnownMemberNames.IsCompleted, Type.SpecialType: SpecialType.System_Boolean, GetMethod: not null })) 766ReturnType.SpecialType: SpecialType.System_Boolean,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (56)
55=> symbol?.SpecialType == SpecialType.System_Void; 58=> symbol?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T; 269case SpecialType.System_Array or SpecialType.System_ValueType: 272case SpecialType.System_Delegate: 273case SpecialType.System_MulticastDelegate: 274case SpecialType.System_Enum: 287case SpecialType.System_Byte: 288case SpecialType.System_SByte: 289case SpecialType.System_Int16: 290case SpecialType.System_UInt16: 291case SpecialType.System_Int32: 292case SpecialType.System_UInt32: 293case SpecialType.System_Int64: 294case SpecialType.System_UInt64: 295case SpecialType.System_Single: 296case SpecialType.System_Double: 297case SpecialType.System_Decimal: 298case SpecialType.System_IntPtr when type.IsNativeIntegerType: 299case SpecialType.System_UIntPtr when type.IsNativeIntegerType: 381case SpecialType.System_Object: 382case SpecialType.System_Void: 383case SpecialType.System_Boolean: 384case SpecialType.System_SByte: 385case SpecialType.System_Byte: 386case SpecialType.System_Decimal: 387case SpecialType.System_Single: 388case SpecialType.System_Double: 389case SpecialType.System_Int16: 390case SpecialType.System_Int32: 391case SpecialType.System_Int64: 392case SpecialType.System_Char: 393case SpecialType.System_String: 394case SpecialType.System_UInt16: 395case SpecialType.System_UInt32: 396case SpecialType.System_UInt64: 397case SpecialType.System_IntPtr when symbol.IsNativeIntegerType: 398case SpecialType.System_UIntPtr when symbol.IsNativeIntegerType: 409typeSymbol.AllInterfaces.Any(static i => i.SpecialType == SpecialType.System_Collections_IEnumerable) && 658case SpecialType.System_Boolean: 659case SpecialType.System_Char: 660case SpecialType.System_SByte: 661case SpecialType.System_Byte: 662case SpecialType.System_Int16: 663case SpecialType.System_UInt16: 664case SpecialType.System_Int32: 665case SpecialType.System_UInt32: 666case SpecialType.System_Int64: 667case SpecialType.System_UInt64: 668case SpecialType.System_Decimal: 669case SpecialType.System_Single: 670case SpecialType.System_Double: 673case SpecialType.System_IntPtr: 674case SpecialType.System_UIntPtr: 677case SpecialType.System_DateTime: 801namedType.OriginalDefinition.GetAttributes().Any(static a => a.AttributeClass?.SpecialType == SpecialType.System_Runtime_CompilerServices_InlineArrayAttribute);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\PredefinedTypeExtensions.cs (41)
13public static SpecialType ToSpecialType(this PredefinedType predefinedType) 16PredefinedType.Object => SpecialType.System_Object, 17PredefinedType.Void => SpecialType.System_Void, 18PredefinedType.Boolean => SpecialType.System_Boolean, 19PredefinedType.Char => SpecialType.System_Char, 20PredefinedType.SByte => SpecialType.System_SByte, 21PredefinedType.Byte => SpecialType.System_Byte, 22PredefinedType.Int16 => SpecialType.System_Int16, 23PredefinedType.UInt16 => SpecialType.System_UInt16, 24PredefinedType.Int32 => SpecialType.System_Int32, 25PredefinedType.UInt32 => SpecialType.System_UInt32, 26PredefinedType.Int64 => SpecialType.System_Int64, 27PredefinedType.UInt64 => SpecialType.System_UInt64, 28PredefinedType.Decimal => SpecialType.System_Decimal, 29PredefinedType.Single => SpecialType.System_Single, 30PredefinedType.Double => SpecialType.System_Double, 31PredefinedType.String => SpecialType.System_String, 32PredefinedType.DateTime => SpecialType.System_DateTime, 33PredefinedType.IntPtr => SpecialType.System_IntPtr, 34PredefinedType.UIntPtr => SpecialType.System_UIntPtr, 35_ => SpecialType.None, 38public static PredefinedType ToPredefinedType(this SpecialType specialType) 41SpecialType.System_Object => PredefinedType.Object, 42SpecialType.System_Void => PredefinedType.Void, 43SpecialType.System_Boolean => PredefinedType.Boolean, 44SpecialType.System_Char => PredefinedType.Char, 45SpecialType.System_SByte => PredefinedType.SByte, 46SpecialType.System_Byte => PredefinedType.Byte, 47SpecialType.System_Int16 => PredefinedType.Int16, 48SpecialType.System_UInt16 => PredefinedType.UInt16, 49SpecialType.System_Int32 => PredefinedType.Int32, 50SpecialType.System_UInt32 => PredefinedType.UInt32, 51SpecialType.System_Int64 => PredefinedType.Int64, 52SpecialType.System_UInt64 => PredefinedType.UInt64, 53SpecialType.System_Decimal => PredefinedType.Decimal, 54SpecialType.System_Single => PredefinedType.Single, 55SpecialType.System_Double => PredefinedType.Double, 56SpecialType.System_String => PredefinedType.String, 57SpecialType.System_DateTime => PredefinedType.DateTime, 58SpecialType.System_IntPtr => PredefinedType.IntPtr, 59SpecialType.System_UIntPtr => PredefinedType.UIntPtr,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (1)
198=> symbol.IsKind(SymbolKind.NamedType, out ITypeSymbol? typeSymbol) && typeSymbol.SpecialType == SpecialType.System_Object;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (5)
14protected abstract SyntaxNode CreateExplicitlyCastedLiteralValue(INamedTypeSymbol enumType, SpecialType underlyingSpecialType, object constantValue); 77var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 171var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType; 187var underlyingSpecialType = enumType.EnumUnderlyingType.SpecialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (12)
83public static bool IsSpecialType([NotNullWhen(true)] ITypeSymbol? type, SpecialType specialType) 136SpecialType.System_SByte => value is sbyte, 137SpecialType.System_Byte => value is byte, 138SpecialType.System_Int16 => value is short, 139SpecialType.System_UInt16 => value is ushort, 140SpecialType.System_Int32 => value is int, 141SpecialType.System_UInt32 => value is uint, 142SpecialType.System_Int64 => value is long, 143SpecialType.System_UInt64 => value is ulong, 144SpecialType.System_Decimal => value is decimal, 145SpecialType.System_Single => value is float, 146SpecialType.System_Double => value is double,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
422SpecialType specialType = SpecialType.None, 441SpecialType specialType = SpecialType.None, 493specialType: SpecialType.None,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\LiteralSpecialValues.cs (11)
16public static bool HasSpecialValues(SpecialType specialType) 20case SpecialType.System_SByte: 21case SpecialType.System_Int16: 22case SpecialType.System_UInt16: 23case SpecialType.System_Int32: 24case SpecialType.System_UInt32: 25case SpecialType.System_Int64: 26case SpecialType.System_UInt64: 27case SpecialType.System_Single: 28case SpecialType.System_Double: 29case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
29SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationArrayTypeSymbol.cs (1)
10internal sealed class CodeGenerationArrayTypeSymbol(ITypeSymbol elementType, int rank, NullableAnnotation nullableAnnotation) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, nullableAnnotation), IArrayTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationMethodSymbol.cs (1)
75=> this.ReturnType == null || this.ReturnType.SpecialType == SpecialType.System_Void;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationNamedTypeSymbol.cs (1)
34SpecialType specialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationPointerTypeSymbol.cs (1)
9internal sealed class CodeGenerationPointerTypeSymbol(ITypeSymbol pointedAtType) : CodeGenerationTypeSymbol(null, null, default, Accessibility.NotApplicable, default, string.Empty, SpecialType.None, NullableAnnotation.None), IPointerTypeSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeParameterSymbol.cs (1)
24int ordinal) : CodeGenerationTypeSymbol(containingType?.ContainingAssembly, containingType, attributes, Accessibility.NotApplicable, default, name, SpecialType.None, nullableAnnotation), ITypeParameterSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (2)
19SpecialType specialType, 23public SpecialType SpecialType { get; protected set; } = specialType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
85_ => compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (19)
58parameterType ??= compilation.GetSpecialType(SpecialType.System_Object); 66returnType: compilation.GetSpecialType(SpecialType.System_Boolean), 436case SpecialType.System_Boolean: 437case SpecialType.System_Char: 438case SpecialType.System_SByte: 439case SpecialType.System_Byte: 440case SpecialType.System_Int16: 441case SpecialType.System_UInt16: 442case SpecialType.System_Int32: 443case SpecialType.System_UInt32: 444case SpecialType.System_Int64: 445case SpecialType.System_UInt64: 446case SpecialType.System_Decimal: 447case SpecialType.System_Single: 448case SpecialType.System_Double: 449case SpecialType.System_String: 450case SpecialType.System_DateTime: 468method.ReturnType.SpecialType == SpecialType.System_Boolean && 469method.Parameters[0].Type.SpecialType == SpecialType.System_Object &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateGetHashCodeMethod.cs (4)
136? factory.SimpleLocalDeclarationStatement(generatorInternal, compilation.GetSpecialType(SpecialType.System_Int32), HashCodeName, CreateLiteralExpression(factory, initHash)) 137: factory.LocalDeclarationStatement(compilation.GetSpecialType(SpecialType.System_Int64), HashCodeName, CreateLiteralExpression(factory, initHash))); 166compilation.GetSpecialType(SpecialType.System_Int32), 210method.ReturnType.SpecialType == SpecialType.System_Int32 &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_Negate.cs (12)
60SpecialType? patternValueType, 182else if (operation is IIsTypeOperation { TypeOperand.SpecialType: SpecialType.System_Object } && generatorInternal.SupportsPatterns(semanticModel.SyntaxTree.Options)) 303SpecialType? patternValueType) 305if (patternValueType is SpecialType specialType && specialType.IsNumericType()) 445if (containingType?.SpecialType == SpecialType.System_Array || 446containingType?.SpecialType == SpecialType.System_String) 456case SpecialType.System_Byte: 457case SpecialType.System_UInt16: 458case SpecialType.System_UInt32: 459case SpecialType.System_UInt64: 501SpecialType? patternValueType) 508if (patternValueType == SpecialType.System_Boolean)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.AbstractTypeInferrer.cs (2)
78protected IEnumerable<TypeInferenceInfo> CreateResult(SpecialType type, NullableAnnotation nullableAnnotation = NullableAnnotation.None) 120symbol.ContainingType?.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\TypeInferenceService\AbstractTypeInferenceService.cs (1)
46? [semanticModel.Compilation.GetSpecialType(SpecialType.System_Boolean)]
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Simplification\SimplificationHelpers.cs (2)
77var specialType = SpecialTypeAnnotation.GetSpecialType(annotation2); 78if (specialType != SpecialType.None)
Roslyn.Diagnostics.CSharp.Analyzers (96)
CSharpDoNotUseDebugAssertForInterpolatedStrings.cs (2)
51if (member is IMethodSymbol { Parameters: [{ Type.SpecialType: SpecialType.System_Boolean }, { Type.SpecialType: SpecialType.System_String }] } method)
PreferNullLiteral.cs (1)
68|| namedType.OriginalDefinition.SpecialType != SpecialType.System_Nullable_T)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ITypeSymbolExtensions.cs (13)
19case SpecialType.System_Boolean: 20case SpecialType.System_Char: 21case SpecialType.System_SByte: 22case SpecialType.System_Int16: 23case SpecialType.System_Int32: 24case SpecialType.System_Int64: 25case SpecialType.System_Byte: 26case SpecialType.System_UInt16: 27case SpecialType.System_UInt32: 28case SpecialType.System_UInt64: 29case SpecialType.System_Single: 30case SpecialType.System_Double: 33case SpecialType.System_Decimal:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (18)
97while (current is IConversionOperation { Type.SpecialType: SpecialType.System_Delegate or SpecialType.System_MulticastDelegate }) 100if (current is IConversionOperation { Type.SpecialType: SpecialType.System_Object }) 570if (castNode.IsParentKind(SyntaxKind.Interpolation) && originalConversionOperation.Type?.SpecialType is SpecialType.System_Object) 675if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T && 676namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IReadOnlyCollection_T or SpecialType.System_Collections_Generic_IReadOnlyList_T) 682if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T && 683namedCastedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IList_T) 689if (originalNamedConvertedType.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_ICollection_T or SpecialType.System_Collections_Generic_IList_T && 754if (current.ContainingType.SpecialType == SpecialType.System_Object) 850=> type.IsSignedIntegralType() || type?.SpecialType is SpecialType.System_IntPtr; 1068if (binaryOperation.LeftOperand.Type?.SpecialType == SpecialType.System_Object && 1075else if (binaryOperation.RightOperand.Type?.SpecialType == SpecialType.System_Object && 1278=> type?.SpecialType is SpecialType.System_Double or SpecialType.System_Single; 1564rewrittenType.SpecialType == SpecialType.System_Enum;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpFlagsEnumGenerator.cs (1)
23SpecialType underlyingSpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\ExpressionGenerator.cs (6)
132var isNotSingle = !IsSpecialType(type, SpecialType.System_Single); 143if (value is double && !IsSpecialType(type, SpecialType.System_Double)) 148if (value is uint && !IsSpecialType(type, SpecialType.System_UInt32)) 153if (value is long && !IsSpecialType(type, SpecialType.System_Int64)) 158if (value is ulong && !IsSpecialType(type, SpecialType.System_UInt64)) 167var isNotDecimal = !IsSpecialType(type, SpecialType.System_Decimal);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (2)
250var baseList = namedType.EnumUnderlyingType != null && namedType.EnumUnderlyingType.SpecialType != SpecialType.System_Int32 321if (namedType is { TypeKind: TypeKind.Class, BaseType: not null, BaseType.SpecialType: not SpecialType.System_Object })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
112targetType = semanticModel.Compilation.GetSpecialType(SpecialType.System_Object);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeParameterSymbolExtensions.cs (1)
65if (type.SpecialType != SpecialType.System_Object)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (2)
126syntax = IdentifierName(symbol.SpecialType == SpecialType.System_IntPtr ? "nint" : "nuint"); 220if (symbol.SpecialType == SpecialType.System_Void)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\WithElementSyntaxExtensions.cs (1)
57static m => m.Parameters is [{ Type.SpecialType: SpecialType.System_Int32, Name: "capacity" }]);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSyntaxGeneratorInternal.cs (12)
275case SpecialType.System_Boolean: 277case SpecialType.System_SByte: 278case SpecialType.System_Byte: 279case SpecialType.System_Int16: 280case SpecialType.System_UInt16: 281case SpecialType.System_Int32: 282case SpecialType.System_UInt32: 283case SpecialType.System_Int64: 284case SpecialType.System_UInt64: 285case SpecialType.System_Decimal: 286case SpecialType.System_Single: 287case SpecialType.System_Double:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (35)
589return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 848return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 972return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 982return CreateResult(SpecialType.System_Boolean); 1037if (parentTypes.Any(static parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate)) 1039return parentTypes.Where(parentType => parentType.InferredType.SpecialType == SpecialType.System_String || parentType.InferredType.TypeKind == TypeKind.Delegate); 1070return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1077return CreateResult(SpecialType.System_Boolean); 1110return CreateResult(SpecialType.System_Boolean); 1133return CreateResult(SpecialType.System_Object, NullableAnnotation.Annotated); 1147else if (symbol.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T) 1154return compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(symbol); 1175return CreateResult(SpecialType.System_Boolean); 1209return CreateResult(SpecialType.System_Boolean); 1318return CreateResult(SpecialType.System_Void); 1335enumerableType ??= this.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 1343var objectType = Compilation.GetSpecialType(SpecialType.System_Object); 1349: results.Concat(CreateResult(Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerable))); 1361return CreateResult(SpecialType.System_Boolean); 1370return CreateResult(SpecialType.System_Boolean); 1679return CreateResult(SpecialType.System_Object); 1975return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 1993return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2000return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2009return CreateResult(SpecialType.System_Boolean); 2056return types.Select(t => t.InferredType.SpecialType == SpecialType.System_Void ? new TypeInferenceInfo(task) : new TypeInferenceInfo(taskOfT.Construct(t.InferredType))); 2092return this.Compilation.GetSpecialType(SpecialType.System_Void); 2220return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2247return CreateResult(SpecialType.System_IDisposable); 2271return CreateResult(SpecialType.System_IDisposable); 2275return CreateResult(this.Compilation.GetSpecialType(SpecialType.System_Int32)); 2278if (laterUsageInference is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2307if (inferredDescendantTypes is not [] and not [{ InferredType.SpecialType: SpecialType.System_Object }]) 2452return [new TypeInferenceInfo(Compilation.GetSpecialType(SpecialType.System_Boolean))]; 2461return CreateResult(SpecialType.System_Boolean);
Roslyn.Diagnostics.VisualBasic.Analyzers (156)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Extensions\ExpressionSyntaxExtensions.vb (1)
111If typeInfo.Type IsNot Nothing AndAlso typeInfo.Type.SpecialType = SpecialType.System_Void Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Utilities\CastAnalyzer.vb (15)
225If If(castType?.SpecialType = SpecialType.System_Object, False) AndAlso 319DirectCast(castExpressionType.OriginalDefinition, ITypeSymbol).SpecialType = SpecialType.System_Nullable_T 381Case SpecialType.System_Single, SpecialType.System_Double 383Case SpecialType.System_UInt32, SpecialType.System_Int32, 384SpecialType.System_UInt64, SpecialType.System_Int64, 385SpecialType.System_Decimal 397ElseIf castType.SpecialType = SpecialType.System_DateTime Then 398Return Not outerType.SpecialType = SpecialType.System_DateTime 399ElseIf castType.SpecialType = SpecialType.System_Boolean Then 400Return Not (outerType.IsNumericType OrElse outerType.SpecialType = SpecialType.System_Boolean) 403If castType.OriginalDefinition?.SpecialType = SpecialType.System_Nullable_T Then 415If castType.Equals(outerType) OrElse outerType.SpecialType = SpecialType.System_Object Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\ExpressionGenerator.vb (28)
71Return GenerateIntegralLiteralExpression(type, SpecialType.System_SByte, DirectCast(value, SByte), canUseFieldReference, LiteralSpecialValues.SByteSpecialValues, Function(x) x < 0, Function(x) -x, "128") 73Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int16, DirectCast(value, Short), canUseFieldReference, LiteralSpecialValues.Int16SpecialValues, Function(x) x < 0, Function(x) -x, "32768") 75Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int32, DirectCast(value, Integer), canUseFieldReference, LiteralSpecialValues.Int32SpecialValues, Function(x) x < 0, Function(x) -x, "2147483648") 77Return GenerateIntegralLiteralExpression(type, SpecialType.System_Int64, DirectCast(value, Long), canUseFieldReference, LiteralSpecialValues.Int64SpecialValues, Function(x) x < 0, Function(x) -x, "9223372036854775808") 79Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_Byte, DirectCast(value, Byte), canUseFieldReference, LiteralSpecialValues.ByteSpecialValues) 81Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt16, DirectCast(value, UShort), canUseFieldReference, LiteralSpecialValues.UInt16SpecialValues) 83Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt32, DirectCast(value, UInteger), canUseFieldReference, LiteralSpecialValues.UInt32SpecialValues) 85Return GenerateNonNegativeIntegralLiteralExpression(type, SpecialType.System_UInt64, DirectCast(value, ULong), canUseFieldReference, LiteralSpecialValues.UInt64SpecialValues) 116If Not IsSpecialType(type, SpecialType.System_String) Then 163specialType As SpecialType, 179specialType As SpecialType, 216If TypeOf value Is Byte AndAlso Not IsSpecialType(type, SpecialType.System_Byte) Then 218ElseIf TypeOf value Is SByte AndAlso Not IsSpecialType(type, SpecialType.System_SByte) Then 229If TypeOf value Is Short AndAlso Not IsSpecialType(type, SpecialType.System_Int16) Then 232ElseIf TypeOf value Is Long AndAlso Not IsSpecialType(type, SpecialType.System_Int64) Then 239Dim typeIsNotDecimal = Not IsSpecialType(type, SpecialType.System_Decimal) 249ElseIf TypeOf value Is UShort AndAlso Not IsSpecialType(type, SpecialType.System_UInt16) Then 252ElseIf TypeOf value Is UInteger AndAlso Not IsSpecialType(type, SpecialType.System_UInt32) Then 258Dim typeIsNotULong = Not IsSpecialType(type, SpecialType.System_UInt64) 266ElseIf TypeOf value Is Single AndAlso Not IsSpecialType(type, SpecialType.System_Single) Then 269ElseIf TypeOf value Is Double AndAlso Not IsSpecialType(type, SpecialType.System_Double) Then 295type, SpecialType.System_Double, value, canUseFieldReference, 320type, SpecialType.System_Single, value, canUseFieldReference, 326specialType As SpecialType, 375Dim field = GenerateFieldReference(SpecialType.System_Decimal, value, LiteralSpecialValues.DecimalSpecialValues) 389Private Function AddSpecialTypeAnnotation(type As SpecialType, expression As MemberAccessExpressionSyntax) As MemberAccessExpressionSyntax 390If SpecialType.None <> type Then 397Private Function GenerateFieldReference(Of TStructure)(type As SpecialType,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ITypeSymbolExtensions.vb (49)
19Public Function GetPredefinedCastKeyword(specialType As SpecialType) As SyntaxKind 21Case specialType.System_Boolean 23Case specialType.System_Byte 25Case specialType.System_Char 27Case specialType.System_DateTime 29Case specialType.System_Decimal 31Case specialType.System_Double 33Case specialType.System_Int32 35Case specialType.System_Int64 37Case specialType.System_Object 39Case specialType.System_SByte 41Case specialType.System_Single 43Case specialType.System_Int16 45Case SpecialType.System_String 47Case specialType.System_UInt32 49Case specialType.System_UInt64 51Case specialType.System_UInt16 60Dim specialType As SpecialType 63specialType = specialType.System_Boolean 65specialType = specialType.System_Byte 67specialType = specialType.System_Char 69specialType = specialType.System_DateTime 71specialType = specialType.System_Decimal 73specialType = specialType.System_Double 75specialType = specialType.System_Int32 77specialType = specialType.System_Int64 79specialType = specialType.System_Object 81specialType = specialType.System_SByte 83specialType = specialType.System_Single 85specialType = specialType.System_String 87specialType = specialType.System_Int16 89specialType = specialType.System_UInt32 91specialType = specialType.System_UInt64 93specialType = specialType.System_UInt16 104Case SpecialType.System_Boolean, 105SpecialType.System_Byte, 106SpecialType.System_SByte, 107SpecialType.System_Int16, 108SpecialType.System_UInt16, 109SpecialType.System_Int32, 110SpecialType.System_UInt32, 111SpecialType.System_Int64, 112SpecialType.System_UInt64, 113SpecialType.System_Single, 114SpecialType.System_Double, 115SpecialType.System_Decimal, 116SpecialType.System_DateTime, 117SpecialType.System_Char, 118SpecialType.System_String
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\StringExtensions.vb (16)
97Case SpecialType.System_Boolean, 98SpecialType.System_Byte, 99SpecialType.System_SByte, 100SpecialType.System_Int16, 101SpecialType.System_UInt16, 102SpecialType.System_Int32, 103SpecialType.System_UInt32, 104SpecialType.System_Int64, 105SpecialType.System_UInt64, 106SpecialType.System_Single, 107SpecialType.System_Double, 108SpecialType.System_Decimal, 109SpecialType.System_DateTime, 110SpecialType.System_Char, 111SpecialType.System_String, 112SpecialType.System_Object
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\TypeSyntaxGeneratorVisitor.vb (17)
81If symbol.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 96Case SpecialType.System_Object 98Case SpecialType.System_Boolean 100Case SpecialType.System_Char 102Case SpecialType.System_SByte 104Case SpecialType.System_Byte 106Case SpecialType.System_Int16 108Case SpecialType.System_UInt16 110Case SpecialType.System_Int32 112Case SpecialType.System_Int64 114Case SpecialType.System_UInt32 116Case SpecialType.System_UInt64 118Case SpecialType.System_Decimal 120Case SpecialType.System_Single 122Case SpecialType.System_Double 124Case SpecialType.System_String 126Case SpecialType.System_DateTime
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (30)
235Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 282Return CreateResult(Compilation.GetSpecialType(SpecialType.System_Int32)) 412Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 452Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 486Return types.Select(Function(t) New TypeInferenceInfo(If(t.InferredType.SpecialType = SpecialType.System_Void, task, taskOfT.Construct(t.InferredType)))) 505New TypeInferenceInfo(Me.Compilation.GetSpecialType(SpecialType.System_Nullable_T).Construct(t.InferredType)), 511If t.InferredType.OriginalDefinition.SpecialType = SpecialType.System_Nullable_T Then 534Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 544If otherSideTypes.Any(Function(t) t.InferredType.SpecialType <> SpecialType.System_Object AndAlso Not t.InferredType.IsErrorType()) Then 568Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 574Return CreateResult(SpecialType.System_Boolean) 594Return CreateResult(SpecialType.System_Boolean) 598Return CreateResult(SpecialType.System_Boolean) 605Return CreateResult(SpecialType.System_IDisposable) 648Return CreateResult(SpecialType.System_Void) 660Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 664Dim type = Me.Compilation.GetSpecialType(SpecialType.System_Collections_Generic_IEnumerable_T) 665Return CreateResult(type.Construct(Compilation.GetSpecialType(SpecialType.System_Object))) 694Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 698Return CreateResult(SpecialType.System_Boolean) 773If memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerable_T OrElse 774memberType.OriginalDefinition.SpecialType = SpecialType.System_Collections_Generic_IEnumerator_T Then 806Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 815Return CreateResult(SpecialType.System_Boolean) 823Return CreateResult(SpecialType.System_Boolean) 841Return CreateResult(Me.Compilation.GetSpecialType(SpecialType.System_Int32)) 848Return CreateResult(SpecialType.System_Boolean) 857Return CreateResult(SpecialType.System_IDisposable) 869Return CreateResult(SpecialType.System_Boolean) 873Return CreateResult(SpecialType.System_Boolean)
System.Private.CoreLib.Generators (1)
IntrinsicsInSystemPrivateCoreLibAnalyzer.cs (1)
455if (symbol == null || symbol is ITypeSymbol type && type.SpecialType != SpecialType.None)
System.Text.Json.SourceGeneration (56)
Helpers\KnownTypeSymbols.cs (6)
127public INamedTypeSymbol ObjectType => _ObjectType ??= Compilation.GetSpecialType(SpecialType.System_Object); 130public INamedTypeSymbol StringType => _StringType ??= Compilation.GetSpecialType(SpecialType.System_String); 156: (_ByteArrayType = new(Compilation.CreateArrayTypeSymbol(Compilation.GetSpecialType(SpecialType.System_Byte), rank: 1))).Value; 162: (_MemoryByteType = new(MemoryType?.Construct(Compilation.GetSpecialType(SpecialType.System_Byte)))).Value; 168: (_ReadOnlyMemoryByteType = new(ReadOnlyMemoryType?.Construct(Compilation.GetSpecialType(SpecialType.System_Byte)))).Value; 283public INamedTypeSymbol? DelegateType => _DelegateType ??= Compilation.GetSpecialType(SpecialType.System_Delegate);
Helpers\RoslynExtensions.cs (13)
193SpecialType.System_SByte or SpecialType.System_Int16 or SpecialType.System_Int32 or SpecialType.System_Int64 or 194SpecialType.System_Byte or SpecialType.System_UInt16 or SpecialType.System_UInt32 or SpecialType.System_UInt64 or 195SpecialType.System_Single or SpecialType.System_Double or SpecialType.System_Decimal; 199=> !type.IsValueType || type.OriginalDefinition.SpecialType is SpecialType.System_Nullable_T; 203if (type.IsValueType && type is INamedTypeSymbol { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T })
JsonSourceGenerator.Parser.cs (31)
1123if (caseType is INamedTypeSymbol { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T } nullableType) 1157ITypeSymbol root = _knownSymbols.Compilation.GetSpecialType(SpecialType.System_Void); 1272if (type is INamedTypeSymbol { OriginalDefinition.SpecialType: SpecialType.System_Nullable_T } nullable) 1283if (type.SpecialType is SpecialType.System_Boolean) 1302if (type.SpecialType is SpecialType.System_String or SpecialType.System_Char or SpecialType.System_DateTime || 1352i.OriginalDefinition.SpecialType is SpecialType.System_Collections_Generic_IEnumerable_T)) 1363type.SpecialType is SpecialType.System_Byte or SpecialType.System_SByte or 1364SpecialType.System_Int16 or SpecialType.System_UInt16 or 1365SpecialType.System_Int32 or SpecialType.System_UInt32 or 1366SpecialType.System_Int64 or SpecialType.System_UInt64 or 1367SpecialType.System_Single or SpecialType.System_Double or 1368SpecialType.System_Decimal; 1371type is IArrayTypeSymbol { ElementType.SpecialType: SpecialType.System_Byte }; 1376named.TypeArguments[0].SpecialType == SpecialType.System_Byte && 1382named.TypeArguments[0].SpecialType == SpecialType.System_Byte && 2595if (type.SpecialType is SpecialType.System_Boolean) 2600if (type.SpecialType is SpecialType.System_Char) 2607if (type.SpecialType is SpecialType.System_String or SpecialType.System_DateTime || 2735SpecialType.System_Boolean or 2736SpecialType.System_Char or 2737SpecialType.System_DateTime or 2738SpecialType.System_String or 2739SpecialType.System_Object ||
Model\TypeGenerationSpec.cs (4)
152if (property.PropertyType.SpecialType is SpecialType.System_Object || 164CollectionValueType!.SpecialType is not SpecialType.System_Object; 167return CollectionKeyType!.SpecialType is SpecialType.System_String && 168CollectionValueType!.SpecialType is not SpecialType.System_Object;
src\runtime\src\libraries\Common\src\SourceGenerators\TypeRef.cs (2)
34public SpecialType SpecialType { get; } 36public bool CanBeNull => !IsValueType || SpecialType is SpecialType.System_Nullable_T;
System.Text.RegularExpressions.Generator (1)
RegexGenerator.Parser.cs (1)
96if (items[2].Type?.SpecialType == SpecialType.System_Int32)
System.Windows.Forms.Analyzers.CSharp (1)
System\Windows\Forms\CSharp\Analyzers\MissingPropertySerializationConfiguration\MissingPropertySerializationConfigurationAnalyzer.cs (1)
94|| shouldSerializeMethod.ReturnType.SpecialType != SpecialType.System_Boolean
System.Windows.Forms.Analyzers.VisualBasic (1)
Analyzers\MissingPropertySerializationConfiguration\MissingPropertySerializationConfigurationDiagnosticAnalyzer.vb (1)
92shouldSerializeMethod.ReturnType.SpecialType <> SpecialType.System_Boolean OrElse