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