2 types derived from ArrayTypeSymbol
Microsoft.CodeAnalysis.CSharp (2)
Symbols\ArrayTypeSymbol.cs (2)
494private sealed class SZArray : ArrayTypeSymbol 552private abstract class MDArray : ArrayTypeSymbol
387 references to ArrayTypeSymbol
Microsoft.CodeAnalysis.CSharp (237)
Binder\Binder_Attributes.cs (3)
990((ArrayTypeSymbol)type).ElementType.SpecialType == SpecialType.System_Object) 1046var type = (ArrayTypeSymbol)node.Type;
Binder\Binder_Crefs.cs (1)
557return ContainsNestedTypeOfUnconstructedGenericType(((ArrayTypeSymbol)type).ElementType);
Binder\Binder_Expressions.cs (12)
3246type = ((ArrayTypeSymbol)type.Type).ElementTypeWithAnnotations; 3321var type = (ArrayTypeSymbol)BindArrayType(node.Type, diagnostics, permitDimensions: true, basesBeingResolved: null, disallowRestrictedTypes: true).Type; 3430var arrayType = ArrayTypeSymbol.CreateCSharpArray(Compilation.Assembly, TypeWithAnnotations.Create(bestType), rank); 3555ArrayTypeSymbol type, 3635ArrayTypeSymbol type, 3705ArrayTypeSymbol type, 3804var arrayType = (ArrayTypeSymbol)BindArrayType(arrayTypeSyntax, diagnostics, permitDimensions: true, basesBeingResolved: null, disallowRestrictedTypes: false).Type; 7986var arrayType = (ArrayTypeSymbol)expr.Type;
Binder\Binder_InterpolatedString.cs (2)
865Type: ArrayTypeSymbol { ElementType: NamedTypeSymbol { IsInterpolatedStringHandlerType: true } }, 897interpolatedStringParameter.IsParams ? ((ArrayTypeSymbol)interpolatedStringParameter.Type).ElementType : interpolatedStringParameter.Type,
Binder\Binder_Statements.cs (2)
1277elementType = ((ArrayTypeSymbol)initializerType).ElementType; 1828(InitializerExpressionSyntax)node, (ArrayTypeSymbol)destinationType,
Binder\Binder_Symbols.cs (2)
667var array = ArrayTypeSymbol.CreateCSharpArray(this.Compilation.Assembly, type, rankSpecifier.Rank);
Binder\DecisionDagBuilder.cs (2)
1502while (expressionType is ArrayTypeSymbol array1 && 1503patternType is ArrayTypeSymbol array2 &&
Binder\ForEachLoopBinder.cs (1)
1089((ArrayTypeSymbol)collectionExprType).ElementTypeWithAnnotations;
Binder\Semantics\AccessCheck.cs (1)
152return IsSymbolAccessibleCore(((ArrayTypeSymbol)symbol).ElementType, within, null, out failedThroughTypeCheck, compilation, ref useSiteInfo, basesBeingResolved);
Binder\Semantics\Conversions\ConversionsBase.cs (11)
2343var s = source as ArrayTypeSymbol; 2344var d = destination as ArrayTypeSymbol; 2393private bool HasArrayConversionToInterface(ArrayTypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2573var s = source as ArrayTypeSymbol; 3488var sourceArray = source as ArrayTypeSymbol; 3489var destinationArray = destination as ArrayTypeSymbol;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (11)
1589var arraySource = (ArrayTypeSymbol)source.Type; 1590var arrayTarget = (ArrayTypeSymbol)target.Type; 1892private static TypeWithAnnotations GetMatchingElementType(ArrayTypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1900var arrayTarget = (ArrayTypeSymbol)target; 1945var arraySource = (ArrayTypeSymbol)source; 2346var arrayTarget = (ArrayTypeSymbol)target.Type;
Binder\Semantics\OverloadResolution\OverloadResolution.cs (6)
1651return ((ArrayTypeSymbol)type).ElementType; 2295var arr1 = (ArrayTypeSymbol)t1; 2296var arr2 = (ArrayTypeSymbol)t2; 3247types.Add(parm == parameters.Length - 1 ? ((ArrayTypeSymbol)type.Type).ElementTypeWithAnnotations : type);
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (2)
1308ArrayTypeSymbol arrayType = parameter.Type as ArrayTypeSymbol;
CodeGen\EmitAddress.cs (2)
400if (((ArrayTypeSymbol)arrayAccess.Expression.Type).IsSZArray) 408_builder.EmitArrayElementAddress(_module.Translate((ArrayTypeSymbol)arrayAccess.Expression.Type),
CodeGen\EmitArrayInitializer.cs (7)
44private void EmitArrayInitializers(ArrayTypeSymbol arrayType, BoundArrayInitialization inits) 66private void EmitElementInitializers(ArrayTypeSymbol arrayType, 80private void EmitVectorElementInitializers(ArrayTypeSymbol arrayType, 133private void EmitMultidimensionalElementInitializers(ArrayTypeSymbol arrayType, 167private void EmitAllElementInitializersRecursive(ArrayTypeSymbol arrayType, 463ArrayTypeSymbol? arrayType = null; 468arrayType = (ArrayTypeSymbol)ac.Type;
CodeGen\EmitExpression.cs (10)
985if (((ArrayTypeSymbol)arrayAccess.Expression.Type).IsSZArray) 1072_builder.EmitArrayElementLoad(_module.Translate((ArrayTypeSymbol)arrayAccess.Expression.Type), arrayAccess.Expression.Syntax, _diagnostics.DiagnosticBag); 2151var arrayType = (ArrayTypeSymbol)expression.Type; 2879var arrayType = (ArrayTypeSymbol)array.Type; 2977private void EmitArrayElementStore(ArrayTypeSymbol arrayType, SyntaxNode syntaxNode) 2992private void EmitVectorElementStore(ArrayTypeSymbol arrayType, SyntaxNode syntaxNode) 3705return IsVarianceCast(((ArrayTypeSymbol)to).ElementType, ((ArrayTypeSymbol)from).ElementType);
Compilation\CSharpCompilation.cs (4)
2074var array = (ArrayTypeSymbol)firstType.Type; 2190internal ArrayTypeSymbol CreateArrayTypeSymbol(TypeSymbol elementType, int rank = 1, NullableAnnotation elementNullableAnnotation = NullableAnnotation.Oblivious) 2202return ArrayTypeSymbol.CreateCSharpArray(this.Assembly, TypeWithAnnotations.Create(elementType, elementNullableAnnotation), rank);
Compiler\ClsComplianceChecker.cs (6)
979return IsCompliantType(((ArrayTypeSymbol)type).ElementType, context); 1373ArrayTypeSymbol xArrayType = (ArrayTypeSymbol)xType; 1374ArrayTypeSymbol yArrayType = (ArrayTypeSymbol)yType; 1411private static bool IsArrayOfArrays(ArrayTypeSymbol arrayType)
DocumentationComments\DocumentationCommentIDVisitor.PartVisitor.cs (1)
42public override object VisitArrayType(ArrayTypeSymbol symbol, StringBuilder builder)
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (10)
360public override Symbol? VisitArrayType(ArrayTypeSymbol symbol) 373return ArrayTypeSymbol.CreateSZArray(_otherAssembly, symbol.ElementTypeWithAnnotations.WithTypeAndModifiers(otherElementType, otherModifiers)); 376return ArrayTypeSymbol.CreateMDArray(_otherAssembly, symbol.ElementTypeWithAnnotations.WithTypeAndModifiers(otherElementType, otherModifiers), symbol.Rank, symbol.Sizes, symbol.LowerBounds); 775private bool AreArrayTypesEqual(ArrayTypeSymbol type, ArrayTypeSymbol other) 957return AreArrayTypesEqual((ArrayTypeSymbol)type, (ArrayTypeSymbol)other); 1059public override Symbol VisitArrayType(ArrayTypeSymbol symbol) 1066return ArrayTypeSymbol.CreateSZArray(symbol.BaseTypeNoUseSiteDiagnostics.ContainingAssembly, symbol.ElementTypeWithAnnotations.WithTypeAndModifiers(translatedElementType, translatedModifiers)); 1069return ArrayTypeSymbol.CreateMDArray(symbol.BaseTypeNoUseSiteDiagnostics.ContainingAssembly, symbol.ElementTypeWithAnnotations.WithTypeAndModifiers(translatedElementType, translatedModifiers), symbol.Rank, symbol.Sizes, symbol.LowerBounds);
Emitter\Model\ArrayTypeSymbolAdapter.cs (2)
104internal ArrayTypeSymbolAdapter(ArrayTypeSymbol underlyingArrayTypeSymbol) 110internal ArrayTypeSymbol AdaptedArrayTypeSymbol { get; }
Emitter\Model\AttributeDataAdapter.cs (1)
123var arrayType = ((PEModuleBuilder)context.Module).Translate((ArrayTypeSymbol)argument.TypeInternal);
Emitter\Model\PEModuleBuilder.cs (6)
1129return Translate((ArrayTypeSymbol)typeSymbol); 1502internal Cci.IArrayTypeReference Translate(ArrayTypeSymbol symbol) 1614var byteArrayType = ArrayTypeSymbol.CreateSZArray(byteType.ContainingAssembly, TypeWithAnnotations.Create(byteType)); 1700var boolArray = ArrayTypeSymbol.CreateSZArray(booleanType.ContainingAssembly, TypeWithAnnotations.Create(booleanType));
Emitter\Model\SynthesizedPrivateImplementationDetailsStaticConstructor.cs (2)
50ArrayTypeSymbol payloadArrayType = (ArrayTypeSymbol)payloadRoot.Value.Type.GetInternalSymbol();
FlowAnalysis\DefiniteAssignment.cs (2)
876type is not ArrayTypeSymbol { IsSZArray: true, ElementType.SpecialType: SpecialType.System_Byte }) 2467MarkFieldsUsed(((ArrayTypeSymbol)type).ElementType);
FlowAnalysis\EmptyStructTypeCache.cs (1)
245type = ((ArrayTypeSymbol)type).BaseTypeNoUseSiteDiagnostics;
FlowAnalysis\NullableWalker.cs (6)
4168ArrayTypeSymbol arrayType => arrayType.ElementTypeWithAnnotations, 4256ArrayTypeSymbol arrayType => arrayType.WithElementType(inferredType), 4386var type = ResultType.Type as ArrayTypeSymbol; 7007type = ((ArrayTypeSymbol)type.Type).ElementTypeWithAnnotations; 10077else if (resultType is ArrayTypeSymbol arrayType)
FlowAnalysis\NullableWalker_Patterns.cs (1)
815: ((ArrayTypeSymbol)inputType).ElementTypeWithAnnotations,
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
341var arrayType = (ArrayTypeSymbol)node.Type;
Lowering\DiagnosticsPass_ExpressionTrees.cs (2)
79var arrayType = (ArrayTypeSymbol)node.Type;
Lowering\Instrumentation\CodeCoverageInstrumenter.cs (4)
33private readonly ArrayTypeSymbol _payloadType; 117_payloadType = ArrayTypeSymbol.CreateCSharpArray(methodBodyFactory.Compilation.Assembly, TypeWithAnnotations.Create(payloadElementType)); 252ArrayTypeSymbol modulePayloadType = 253ArrayTypeSymbol.CreateCSharpArray(_methodBodyFactory.Compilation.Assembly, TypeWithAnnotations.Create(_payloadType));
Lowering\LocalRewriter\LocalRewriter.cs (1)
721var elementType = ((ArrayTypeSymbol)node.Expression.Type).ElementTypeWithAnnotations;
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
1284&& paramArrayType is ArrayTypeSymbol ats // could be false if there's a semantic error, e.g. the params parameter type isn't an array
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
750return (type as ArrayTypeSymbol)?.ElementType.IsSealed == true;
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (3)
97var byteArray = ArrayTypeSymbol.CreateSZArray(_compilation.Assembly, TypeWithAnnotations.Create(byteType)); 135private BoundArrayCreation MakeUnderlyingArrayForUtf8Span(SyntaxNode syntax, ArrayTypeSymbol byteArray, IReadOnlyList<byte> bytes, out int length)
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (2)
483ArrayTypeSymbol arrayType = (ArrayTypeSymbol)pinnedTemp.Type;
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (6)
42ArrayTypeSymbol arrayType = (ArrayTypeSymbol)nodeExpressionType; 705ArrayTypeSymbol arrayType = (ArrayTypeSymbol)collectionExpression.Type; 830ArrayTypeSymbol arrayType = (ArrayTypeSymbol)collectionExpression.Type;
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (2)
39var asArrayType = (ArrayTypeSymbol)rewrittenReceiverOpt.Type;
Lowering\SyntheticBoundNodeFactory.cs (4)
318Debug.Assert(!(receiverOpt is { Type: ArrayTypeSymbol { IsSZArray: true } } && 342public ArrayTypeSymbol WellKnownArrayType(WellKnownType elementType) 1104int rank = ((ArrayTypeSymbol)array.Type).Rank; 1117return new BoundArrayAccess(Syntax, array, indices, ((ArrayTypeSymbol)array.Type).ElementType);
Symbols\AbstractTypeMap.cs (5)
106result = SubstituteArrayType((ArrayTypeSymbol)previous); 183private ArrayTypeSymbol SubstituteArrayType(ArrayTypeSymbol t) 212return ArrayTypeSymbol.CreateSZArray( 218return ArrayTypeSymbol.CreateMDArray(
Symbols\AnonymousTypes\AnonymousTypeManager.Templates.cs (2)
208typeArgumentsBuilder.Add(((ArrayTypeSymbol)field.Type).ElementTypeWithAnnotations); 233var replacement = TypeWithAnnotations.Create(((ArrayTypeSymbol)lastParam.Type).WithElementType(original));
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.DelegateTemplateSymbol.cs (1)
131type = TypeWithAnnotations.Create(ArrayTypeSymbol.CreateSZArray(containingType.ContainingAssembly, type));
Symbols\ArrayTypeSymbol.cs (18)
35internal static ArrayTypeSymbol CreateCSharpArray( 48internal static ArrayTypeSymbol CreateMDArray( 64internal static ArrayTypeSymbol CreateMDArray( 74internal static ArrayTypeSymbol CreateSZArray( 81internal static ArrayTypeSymbol CreateSZArray( 89internal static ArrayTypeSymbol CreateSZArray( 96internal ArrayTypeSymbol WithElementType(TypeWithAnnotations elementTypeWithAnnotations) 101protected abstract ArrayTypeSymbol WithElementTypeCore(TypeWithAnnotations elementTypeWithAnnotations); 138internal bool HasSameShapeAs(ArrayTypeSymbol other) 172internal bool HasSameSizesAndLowerBoundsAs(ArrayTypeSymbol other) 342return this.Equals(t2 as ArrayTypeSymbol, comparison); 345private bool Equals(ArrayTypeSymbol? other, TypeCompareKind comparison) 377var cur = (ArrayTypeSymbol)current; 413TypeWithAnnotations elementType = ElementTypeWithAnnotations.MergeEquivalentTypes(((ArrayTypeSymbol)other).ElementTypeWithAnnotations, variance); 508protected override ArrayTypeSymbol WithElementTypeCore(TypeWithAnnotations newElementType) 598protected override ArrayTypeSymbol WithElementTypeCore(TypeWithAnnotations elementTypeWithAnnotations) 631protected override ArrayTypeSymbol WithElementTypeCore(TypeWithAnnotations elementTypeWithAnnotations)
Symbols\AssemblySymbol.cs (1)
730return ArrayTypeSymbol.CreateCSharpArray(this, TypeWithAnnotations.Create(symbol), rank);
Symbols\Attributes\SourceAttributeData.cs (1)
286specType = ((ArrayTypeSymbol)parameterType).ElementType.SpecialType;
Symbols\Compilation_WellKnownMembers.cs (11)
761var boolArray = ArrayTypeSymbol.CreateSZArray(booleanType.ContainingAssembly, TypeWithAnnotations.Create(booleanType)); 778var stringArray = ArrayTypeSymbol.CreateSZArray(stringType.ContainingAssembly, TypeWithAnnotations.Create(stringType)); 921HandleCustomModifiers(((ArrayTypeSymbol)type).ElementTypeWithAnnotations.CustomModifiers.Length, transformFlagsBuilder); 1049ArrayTypeSymbol array = (ArrayTypeSymbol)type; 1134ArrayTypeSymbol array = (ArrayTypeSymbol)type; 1192ArrayTypeSymbol array = (ArrayTypeSymbol)type;
Symbols\Metadata\PE\DynamicTypeDecoder.cs (5)
164return TransformArrayType((ArrayTypeSymbol)type); 302private ArrayTypeSymbol TransformArrayType(ArrayTypeSymbol arrayType) 321ArrayTypeSymbol.CreateSZArray(_containingAssembly, arrayType.ElementTypeWithAnnotations.WithTypeAndModifiers(transformedElementType, arrayType.ElementTypeWithAnnotations.CustomModifiers)) : 322ArrayTypeSymbol.CreateMDArray(_containingAssembly, arrayType.ElementTypeWithAnnotations.WithTypeAndModifiers(transformedElementType, arrayType.ElementTypeWithAnnotations.CustomModifiers), arrayType.Rank, arrayType.Sizes, arrayType.LowerBounds);
Symbols\Metadata\PE\MetadataDecoder.cs (1)
222return IsOrClosedOverATypeFromAssemblies(((ArrayTypeSymbol)symbol).ElementType, assemblies);
Symbols\Metadata\PE\NativeIntegerTypeDecoder.cs (3)
88return TransformArrayType((ArrayTypeSymbol)type); 154private ArrayTypeSymbol? TransformArrayType(ArrayTypeSymbol type)
Symbols\Metadata\PE\SymbolFactory.cs (2)
26return ArrayTypeSymbol.CreateMDArray(moduleSymbol.ContainingAssembly, CreateType(elementType, customModifiers), rank, sizes, lowerBounds); 71return ArrayTypeSymbol.CreateSZArray(moduleSymbol.ContainingAssembly, CreateType(elementType, customModifiers));
Symbols\Metadata\PE\TupleTypeDecoder.cs (3)
197return DecodeArrayType((ArrayTypeSymbol)type); 334private ArrayTypeSymbol DecodeArrayType(ArrayTypeSymbol type)
Symbols\PublicModel\ArrayTypeSymbol.cs (2)
14private readonly Symbols.ArrayTypeSymbol _underlying; 17public ArrayTypeSymbol(Symbols.ArrayTypeSymbol underlying, CodeAnalysis.NullableAnnotation nullableAnnotation)
Symbols\Retargeting\RetargetingSymbolTranslator.cs (6)
651return IsOrClosedOverAnExplicitLocalType(((ArrayTypeSymbol)symbol).ElementType); 695public ArrayTypeSymbol Retarget(ArrayTypeSymbol type) 707return ArrayTypeSymbol.CreateSZArray(this.RetargetingAssembly, newElement); 710return ArrayTypeSymbol.CreateMDArray(this.RetargetingAssembly, newElement, type.Rank, type.Sizes, type.LowerBounds); 1371public override Symbol VisitArrayType(ArrayTypeSymbol symbol, RetargetOptions options)
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\SymbolExtensions.cs (1)
659internal static IArrayTypeSymbol? GetPublicSymbol(this ArrayTypeSymbol? symbol)
Symbols\SymbolVisitor.cs (1)
30public virtual void VisitArrayType(ArrayTypeSymbol symbol)
Symbols\SymbolVisitor`1.cs (1)
30public virtual TResult VisitArrayType(ArrayTypeSymbol symbol)
Symbols\SymbolVisitor`2.cs (2)
100/// Called when visiting an <see cref="ArrayTypeSymbol" />; Override this with specific 106public virtual TResult VisitArrayType(ArrayTypeSymbol symbol, TArgument argument)
Symbols\Synthesized\SynthesizedEmbeddedNativeIntegerAttributeSymbol.cs (1)
33ArrayTypeSymbol.CreateSZArray(
Symbols\Synthesized\SynthesizedEmbeddedNullableAttributeSymbol.cs (1)
37ArrayTypeSymbol.CreateSZArray(
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (1)
34var submissionArrayType = compilation.CreateArrayTypeSymbol(systemObject);
Symbols\Synthesized\SynthesizedSimpleProgramEntryPointSymbol.cs (1)
66ArrayTypeSymbol.CreateCSharpArray(compilation.Assembly,
Symbols\Synthesized\SynthesizedSubmissionConstructor.cs (1)
24var submissionArrayType = compilation.CreateArrayTypeSymbol(compilation.GetSpecialType(SpecialType.System_Object));
Symbols\TypeSymbolExtensions.cs (8)
248var arrayType = (ArrayTypeSymbol)type; 354return type.TypeKind == TypeKind.Array && ((ArrayTypeSymbol)type).IsSZArray; 834next = ((ArrayTypeSymbol)current).ElementTypeWithAnnotations; 1447type = ((ArrayTypeSymbol)type).ElementType; 1838var arrayType = (ArrayTypeSymbol)type; 1928private static bool NormalizeTaskTypesInArray(CSharpCompilation compilation, ref ArrayTypeSymbol arrayType)
Symbols\TypeUnification.cs (5)
118ArrayTypeSymbol at1 = (ArrayTypeSymbol)t1.Type; 119ArrayTypeSymbol at2 = (ArrayTypeSymbol)t2.Type; 270return Contains(((ArrayTypeSymbol)type).ElementType, typeParam);
Symbols\TypeWithAnnotations.cs (1)
629typeWithAnnotations = ((ArrayTypeSymbol)type).ElementTypeWithAnnotations;
Symbols\VarianceSafety.cs (1)
332return IsVarianceUnsafe(((ArrayTypeSymbol)type).ElementType, requireOutputSafety, requireInputSafety, context, locationProvider, locationArg, diagnostics);
Utilities\TypeSymbolExtensions.cs (4)
33var array = (ArrayTypeSymbol)type; 99var array = (ArrayTypeSymbol)type;
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (12)
CodeGen\CodeGenFunctionPointersTests.cs (2)
7064var array = (ArrayTypeSymbol)type;
Emit\EditAndContinue\SymbolMatcherTests.cs (4)
202Assert.Equal(1, ((ArrayTypeSymbol)member1.ReturnType).ElementTypeWithAnnotations.CustomModifiers.Length); 218Assert.Equal(1, ((ArrayTypeSymbol)other.ReturnType).ElementTypeWithAnnotations.CustomModifiers.Length); 395var member = compilation1.CreateArrayTypeSymbol(elementType); 435var member = compilation1.CreateArrayTypeSymbol(elementType);
Emit\EmitMetadataTests.cs (6)
431var method1Ret = (ArrayTypeSymbol)m1.ReturnType; 432var method2Ret = (ArrayTypeSymbol)m2.ReturnType; 433var method3Ret = (ArrayTypeSymbol)m3.ReturnType;
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (12)
Attributes\AttributeTests.cs (12)
5196var typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(classW)); 5201typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(classW), rank: 2); 5206typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(classW)); 5207typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(typeArg), rank: 2); 5213typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(classYOfW), rank: 2); 5214typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(typeArg)); 5221typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(substNestedF), rank: 3); 5222typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(typeArg)); 5223typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(typeArg), rank: 2); 5229typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(substNestedZ)); 5230typeArg = ArrayTypeSymbol.CreateCSharpArray(m.ContainingAssembly, TypeWithAnnotations.Create(typeArg), rank: 2);
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (2)
Rewriters\LocalDeclarationRewriter.cs (2)
138var byteArrayType = ArrayTypeSymbol.CreateSZArray(
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 (38)
Semantics\ImplicitlyTypeArraysTests.cs (2)
43var localA = (ArrayTypeSymbol)locDecl.DeclaredTypeOpt.Display;
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\MultiDimensionalArrayTests.cs (22)
535var szArray = (ArrayTypeSymbol)m2.Parameters.First().Type; 542var mdArray = (ArrayTypeSymbol)m2.Parameters.Last().Type; 1093var array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test1").ReturnType; 1100array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test2").ReturnType; 1107array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test3").ReturnType; 1114array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test4").ReturnType; 1121array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test5").ReturnType; 1128array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test6").ReturnType; 1135array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test7").ReturnType; 1142array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test8").ReturnType; 1149array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test9").ReturnType; 1156array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test10").ReturnType; 1163array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test11").ReturnType; 1170array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test12").ReturnType; 1177array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test13").ReturnType; 1184array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test14").ReturnType; 1191array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test15").ReturnType; 1198array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test16").ReturnType; 1205array = (ArrayTypeSymbol)test.GetMember<MethodSymbol>("Test17").ReturnType;
Semantics\NullableReferenceTypesTests.cs (8)
135219Assert.True(((ArrayTypeSymbol)c2Goo.Parameters[0].Type).ElementType.IsReferenceType); 135220Assert.Equal(NullableAnnotation.Annotated, ((ArrayTypeSymbol)c2Goo.Parameters[0].Type).ElementTypeWithAnnotations.NullableAnnotation); 135307Assert.True(((ArrayTypeSymbol)c2Goo.ReturnType).ElementType.IsReferenceType); 135308Assert.Equal(NullableAnnotation.Annotated, ((ArrayTypeSymbol)c2Goo.ReturnType).ElementTypeWithAnnotations.NullableAnnotation); 135385Assert.True(((ArrayTypeSymbol)dGoo.Parameters[0].Type).ElementType.IsReferenceType); 135386Assert.Equal(NullableAnnotation.Annotated, ((ArrayTypeSymbol)dGoo.Parameters[0].Type).ElementTypeWithAnnotations.NullableAnnotation); 135458Assert.True(((ArrayTypeSymbol)dGoo.ReturnType).ElementType.IsReferenceType); 135459Assert.Equal(NullableAnnotation.Annotated, ((ArrayTypeSymbol)dGoo.ReturnType).ElementTypeWithAnnotations.NullableAnnotation);
Semantics\Utf8StringsLiteralsTests.cs (2)
636var type = (ArrayTypeSymbol)p.Type;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (77)
Symbols\CompilationCreationTests.cs (3)
96var arrayOfc107 = ArrayTypeSymbol.CreateCSharpArray(c1.Assembly, TypeWithAnnotations.Create(c107)); 2357Assert.Equal(2, ((ArrayTypeSymbol)x1.Type).Rank);
Symbols\ExtendedPartialMethodsTests.cs (2)
2639var array = (ArrayTypeSymbol)type;
Symbols\ExtensionMethodTests.cs (2)
2534var arrayType = ArrayTypeSymbol.CreateCSharpArray(compilation.Assembly, TypeWithAnnotations.Create(stringType), 1);
Symbols\Metadata\MetadataTypeTests.cs (4)
293var type2 = (type1.GetMembers("m_eventData").Single() as FieldSymbol).Type as ArrayTypeSymbol; 297var type3 = (member2.Parameters[2] as ParameterSymbol).Type as ArrayTypeSymbol;
Symbols\Metadata\PE\DynamicTransformsTests.cs (38)
76var arrayOfT = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(t)); 80var arrayOfInnerInnerOfInt = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(memberInnerInnerOfInt)); 135var arrayOfDynamic = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(s_dynamicType), 1); 140var arrayOfArrayOfDynamic = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(arrayOfDynamic), 1); 222var complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 233complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 234var complicatedInnerInnerArrayOfArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInnerArray), 1); 240var arrayOfDerivedTypeParam = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(derivedTypeParam), 1); 246complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 252complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 253complicatedInnerInnerArrayOfArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInnerArray), 1); 280var arrayOfDynamic = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(s_dynamicType)); 286var arrayOfDerivedTypeParam = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(derivedTypeParam)); 294var complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner)); 300complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner)); 301var complicatedInnerInnerArrayOfArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInnerArray)); 334var arrayOfDerivedTypeParam = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(unsafeClassTypeParam), 1); 341var arrayOfPointerToInt = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(pointerToInt), 1); 343var arrayOfArrayOfPointerToInt = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(arrayOfPointerToInt), 1); 347var complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 353complicatedInnerInnerArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInner), 1); 354var complicatedInnerInnerArrayOfArray = ArrayTypeSymbol.CreateCSharpArray(_assembly, TypeWithAnnotations.Create(complicatedInnerInnerArray), 1);
Symbols\Metadata\PE\LoadCustomModifiers.cs (4)
88ArrayTypeSymbol p5Type = (ArrayTypeSymbol)p5.Type; 169var arrayPropertyType = (ArrayTypeSymbol)propertyType;
Symbols\Metadata\PE\NoPiaInstantiationOfGenericClassAndStruct.cs (2)
490Assert.Equal(SymbolKind.ErrorType, ((ArrayTypeSymbol)localField.Type).ElementType.Kind); 506Assert.True(localField.Type is ArrayTypeSymbol);
Symbols\MockSymbolTests.cs (6)
28ArrayTypeSymbol ats1 = ArrayTypeSymbol.CreateCSharpArray(compilation.Assembly, TypeWithAnnotations.Create(elementType), rank: 1); 37ArrayTypeSymbol ats2 = ArrayTypeSymbol.CreateCSharpArray(compilation.Assembly, TypeWithAnnotations.Create(elementType), rank: 2); 45ArrayTypeSymbol ats3 = ArrayTypeSymbol.CreateCSharpArray(compilation.Assembly, TypeWithAnnotations.Create(elementType), rank: 3);
Symbols\Retargeting\RetargetCustomModifiers.cs (2)
96ArrayTypeSymbol p5Type = (ArrayTypeSymbol)p5.Type;
Symbols\Source\BaseClassTests.cs (4)
1341var carr1 = garg as ArrayTypeSymbol; 1342var carr2 = carr1.ElementType as ArrayTypeSymbol;
Symbols\Source\CustomModifierCopyTests.cs (4)
331CheckCustomModifier(inReturnType, ((ArrayTypeSymbol)method.ReturnType).ElementTypeWithAnnotations.CustomModifiers); 336CheckCustomModifier(inParameterType, ((ArrayTypeSymbol)method.Parameters.Single().Type).ElementTypeWithAnnotations.CustomModifiers); 349CheckCustomModifier(inType, ((ArrayTypeSymbol)property.Type).ElementTypeWithAnnotations.CustomModifiers); 1988var comparisonType = isArrayType ? ((ArrayTypeSymbol)paramType).ElementType : paramType;
Symbols\Source\ModifierTests.cs (4)
159var arrayType = ArrayTypeSymbol.CreateCSharpArray(comp.Assembly, TypeWithAnnotations.Create(typeParamType, customModifiers: customModifiers)); // This is legal, but we're already manually constructing types. 164var substitutedArrayType = (ArrayTypeSymbol)typeMap.SubstituteType(arrayType).AsTypeSymbolOnly();
Symbols\TypedConstantTests.cs (1)
23private readonly ArrayTypeSymbol _arrayType;
Symbols\TypeTests.cs (1)
1579Assert.Same(comp.GetSpecialType(SpecialType.System_Single), (memType as ArrayTypeSymbol).ElementType.GetNullableUnderlyingType());
Microsoft.CodeAnalysis.CSharp.Test.Utilities (4)
Extensions.cs (2)
481var arySym = (ArrayTypeSymbol)typeSym;
FunctionPointerUtilities.cs (1)
342arrayTypeVerifier(((ArrayTypeSymbol)typeSymbol).ElementType);
UsesIsNullableVisitor.cs (1)
184return UsesIsNullable(((ArrayTypeSymbol)type).ElementTypeWithAnnotations, inProgress);