28 references to GetEnumUnderlyingType
Microsoft.CodeAnalysis.CSharp (28)
Binder\Binder_Expressions.cs (1)
1439return ConstantValue.CreateSizeOf((type.GetEnumUnderlyingType() ?? type).SpecialType);
Binder\Binder_Operators.cs (2)
1695TypeSymbol underlyingType = enumType.GetEnumUnderlyingType()!; 2770var underlyingType = operand.Type.GetEnumUnderlyingType()!;
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (1)
474var underlying = enumType.GetEnumUnderlyingType();
CodeGen\EmitOperators.cs (3)
606SpecialType type = enumType.GetEnumUnderlyingType().SpecialType; 714return IsUnsigned(Binder.GetEnumPromotedType(op.Left.Type.GetEnumUnderlyingType().SpecialType)); 717return IsUnsigned(Binder.GetEnumPromotedType(op.Right.Type.GetEnumUnderlyingType().SpecialType));
Compilation\CSharpCompilation.cs (3)
4044csharpRightType.SpecialType == csharpLeftType.GetEnumUnderlyingType()?.SpecialType && 4051csharpLeftType.SpecialType == csharpRightType.GetEnumUnderlyingType()?.SpecialType && 4060csharpReturnType.SpecialType == csharpLeftType.GetEnumUnderlyingType()?.SpecialType &&
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
444var promotedType = PromotedType(enumOperand.Type.StrippedType().GetEnumUnderlyingType()); 1074var promotedType = PromotedType(arg.Type.StrippedType().GetEnumUnderlyingType());
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (8)
491var underlyingTypeFrom = rewrittenOperand.Type.GetEnumUnderlyingType()!; 502var underlyingTypeTo = rewrittenType.GetEnumUnderlyingType()!; 973typeFromUnderlying = typeFrom.GetEnumUnderlyingType()!; 981typeToUnderlying = typeTo.GetEnumUnderlyingType()!; 1390SpecialType t0Type = t0.IsEnumType() ? t0.GetEnumUnderlyingType()!.SpecialType : t0.SpecialType; 1391SpecialType s0Type = s0.IsEnumType() ? s0.GetEnumUnderlyingType()!.SpecialType : s0.SpecialType; 1667var underlying = toType.GetEnumUnderlyingType(); 1680var underlying = fromType.GetEnumUnderlyingType();
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
127var underlyingType = loweredOperand.Type.GetEnumUnderlyingType(); 1008underlyingType = underlyingType.GetEnumUnderlyingType();
Symbols\Attributes\SourceAttributeData.cs (1)
276specType = parameterType.GetEnumUnderlyingType()!.SpecialType;
Symbols\BaseTypeAnalysis.cs (1)
249type = type.GetEnumUnderlyingType();
Symbols\Metadata\PE\SymbolFactory.cs (1)
56return type.GetEnumUnderlyingType();
Symbols\TypeSymbolExtensions.cs (3)
165return type.GetEnumUnderlyingType() ?? type; 206var underlyingType = type.GetEnumUnderlyingType(); 270type = type.GetEnumUnderlyingType()!;