94 references to ElementType
Microsoft.CodeAnalysis.CSharp (61)
Binder\Binder_Attributes.cs (1)
990
((ArrayTypeSymbol)type).
ElementType
.SpecialType == SpecialType.System_Object)
Binder\Binder_Crefs.cs (1)
557
return ContainsNestedTypeOfUnconstructedGenericType(((ArrayTypeSymbol)type).
ElementType
);
Binder\Binder_Expressions.cs (3)
3569
TypeSymbol elemType = type.
ElementType
;
7998
return new BoundArrayAccess(node, expr, BuildArgumentsForErrorRecovery(arguments), arrayType.
ElementType
, hasErrors: true);
8026
: arrayType.
ElementType
;
Binder\Binder_InterpolatedString.cs (2)
865
Type: ArrayTypeSymbol {
ElementType
: NamedTypeSymbol { IsInterpolatedStringHandlerType: true } },
897
interpolatedStringParameter.IsParams ? ((ArrayTypeSymbol)interpolatedStringParameter.Type).
ElementType
: interpolatedStringParameter.Type,
Binder\Binder_Statements.cs (1)
1277
elementType = ((ArrayTypeSymbol)initializerType).
ElementType
;
Binder\DecisionDagBuilder.cs (2)
1507
TypeSymbol e1 = array1.
ElementType
.EnumUnderlyingTypeOrSelf();
1508
TypeSymbol e2 = array2.
ElementType
.EnumUnderlyingTypeOrSelf();
Binder\Semantics\AccessCheck.cs (1)
152
return IsSymbolAccessibleCore(((ArrayTypeSymbol)symbol).
ElementType
, within, null, out failedThroughTypeCheck, compilation, ref useSiteInfo, basesBeingResolved);
Binder\Semantics\Conversions\ConversionsBase.cs (4)
3504
HasExplicitReferenceConversion(sourceArray.
ElementType
, destinationArray.
ElementType
, ref useSiteInfo);
3532
if (HasExplicitReferenceConversion(sourceArray.
ElementType
, ((NamedTypeSymbol)destination).TypeArgumentWithDefinitionUseSiteDiagnostics(0, ref useSiteInfo).Type, ref useSiteInfo))
3553
var destinationElement = destinationArray.
ElementType
;
Binder\Semantics\OverloadResolution\OverloadResolution.cs (3)
1651
return ((ArrayTypeSymbol)type).
ElementType
;
2302
return MoreSpecificType(arr1.
ElementType
, arr2.
ElementType
, ref useSiteInfo);
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (1)
1311
return arrayType.
ElementType
;
CodeGen\EmitArrayInitializer.cs (3)
47
var initializationStyle = ShouldEmitBlockInitializer(arrayType.
ElementType
, initExprs);
469
elementType = arrayType.
ElementType
;
681
EmitSymbolToken(arrayType.
ElementType
, wrappedExpression.Syntax);
CodeGen\EmitExpression.cs (4)
2158
EmitSymbolToken(arrayType.
ElementType
, expression.Syntax);
2994
var elementType = arrayType.
ElementType
;
3705
return IsVarianceCast(((ArrayTypeSymbol)to).
ElementType
, ((ArrayTypeSymbol)from).
ElementType
);
Compilation\CSharpCompilation.cs (1)
2075
return (array.IsSZArray && array.
ElementType
.SpecialType == SpecialType.System_String, returnsTaskOrTaskOfInt);
Compiler\ClsComplianceChecker.cs (4)
979
return IsCompliantType(((ArrayTypeSymbol)type).
ElementType
, context);
1378
bool elementTypesDiffer = !TypeSymbol.Equals(xArrayType.
ElementType
, yArrayType.
ElementType
, TypeCompareKind.ConsiderEverything2);
1413
return arrayType.
ElementType
.Kind == SymbolKind.ArrayType;
DocumentationComments\DocumentationCommentIDVisitor.PartVisitor.cs (1)
44
Visit(symbol.
ElementType
, builder);
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (4)
362
var otherElementType = (TypeSymbol?)Visit(symbol.
ElementType
);
782
AreTypesEqual(type.
ElementType
, other.
ElementType
);
1061
var translatedElementType = (TypeSymbol)this.Visit(symbol.
ElementType
);
Emitter\Model\SynthesizedPrivateImplementationDetailsStaticConstructor.cs (1)
55
factory.Array(payloadArrayType.
ElementType
, factory.Binary(BinaryOperatorKind.Addition, factory.SpecialType(SpecialType.System_Int32), factory.MaximumMethodDefIndex(), factory.Literal(1))));
FlowAnalysis\DefiniteAssignment.cs (2)
876
type is not ArrayTypeSymbol { IsSZArray: true,
ElementType
.SpecialType: SpecialType.System_Byte })
2467
MarkFieldsUsed(((ArrayTypeSymbol)type).
ElementType
);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
342
var boundType = _bound.Typeof(arrayType.
ElementType
);
Lowering\LocalRewriter\LocalRewriter_Call.cs (2)
1285
&& !ats.
ElementType
.IsPointerOrFunctionPointer())
1292
arrayEmpty = arrayEmpty.Construct(ImmutableArray.Create(ats.
ElementType
));
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
750
return (type as ArrayTypeSymbol)?.
ElementType
.IsSealed == true;
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
138
Debug.Assert(byteArray.
ElementType
.SpecialType == SpecialType.System_Byte);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (2)
744
type: arrayType.
ElementType
));
898
type: arrayType.
ElementType
));
Lowering\SyntheticBoundNodeFactory.cs (1)
1117
return new BoundArrayAccess(Syntax, array, indices, ((ArrayTypeSymbol)array.Type).
ElementType
);
Symbols\ArrayTypeSymbol.cs (1)
379
current = cur.
ElementType
;
Symbols\Attributes\SourceAttributeData.cs (1)
286
specType = ((ArrayTypeSymbol)parameterType).
ElementType
.SpecialType;
Symbols\Compilation_WellKnownMembers.cs (2)
1054
return array.
ElementType
;
1139
return array.
ElementType
;
Symbols\Metadata\PE\DynamicTypeDecoder.cs (2)
312
TypeSymbol transformedElementType = TransformType(arrayType.
ElementType
);
318
return TypeSymbol.Equals(transformedElementType, arrayType.
ElementType
, TypeCompareKind.ConsiderEverything2) ?
Symbols\Metadata\PE\MetadataDecoder.cs (1)
222
return IsOrClosedOverATypeFromAssemblies(((ArrayTypeSymbol)symbol).
ElementType
, assemblies);
Symbols\Retargeting\RetargetingSymbolTranslator.cs (1)
651
return IsOrClosedOverAnExplicitLocalType(((ArrayTypeSymbol)symbol).
ElementType
);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (1)
1002
static (m, systemType) => m is FieldSymbol { Type: ArrayTypeSymbol {
ElementType
: NamedTypeSymbol elementType } } && elementType.Equals(systemType, TypeCompareKind.ConsiderEverything),
Symbols\SymbolDistinguisher.cs (1)
153
symbol = ((ArrayTypeSymbol)symbol).
ElementType
;
Symbols\TypeSymbolExtensions.cs (2)
255
type = arrayType.
ElementType
;
1447
type = ((ArrayTypeSymbol)type).
ElementType
;
Symbols\TypeUnification.cs (1)
270
return Contains(((ArrayTypeSymbol)type).
ElementType
, typeParam);
Symbols\VarianceSafety.cs (1)
332
return IsVarianceUnsafe(((ArrayTypeSymbol)type).
ElementType
, requireOutputSafety, requireInputSafety, context, locationProvider, locationArg, diagnostics);
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (3)
Emit\EmitMetadataTests.cs (3)
436
Assert.Same(classA, method1Ret.
ElementType
);
438
Assert.Same(classA, method2Ret.
ElementType
);
440
Assert.Same(classA, method3Ret.
ElementType
);
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (1)
Rewriters\LocalDeclarationRewriter.cs (1)
149
var byteType = byteArrayType.
ElementType
;
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.UnitTests (5)
DynamicTests.cs (3)
98
Assert.Equal(TypeKind.Dynamic, ((ArrayTypeSymbol)method.ReturnType).
ElementType
.TypeKind);
220
Assert.Equal(TypeKind.Dynamic, ((ArrayTypeSymbol)method.ReturnType).
ElementType
.TypeKind);
695
Assert.Equal(TypeKind.Dynamic, ((ArrayTypeSymbol)method.ReturnType).
ElementType
.TypeKind);
LocalsTests.cs (1)
1785
returnType = (NamedTypeSymbol)((ArrayTypeSymbol)method.ReturnType).
ElementType
;
TupleTests.cs (1)
476
Assert.True(((ArrayTypeSymbol)returnType).
ElementType
.IsTupleType);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (9)
Semantics\ImplicitlyTypeArraysTests.cs (1)
47
Assert.Equal(typeM, localA.
ElementType
);
Semantics\InheritanceBindingTests.cs (4)
8470
Assert.True(((ArrayTypeSymbol)c2Goo.Parameters[0].Type).
ElementType
.IsNullableType());
8554
Assert.True(((ArrayTypeSymbol)c2Goo.ReturnType).
ElementType
.IsNullableType());
8628
Assert.True(((ArrayTypeSymbol)dGoo.Parameters[0].Type).
ElementType
.IsNullableType());
8697
Assert.True(((ArrayTypeSymbol)dGoo.ReturnType).
ElementType
.IsNullableType());
Semantics\NullableReferenceTypesTests.cs (4)
135219
Assert.True(((ArrayTypeSymbol)c2Goo.Parameters[0].Type).
ElementType
.IsReferenceType);
135307
Assert.True(((ArrayTypeSymbol)c2Goo.ReturnType).
ElementType
.IsReferenceType);
135385
Assert.True(((ArrayTypeSymbol)dGoo.Parameters[0].Type).
ElementType
.IsReferenceType);
135458
Assert.True(((ArrayTypeSymbol)dGoo.ReturnType).
ElementType
.IsReferenceType);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (13)
Symbols\Metadata\MetadataTypeTests.cs (3)
309
Assert.Equal("EventData", type2.
ElementType
.Name);
311
Assert.Equal("Object", type3.
ElementType
.Name);
323
Assert.True(type2.
ElementType
.IsValueType);
Symbols\Metadata\PE\LoadCustomModifiers.cs (1)
90
Assert.Equal("System.Int32", p5Type.
ElementType
.ToTestDisplayString());
Symbols\Metadata\PE\NoPiaInstantiationOfGenericClassAndStruct.cs (1)
490
Assert.Equal(SymbolKind.ErrorType, ((ArrayTypeSymbol)localField.Type).
ElementType
.Kind);
Symbols\MockSymbolTests.cs (2)
31
Assert.Same(elementType, ats1.
ElementType
);
39
Assert.Same(elementType, ats2.
ElementType
);
Symbols\Retargeting\RetargetCustomModifiers.cs (1)
98
Assert.Equal("System.Int32", p5Type.
ElementType
.ToTestDisplayString());
Symbols\Source\BaseClassTests.cs (2)
1342
var carr2 = carr1.
ElementType
as ArrayTypeSymbol;
1343
Assert.Equal(c, carr2.
ElementType
);
Symbols\Source\CustomModifierCopyTests.cs (1)
1988
var comparisonType = isArrayType ? ((ArrayTypeSymbol)paramType).
ElementType
: paramType;
Symbols\Source\ModifierTests.cs (1)
168
Assert.Equal(intType, substitutedArrayType.
ElementType
);
Symbols\TypeTests.cs (1)
1579
Assert.Same(comp.GetSpecialType(SpecialType.System_Single), (memType as ArrayTypeSymbol).
ElementType
.GetNullableUnderlyingType());
Microsoft.CodeAnalysis.CSharp.Test.Utilities (2)
Extensions.cs (1)
482
if (!IsEqual(arySym.
ElementType
, expType.GetElementType()))
FunctionPointerUtilities.cs (1)
342
arrayTypeVerifier(((ArrayTypeSymbol)typeSymbol).
ElementType
);