2 types derived from AssemblySymbol
Microsoft.CodeAnalysis.CSharp (2)
Symbols\MissingAssemblySymbol.cs (1)
24internal class MissingAssemblySymbol : AssemblySymbol
Symbols\NonMissingAssemblySymbol.cs (1)
21internal abstract class NonMissingAssemblySymbol : AssemblySymbol
1497 references to AssemblySymbol
Microsoft.CodeAnalysis.CSharp (1336)
Binder\Binder.cs (7)
773AssemblySymbol within, 774ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 782ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 793ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 830ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 839public CompoundUseSiteInfo<AssemblySymbol> GetNewCompoundUseSiteInfo(BindingDiagnosticBag futureDestination) 841return new CompoundUseSiteInfo<AssemblySymbol>(futureDestination, Compilation.Assembly);
Binder\Binder.IdentifierUsedAsValueFinder.cs (2)
199var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 262var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Binder\Binder.ValueChecks.cs (4)
592CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1755CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1804CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1844UseSiteInfo<AssemblySymbol> useSiteInfo = accessor.GetUseSiteInfo();
Binder\Binder.WithQueryLambdaParametersBinder.cs (2)
95CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 105LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Binder_Attributes.cs (6)
114CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics); 208out CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo); 226CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics); 329CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 411protected bool IsAttributeConditionallyOmitted(NamedTypeSymbol attributeType, SyntaxTree? syntaxTree, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 598CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Await.cs (1)
414CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Constraints.cs (1)
451var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, containingSymbol.ContainingAssembly);
Binder\Binder_Conversions.cs (16)
25CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1145out CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 1177in CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 1208in CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 1360CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = addMethodBinder.GetNewCompoundUseSiteInfo(diagnostics); 1449ImmutableArray<MemberResolutionResult<MethodSymbol>> finalApplicableCandidates, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1837ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1861var candidateUseSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 2066CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2170CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2743CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2837CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2844useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 2935RefKind sourceRefKind, RefKind destinationRefKind, bool checkingReturns, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2996var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 3063CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Crefs.cs (2)
331CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 338BindingDiagnosticBag diagnostics, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Binder_Deconstruct.cs (1)
322CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Expressions.cs (62)
414CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1221CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1270CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1482var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1494var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, compilation.Assembly); 1596CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1767var discardedInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1789private void LookupIdentifier(LookupResult lookupResult, SimpleNameSyntax node, bool invoked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1794private void LookupIdentifier(LookupResult lookupResult, string name, int arity, bool invoked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1921var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2008CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2259var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2334var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2400CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2583CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2689CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2704CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2856var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2887var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 4070CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4097CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4896out CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo); 4920in CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 5340CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 5413CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 6257CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 6553internal ImmutableArray<MethodSymbol> FilterInaccessibleConstructors(ImmutableArray<MethodSymbol> constructors, bool allowProtectedConstructorsOfBaseType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 6578private bool IsConstructorAccessible(MethodSymbol constructor, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool allowProtectedConstructorsOfBaseType = false) 6647CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 6701out CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo) && 6720in CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 6804in CompoundUseSiteInfo<AssemblySymbol> overloadResolutionUseSiteInfo, 6823CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 6951CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 7105out CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 7200internal static bool ReportConstructorUseSiteDiagnostics(Location errorLocation, BindingDiagnosticBag diagnostics, bool suppressUnsupportedRequiredMembersError, in CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 7225private ImmutableArray<MethodSymbol> GetAccessibleConstructorsForOverloadResolution(NamedTypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 7231private ImmutableArray<MethodSymbol> GetAccessibleConstructorsForOverloadResolution(NamedTypeSymbol type, bool allowProtectedConstructorsOfBaseType, out ImmutableArray<MethodSymbol> allInstanceConstructors, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 7767CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 7841CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 7862CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 7896CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 7949CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 8004private void LookupInstanceMember(LookupResult lookupResult, TypeSymbol leftType, bool leftIsBaseReference, string rightName, int rightArity, bool invoked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 8412CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 8479CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 8498private void LookupExtensionMethods(LookupResult lookupResult, ExtensionMethodScope scope, string rightName, int arity, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 8761CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 9446CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 9460CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 9501CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 9590CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 9734AssemblySymbol.DynamicType, 9750CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 10242ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 10263ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 10294ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 10311ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 10381ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 10405var sealedDiagnostics = ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty; 10891new ConstraintsHelper.CheckConstraintsArgs(compilation, conversions, includeNullability: false, NoLocation.Singleton, diagnostics: null, template: CompoundUseSiteInfo<AssemblySymbol>.Discarded), 10921UseSiteInfo<AssemblySymbol> info = invoke.GetUseSiteInfo();
Binder\Binder_Invocation.cs (8)
634CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 710CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1622var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1679CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1742CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2253CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2333var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2350CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Lookup.cs (39)
35ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 47internal void LookupExtensionMethods(LookupResult result, string name, int arity, LookupOptions options, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 61private Binder LookupSymbolsWithFallback(LookupResult result, string name, int arity, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved = null, LookupOptions options = LookupOptions.Default) 82LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 116LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 133ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 148private void LookupMembersWithFallback(LookupResult result, NamespaceOrTypeSymbol nsOrType, string name, int arity, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved = null, LookupOptions options = LookupOptions.Default) 164protected void LookupMembersInternal(LookupResult result, NamespaceOrTypeSymbol nsOrType, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 180protected void LookupMembersInType(LookupResult result, TypeSymbol type, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 220private void LookupMembersInErrorType(LookupResult result, ErrorTypeSymbol errorType, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 256LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 407ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 443private static void LookupMembersInNamespace(LookupResult result, NamespaceSymbol ns, string name, int arity, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 460private void LookupExtensionMethodsInSingleBinder(ExtensionMethodScope scope, LookupResult result, string name, int arity, LookupOptions options, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 495ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 522var attributeTypeWithoutSuffixViabilityUseSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 528var attributeTypeWithSuffixViabilityUseSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 668private bool IsSingleViableAttributeType(LookupResult result, out Symbol symbol, ref CompoundUseSiteInfo<AssemblySymbol> attributeTypeViabilityUseSiteInfo) 689var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 694private bool CheckAttributeTypeViability(Symbol symbol, bool diagnose, ref DiagnosticInfo diagInfo, ref CompoundUseSiteInfo<AssemblySymbol> attributeTypeViabilityUseSiteInfo) 710new CompoundUseSiteInfo<AssemblySymbol>(attributeTypeViabilityUseSiteInfo) : 711CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 764LookupOptions options, Binder originalBinder, TypeSymbol accessThroughType, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved) 787ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 803ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 881ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1022ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1036private static ImmutableArray<NamedTypeSymbol> GetBaseInterfaces(NamedTypeSymbol type, ConsList<TypeSymbol> basesBeingResolved, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1125ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1150private void LookupMembersInInterface(LookupResult current, NamedTypeSymbol type, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1168private void LookupMembersInTypeParameter(LookupResult current, TypeParameterSymbol typeParameter, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1187private static bool IsDerivedType(NamedTypeSymbol baseType, NamedTypeSymbol derivedType, ConsList<TypeSymbol> basesBeingResolved, CSharpCompilation compilation, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1224private void MergeHidingLookupResults(LookupResult resultHiding, LookupResult resultHidden, ConsList<TypeSymbol> basesBeingResolved, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1385internal SingleLookupResult CheckViability(Symbol symbol, int arity, LookupOptions options, TypeSymbol accessThroughType, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved = null) 1584var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1667internal bool IsAccessible(Symbol symbol, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, TypeSymbol accessThroughType = null, ConsList<TypeSymbol> basesBeingResolved = null) 1686internal bool IsAccessible(Symbol symbol, TypeSymbol accessThroughType, out bool failedThroughTypeCheck, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved = null) 1698/// Should only be called by <see cref="IsAccessible(Symbol, TypeSymbol, out bool, ref CompoundUseSiteInfo{AssemblySymbol}, ConsList{TypeSymbol})"/>, 1701internal virtual bool IsAccessibleHelper(Symbol symbol, TypeSymbol accessThroughType, out bool failedThroughTypeCheck, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved)
Binder\Binder_Operators.cs (17)
55CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 269CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 744CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 819var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1067CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1180CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1266private bool HasApplicableBooleanOperator(NamedTypeSymbol containingType, string name, TypeSymbol argumentType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out MethodSymbol @operator) 1324CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1417CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2534CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3286CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3823CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4044CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4194CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4215useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 4302CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 4358CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_Patterns.cs (6)
606CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 764CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 806ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1286CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1800CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics); 1828TypeSymbol? lessSpecificCandidate(TypeSymbol bestSoFar, TypeSymbol possiblyLessSpecificCandidate, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Binder_Query.cs (1)
959CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_QueryErrors.cs (5)
43CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 80private bool ImplementsStandardQueryInterface(TypeSymbol instanceType, string name, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 96private static bool HasUniqueInterface(TypeSymbol instanceType, NamedTypeSymbol interfaceType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 102private static bool HasUniqueInterface(TypeSymbol instanceType, NamedTypeSymbol interfaceType, ref bool nonUnique, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 124private bool HasCastToQueryProvider(TypeSymbol instanceType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Binder_Statements.cs (17)
411CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 475CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1366CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1941CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 2045var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2391var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2414var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2422void tryConversion(BoundExpression expr, ref bool reportedError, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2481var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2517var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2671CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3137CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3258CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3300CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 3942var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, constructor.ContainingAssembly); 3980var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, containingType.ContainingAssembly); 3989var constructorUseSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, constructor.ContainingAssembly);
Binder\Binder_Symbols.cs (22)
200var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 364CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 874CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1275CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1446CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1526ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1728private static UseSiteInfo<AssemblySymbol> GetUseSiteInfoForWellKnownMemberOrContainingType(Symbol symbol) 1732UseSiteInfo<AssemblySymbol> info = symbol.GetUseSiteInfo(); 1803internal NamedTypeSymbol GetWellKnownType(WellKnownType type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1824UseSiteInfo<AssemblySymbol> useSiteInfo; 1834internal static Symbol GetWellKnownTypeMember(CSharpCompilation compilation, WellKnownMember member, out UseSiteInfo<AssemblySymbol> useSiteInfo, bool isOptional = false) 1859useSiteInfo = new UseSiteInfo<AssemblySymbol>(diagnosticInfo: null, useSiteInfo.PrimaryDependency, useSiteInfo.SecondaryDependencies); 1867useSiteInfo = new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_MissingPredefinedMember, memberDescriptor.DeclaringTypeMetadataName, memberDescriptor.Name)); 1921AssemblySymbol container = symbol.ContainingAssembly; 2354private static AssemblySymbol GetContainingAssembly(Symbol symbol) 2527var containingAssembly = symbol.ContainingAssembly; 2552AssemblySymbol forwardedToAssembly; 2628protected virtual AssemblySymbol GetForwardedToAssemblyInUsingNamespaces(string metadataName, ref NamespaceOrTypeSymbol qualifierOpt, BindingDiagnosticBag diagnostics, Location location) 2633protected AssemblySymbol GetForwardedToAssembly(string fullName, BindingDiagnosticBag diagnostics, Location location) 2636foreach (var referencedAssembly in 2701protected AssemblySymbol GetForwardedToAssembly(string name, int arity, ref NamespaceOrTypeSymbol qualifierOpt, BindingDiagnosticBag diagnostics, Location location) 2720var result = GetForwardedToAssembly(fullMetadataName, diagnostics, location);
Binder\Binder_TupleOperators.cs (1)
130CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_WithExpression.cs (1)
40CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\Binder_XmlNameAttribute.cs (1)
19internal ImmutableArray<Symbol> BindXmlNameAttribute(XmlNameAttributeSyntax syntax, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\BindingDiagnosticBag.cs (7)
13internal sealed class BindingDiagnosticBag : BindingDiagnosticBag<AssemblySymbol> 15private static readonly ObjectPool<BindingDiagnosticBag> s_poolWithBoth = new ObjectPool<BindingDiagnosticBag>(() => new BindingDiagnosticBag(s_poolWithBoth!, new DiagnosticBag(), new HashSet<AssemblySymbol>())); 17private static readonly ObjectPool<BindingDiagnosticBag> s_poolWithDependenciesOnly = new ObjectPool<BindingDiagnosticBag>(() => new BindingDiagnosticBag(s_poolWithDependenciesOnly!, diagnosticBag: null, new HashSet<AssemblySymbol>())); 18private static readonly ObjectPool<BindingDiagnosticBag> s_poolWithConcurrent = new ObjectPool<BindingDiagnosticBag>(() => new BindingDiagnosticBag(s_poolWithConcurrent!, new DiagnosticBag(), new Roslyn.Utilities.ConcurrentSet<AssemblySymbol>())); 24private BindingDiagnosticBag(DiagnosticBag? diagnosticBag, ICollection<AssemblySymbol>? dependenciesBag) 29private BindingDiagnosticBag(ObjectPool<BindingDiagnosticBag> pool, DiagnosticBag? diagnosticBag, ICollection<AssemblySymbol>? dependenciesBag) 139AssemblySymbol? containingAssembly = ns.ContainingAssembly;
Binder\BuckStopsHereBinder.cs (1)
67internal override bool IsAccessibleHelper(Symbol symbol, TypeSymbol accessThroughType, out bool failedThroughTypeCheck, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved)
Binder\DecisionDagBuilder.cs (4)
374var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 459var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(_diagnostics, _compilation.Assembly); 1300var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(_diagnostics, _compilation.Assembly); 1542ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\ForEachLoopBinder.cs (11)
468CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1257CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1358CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1425CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1528CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1624CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1637useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo); 1712CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1757CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 1788TypeSymbol type, bool isAsync, CSharpCompilation compilation, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1870CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\HostObjectModeBinder.cs (1)
33LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\ImportChain.cs (1)
139AssemblySymbol containingAssembly = @namespace.ContainingAssembly;
Binder\InContainerBinder.cs (2)
57internal override bool IsAccessibleHelper(Symbol symbol, TypeSymbol accessThroughType, out bool failedThroughTypeCheck, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved) 104LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\InMethodBinder.cs (1)
194LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\InSubmissionClassBinder.cs (1)
48LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\LocalScopeBinder.cs (1)
422LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\LockOrUsingBinder.cs (2)
113public readonly ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics; 115public ExpressionAndDiagnostics(BoundExpression expression, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics)
Binder\MethodGroupResolution.cs (4)
24public readonly ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics; 27public MethodGroupResolution(MethodGroup methodGroup, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics) 32public MethodGroupResolution(Symbol otherSymbol, LookupResultKind resultKind, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics) 43ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics)
Binder\NameofBinder.cs (1)
60internal override void LookupSymbolsInSingleBinder(LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\NamespaceOrTypeAndUsingDirective.cs (2)
15public readonly ImmutableArray<AssemblySymbol> Dependencies; 17public NamespaceOrTypeAndUsingDirective(NamespaceOrTypeSymbol namespaceOrType, UsingDirectiveSyntax? usingDirective, ImmutableArray<AssemblySymbol> dependencies)
Binder\Semantics\AccessCheck.cs (22)
26AssemblySymbol within, 27ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 40ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 57ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 139ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 145Debug.Assert(within is NamedTypeSymbol || within is AssemblySymbol); 223private static bool IsNamedTypeAccessible(NamedTypeSymbol type, Symbol within, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved = null) 225Debug.Assert(within is NamedTypeSymbol || within is AssemblySymbol); 257AssemblySymbol assembly, 261Debug.Assert(within is NamedTypeSymbol || within is AssemblySymbol); 282var withinAssembly = (object)withinType != null ? withinType.ContainingAssembly : (AssemblySymbol)within; 304ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 307Debug.Assert(within is NamedTypeSymbol || within is AssemblySymbol); 348ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 355var withinAssembly = (object)withinType != null ? withinType.ContainingAssembly : (AssemblySymbol)within; 421ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 496Debug.Assert(within is NamedTypeSymbol || within is AssemblySymbol); 547ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 675internal static bool HasInternalAccessTo(this AssemblySymbol fromAssembly, AssemblySymbol toAssembly)
Binder\Semantics\BestTypeInferrer.cs (4)
54ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 121ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 180ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 263ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Conversions\Conversions.cs (10)
44public override Conversion GetMethodGroupDelegateConversion(BoundMethodGroup source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 113public override Conversion GetMethodGroupFunctionPointerConversion(BoundMethodGroup source, FunctionPointerTypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 129protected override Conversion GetInterpolatedStringConversion(BoundExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 160ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 218Conversion convertElement(BoundNode element, TypeSymbol elementType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 231ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 249private static MethodGroupResolution ResolveDelegateOrFunctionPointerMethodGroup(Binder binder, BoundMethodGroup source, MethodSymbol delegateInvokeMethodOpt, bool isFunctionPointer, in CallingConventionInfo callingConventionInfo, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 297CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics); 376public Conversion MethodGroupConversion(SyntaxNode syntax, MethodGroup methodGroup, NamedTypeSymbol delegateType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 484public override Conversion GetStackAllocConversion(BoundStackAllocArrayCreation sourceExpression, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Conversions\ConversionsBase.cs (103)
22protected readonly AssemblySymbol corLibrary; 33protected ConversionsBase(AssemblySymbol corLibrary, int currentRecursionDepth, bool includeNullability, ConversionsBase otherNullabilityOpt) 67public abstract Conversion GetMethodGroupDelegateConversion(BoundMethodGroup source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 69public abstract Conversion GetMethodGroupFunctionPointerConversion(BoundMethodGroup source, FunctionPointerTypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 71public abstract Conversion GetStackAllocConversion(BoundStackAllocArrayCreation sourceExpression, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 75protected abstract Conversion GetInterpolatedStringConversion(BoundExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 78protected abstract Conversion GetCollectionExpressionConversion(BoundUnconvertedCollectionExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 85internal AssemblySymbol CorLibrary { get { return corLibrary; } } 98public Conversion ClassifyImplicitConversionFromExpression(BoundExpression sourceExpression, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 169public Conversion ClassifyImplicitConversionFromType(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 204public Conversion ClassifyImplicitConversionFromTypeWhenNeitherOrBothFunctionTypes(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 234public Conversion ClassifyConversionFromExpressionType(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 283public Conversion ClassifyConversionFromExpression(BoundExpression sourceExpression, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast = false) 317public Conversion ClassifyConversionFromType(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast = false) 375private Conversion ClassifyConversionFromExpressionForCast(BoundExpression source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 429private Conversion ClassifyConversionFromTypeForCast(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 499public Conversion ClassifyBuiltInConversion(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 529public Conversion ClassifyStandardConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 541public Conversion ClassifyStandardConversion(BoundExpression sourceExpression, TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 605private Conversion ClassifyStandardImplicitConversion(BoundExpression sourceExpression, TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 695private Conversion ClassifyStandardImplicitConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 701Conversion classifyConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 763private Conversion ClassifyImplicitBuiltInConversionSlow(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 782private Conversion GetImplicitUserDefinedConversion(BoundExpression sourceExpression, TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 788private Conversion GetImplicitUserDefinedConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 793private Conversion ClassifyExplicitBuiltInOnlyConversion(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 872private Conversion GetExplicitUserDefinedConversion(BoundExpression sourceExpression, TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 878private Conversion GetExplicitUserDefinedConversion(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 883private Conversion DeriveStandardExplicitFromOppositeStandardImplicitConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 950public bool IsBaseInterface(TypeSymbol baseType, TypeSymbol derivedType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 985public bool IsBaseClass(TypeSymbol derivedType, TypeSymbol baseType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1029private Conversion ClassifyImplicitBuiltInConversionFromExpression(BoundExpression sourceExpression, TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1159private Conversion GetImplicitCollectionExpressionConversion(BoundUnconvertedCollectionExpression collectionExpression, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1184private Conversion GetSwitchExpressionConversion(BoundExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1213private Conversion GetConditionalExpressionConversion(BoundExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1293private Conversion ClassifyImplicitTupleLiteralConversion(BoundTupleLiteral source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1319private Conversion ClassifyExplicitTupleLiteralConversion(BoundTupleLiteral source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 1401private Conversion ClassifyExplicitOnlyConversionFromExpression(BoundExpression sourceExpression, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 1619internal bool IsAssignableFromMulticastDelegate(TypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1721internal Conversion ClassifyImplicitUserDefinedConversionForV6SwitchGoverningType(TypeSymbol sourceType, out TypeSymbol switchGoverningType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1753internal Conversion GetCallerLineNumberConversion(TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1778internal bool HasCallerLineNumberConversion(TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1783internal bool HasCallerInfoStringConversion(TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1894var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1912public Conversion ConvertExtensionMethodThisArg(TypeSymbol parameterType, TypeSymbol thisType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool isMethodGroupConversion) 1922public Conversion ClassifyImplicitExtensionMethodThisArgConversion(BoundExpression sourceExpressionOpt, TypeSymbol sourceType, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool isMethodGroupConversion) 1961(ConversionsBase conversions, BoundExpression s, TypeWithAnnotations d, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> u, bool forCast) => 1978(ConversionsBase conversions, TypeWithAnnotations s, TypeWithAnnotations d, bool _, ref CompoundUseSiteInfo<AssemblySymbol> u, bool _) => 2238private Conversion ClassifyImplicitNullableConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2281private delegate Conversion ClassifyConversionFromExpressionDelegate(ConversionsBase conversions, BoundExpression sourceExpression, TypeWithAnnotations destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast); 2282private delegate Conversion ClassifyConversionFromTypeDelegate(ConversionsBase conversions, TypeWithAnnotations source, TypeWithAnnotations destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast); 2284private Conversion GetImplicitTupleLiteralConversion(BoundTupleLiteral source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2296(ConversionsBase conversions, BoundExpression s, TypeWithAnnotations d, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> u, bool forCast) 2302private Conversion GetExplicitTupleLiteralConversion(BoundTupleLiteral source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 2314(ConversionsBase conversions, BoundExpression s, TypeWithAnnotations d, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> u, bool forCast) => 2323ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 2360private Conversion ClassifyImplicitTupleConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2367(ConversionsBase conversions, TypeWithAnnotations s, TypeWithAnnotations d, bool _, ref CompoundUseSiteInfo<AssemblySymbol> u, bool _) => 2379private Conversion ClassifyExplicitTupleConversion(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 2386(ConversionsBase conversions, TypeWithAnnotations s, TypeWithAnnotations d, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> u, bool forCast) => 2401ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 2433private Conversion ClassifyExplicitNullableConversion(TypeSymbol source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast) 2488private bool HasCovariantArrayConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2510public bool HasIdentityOrImplicitReferenceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2542private bool HasArrayConversionToInterface(ArrayTypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2603private bool HasImplicitReferenceConversion(TypeWithAnnotations source, TypeWithAnnotations destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2623internal bool HasImplicitReferenceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2686private bool HasImplicitConversionToInterface(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2720private bool HasImplicitConversionFromArray(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2761private bool HasImplicitConversionFromDelegate(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2797private bool HasImplicitFunctionTypeConversion(FunctionTypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2808internal bool IsValidFunctionTypeConversionTarget(TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2830private bool HasImplicitFunctionTypeToFunctionTypeConversion(FunctionTypeSymbol sourceType, FunctionTypeSymbol destinationType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2851public bool HasImplicitTypeParameterConversion(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2873private bool HasImplicitReferenceTypeParameterConversion(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2916private bool HasImplicitEffectiveBaseConversion(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2940private bool HasImplicitEffectiveInterfaceSetConversion(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2945private bool HasVarianceCompatibleInterfaceInEffectiveInterfaceSet(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2965private bool HasAnyBaseInterfaceConversion(TypeSymbol derivedType, TypeSymbol baseType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2970private bool ImplementsVarianceCompatibleInterface(TypeSymbol derivedType, TypeSymbol baseType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2996internal bool ImplementsVarianceCompatibleInterface(NamedTypeSymbol derivedType, TypeSymbol baseType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3001internal bool HasImplicitConversionToOrImplementsVarianceCompatibleInterface(TypeSymbol typeToCheck, NamedTypeSymbol targetInterfaceType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool needSupportForRefStructInterfaces) 3021private bool IsRefLikeOrAllowsRefLikeTypeImplementingVarianceCompatibleInterface(TypeSymbol typeToCheck, NamedTypeSymbol targetInterfaceType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3035internal bool HasImplicitConversionToOrImplementsVarianceCompatibleInterface(BoundExpression expressionToCheck, NamedTypeSymbol targetInterfaceType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool needSupportForRefStructInterfaces) 3069private bool HasInterfaceVarianceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3088private bool HasDelegateVarianceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3107private bool HasVariantConversion(NamedTypeSymbol source, NamedTypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3157private bool HasVariantConversionNoCycleCheck(NamedTypeSymbol source, NamedTypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3250private bool HasImplicitBoxingTypeParameterConversion(TypeParameterSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3304public bool HasBoxingConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3376internal bool HasImplicitPointerConversion(TypeSymbol? source, TypeSymbol? destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3415bool hasConversion(RefKind refKind, TypeWithAnnotations sourceType, TypeWithAnnotations destinationType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3433private bool HasIdentityOrReferenceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3456private bool HasExplicitReferenceConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3530private bool HasExplicitReferenceTypeParameterConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3582private bool HasUnboxingTypeParameterConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3633private bool HasExplicitDelegateConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3722private bool HasExplicitArrayConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3814private bool HasUnboxingConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3953private bool HasImplicitSpanConversion(TypeSymbol? source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4000bool hasCovariantConversion(TypeWithAnnotations source, TypeWithAnnotations destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4016private bool HasExplicitSpanConversion(TypeSymbol? source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4041var discarded = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Binder\Semantics\Conversions\TypeConversions.cs (7)
15public TypeConversions(AssemblySymbol corLibrary, bool includeNullability = false) 20private TypeConversions(AssemblySymbol corLibrary, int currentRecursionDepth, bool includeNullability, TypeConversions otherNullabilityOpt) 36public override Conversion GetMethodGroupDelegateConversion(BoundMethodGroup source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 42public override Conversion GetMethodGroupFunctionPointerConversion(BoundMethodGroup source, FunctionPointerTypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 48public override Conversion GetStackAllocConversion(BoundStackAllocArrayCreation sourceExpression, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 54protected override Conversion GetInterpolatedStringConversion(BoundExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 60protected override Conversion GetCollectionExpressionConversion(BoundUnconvertedCollectionExpression source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Conversions\UserDefinedConversions.cs (2)
17public static void AddTypesParticipatingInUserDefinedConversion(ArrayBuilder<(NamedTypeSymbol ParticipatingType, TypeParameterSymbol? ConstrainedToTypeOpt)> result, TypeSymbol type, bool includeBaseTypes, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 114static void addFromClassOrStruct(ArrayBuilder<(NamedTypeSymbol ParticipatingType, TypeParameterSymbol? ConstrainedToTypeOpt)> result, bool excludeExisting, TypeSymbol type, bool includeBaseTypes, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Conversions\UserDefinedExplicitConversions.cs (11)
25ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 74private static void ComputeUserDefinedExplicitConversionTypeSet(TypeSymbol source, TypeSymbol target, ArrayBuilder<(NamedTypeSymbol ParticipatingType, TypeParameterSymbol ConstrainedToTypeOpt)> d, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 92ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 134ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 150ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 369ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 408CompoundUseSiteInfo<AssemblySymbol> inLambdaUseSiteInfo = useSiteInfo; 426ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 462CompoundUseSiteInfo<AssemblySymbol> inLambdaUseSiteInfo = useSiteInfo; 475private Conversion EncompassingExplicitConversion(BoundExpression expr, TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 498private Conversion EncompassingExplicitConversion(TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (17)
29ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 118private static void ComputeUserDefinedImplicitConversionTypeSet(TypeSymbol s, TypeSymbol t, ArrayBuilder<(NamedTypeSymbol ParticipatingType, TypeParameterSymbol ConstrainedToTypeOpt)> d, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 148ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 286ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 360private TypeSymbol MostSpecificSourceTypeForImplicitUserDefinedConversion(ImmutableArray<UserDefinedConversionAnalysis> u, TypeSymbol source, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 376private TypeSymbol MostSpecificTargetTypeForImplicitUserDefinedConversion(ImmutableArray<UserDefinedConversionAnalysis> u, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 570private bool IsEncompassedBy(BoundExpression aExpr, TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 584private bool IsEncompassedBy(TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 589private Conversion EncompassingImplicitConversion(BoundExpression aExpr, TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 604private Conversion EncompassingImplicitConversion(TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 687ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 696ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 722CompoundUseSiteInfo<AssemblySymbol> inLambdaUseSiteInfo = useSiteInfo; 749ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 758ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 761CompoundUseSiteInfo<AssemblySymbol> inLambdaUseSiteInfo = useSiteInfo; 889protected UserDefinedConversionResult AnalyzeImplicitUserDefinedConversionForV6SwitchGoverningType(TypeSymbol source, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (13)
20public void BinaryOperatorOverloadResolution(BinaryOperatorKind kind, bool isChecked, BoundExpression left, BoundExpression right, BinaryOperatorOverloadResolutionResult result, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 54ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 211BoundExpression left, BoundExpression right, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 324ArrayBuilder<BinaryOperatorSignature> operators, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 706private void GetAllBuiltInOperators(BinaryOperatorKind kind, bool isChecked, BoundExpression left, BoundExpression right, ArrayBuilder<BinaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 763static bool useOnlyReferenceEquality(Conversions conversions, BoundExpression left, BoundExpression right, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 777Conversion getOperandConversionForAllowByRefLikeNullCheck(bool isChecked, BoundExpression operand, TypeSymbol objectType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 795ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 858ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1062ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1129ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1179private BetterResult BetterOperator(BinaryOperatorSignature op1, BinaryOperatorSignature op2, BoundExpression left, BoundExpression right, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1315private BetterResult MoreSpecificOperator(BinaryOperatorSignature op1, BinaryOperatorSignature op2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (7)
23public void UnaryOperatorOverloadResolution(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, UnaryOperatorOverloadResolutionResult result, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 67ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 133ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 183private BetterResult BetterOperator(UnaryOperatorSignature op1, UnaryOperatorSignature op2, BoundExpression operand, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 241private void GetAllBuiltInOperators(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, ArrayBuilder<UnaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 272private bool CandidateOperators(bool isChecked, ArrayBuilder<UnaryOperatorSignature> operators, BoundExpression operand, ArrayBuilder<UnaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 347private bool GetUserDefinedOperators(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, ArrayBuilder<UnaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (59)
274ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 555private MethodTypeInferenceResult InferTypeArgs(Binder binder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 573private void InferTypeArgsFirstPhase(Binder binder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 594private void MakeExplicitParameterTypeInferences(Binder binder, BoundExpression argument, TypeWithAnnotations target, ExactOrBoundsKind kind, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 640ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 675ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 693private bool MakeExplicitParameterTypeInferences(Binder binder, BoundTupleLiteral argument, TypeWithAnnotations target, ExactOrBoundsKind kind, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 737private bool InferTypeArgsSecondPhase(Binder binder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 787private InferenceResult DoSecondPhase(Binder binder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 835private void MakeOutputTypeInferences(Binder binder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 849private void MakeOutputTypeInferences(Binder binder, BoundExpression argument, TypeWithAnnotations formalType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 872private void MakeOutputTypeInferences(Binder binder, BoundUnconvertedCollectionExpression argument, TypeWithAnnotations formalType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 893private void MakeOutputTypeInferences(Binder binder, BoundTupleLiteral argument, TypeWithAnnotations formalType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 923private InferenceResult FixNondependentParameters(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 933private InferenceResult FixDependentParameters(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 945ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1341private void OutputTypeInference(Binder binder, BoundExpression expression, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1374private bool InferredReturnTypeInference(BoundExpression source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1410private bool MethodGroupReturnTypeInference(Binder binder, BoundExpression source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1481ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1517private void ExplicitParameterTypeInference(BoundExpression source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1572private void ExplicitReturnTypeInference(BoundExpression source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1608private void ExactInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1677private bool ExactArrayInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1709private bool ExactSpanInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1756private void ExactOrBoundsInference(ExactOrBoundsKind kind, TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1772private bool ExactOrBoundsNullableInference(ExactOrBoundsKind kind, TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1796private bool ExactNullableInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1801private bool LowerBoundTupleInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1828private bool ExactConstructedInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1858private bool ExactPointerInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1912private void ExactTypeArgumentInference(NamedTypeSymbol source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1939private void LowerBoundInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2048private static TypeWithAnnotations GetMatchingElementType(ArrayTypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2083private bool LowerBoundArrayInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2121private bool LowerBoundSpanInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2159private bool LowerBoundNullableInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2164private bool LowerBoundConstructedInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2228private bool LowerBoundClassInference(TypeSymbol source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2273private bool LowerBoundInterfaceInference(TypeSymbol source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2345private void LowerBoundTypeArgumentInference(NamedTypeSymbol source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2397private bool LowerBoundFunctionPointerTypeInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2448private void UpperBoundInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2523private bool UpperBoundArrayInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2560private bool UpperBoundNullableInference(TypeWithAnnotations source, TypeWithAnnotations target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2565private bool UpperBoundConstructedInference(TypeWithAnnotations sourceWithAnnotations, TypeWithAnnotations targetWithAnnotations, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2625private bool UpperBoundClassInference(NamedTypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2654private bool UpperBoundInterfaceInference(NamedTypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2695private void UpperBoundTypeArgumentInference(NamedTypeSymbol source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2747private bool UpperBoundFunctionPointerTypeInference(TypeSymbol source, TypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2797private bool Fix(int iParam, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2817var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2837ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3009private static bool ImplicitConversionExists(TypeWithAnnotations sourceWithAnnotations, TypeWithAnnotations destinationWithAnnotations, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConversionsBase conversions) 3033private TypeWithAnnotations InferReturnType(BoundExpression source, NamedTypeSymbol target, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3178ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3193ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 3231private bool InferTypeArgumentsFromFirstArgument(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3354ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (51)
101public void ObjectCreationOverloadResolution(ImmutableArray<MethodSymbol> constructors, AnalyzedArguments arguments, OverloadResolutionResult<MethodSymbol> result, bool dynamicResolution, bool isEarlyAttributeBinding, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 142ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 170ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 190ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 236var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 356ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 436ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 451RemoveConstraintViolations(results, template: new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo)); 559ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 638private void RemoveConstraintViolations<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, CompoundUseSiteInfo<AssemblySymbol> template) where TMember : Symbol 794private bool FailsConstraintChecks(MethodSymbol method, out ArrayBuilder<TypeParameterDiagnosticInfo> constraintFailureDiagnosticsOpt, CompoundUseSiteInfo<AssemblySymbol> template) 838ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 920AnalyzedArguments arguments, bool completeResults, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 958ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1002ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1053ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1372ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1401ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1425private static bool MemberGroupHidesByName<TMember>(ArrayBuilder<TMember> members, TMember member, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1459private void RemoveInaccessibleTypeArguments<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1472private bool TypeArgumentsAccessible(ImmutableArray<TypeSymbol> typeArguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1481private static void RemoveLessDerivedMembers<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1604private static bool IsLessDerivedThanAny<TMember>(int index, TypeSymbol type, ArrayBuilder<MemberResolutionResult<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1729ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1765private static void ReportUseSiteInfo<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1774private int GetTheBestCandidateIndex<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1922private void RemoveWorseMembers<TMember>(ArrayBuilder<MemberResolutionResult<TMember>> results, AnalyzedArguments arguments, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2082ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2122ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2698private static BetterResult MoreSpecificType(ref TemporaryArray<TypeSymbol> t1, ref TemporaryArray<TypeSymbol> t2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2730private static BetterResult MoreSpecificType(TypeSymbol t1, TypeSymbol t2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2818private BetterResult BetterConversionFromExpression(BoundExpression node, TypeSymbol t1, TypeSymbol t2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 2841ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 2888private BetterResult BetterConversionFromExpression(BoundExpression node, TypeSymbol t1, Conversion conv1, TypeSymbol t2, Conversion conv2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool okToDowngradeToNeither) 3012ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3046ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3153ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3182bool hasImplicitConversion(TypeSymbol source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => 3186private BetterResult BetterParamsCollectionType(TypeSymbol t1, TypeSymbol t2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3226private bool ExpressionMatchExactly(BoundExpression node, TypeSymbol t, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3342private bool ExpressionMatchExactly(BoundTupleLiteral tupleSource, TypeSymbol targetType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 3415ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 3433ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 3445ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 3608private bool CanDowngradeConversionFromLambdaToNeither(BetterResult currentResult, UnboundLambda lambda, TypeSymbol type1, TypeSymbol type2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool fromTypeAnalysis) 4029ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4110ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4178ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4311ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4372ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 4565ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo,
Binder\Semantics\SemanticFacts.cs (3)
38var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 51AssemblySymbol within) 63var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Binder\SwitchBinder.cs (5)
26private ImmutableArray<AssemblySymbol> _switchGoverningDependencies; 50protected ReadOnlyBindingDiagnostic<AssemblySymbol> SwitchGoverningDiagnostics 55return new ReadOnlyBindingDiagnostic<AssemblySymbol>(_switchGoverningDiagnostics, _switchGoverningDependencies); 256CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics); 411CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\SwitchExpressionBinder.cs (1)
153CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo(diagnostics);
Binder\UsingStatementBinder.cs (1)
272CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = originalBinder.GetNewCompoundUseSiteInfo(diagnostics);
Binder\WithClassTypeParametersBinder.cs (1)
30internal override bool IsAccessibleHelper(Symbol symbol, TypeSymbol accessThroughType, out bool failedThroughTypeCheck, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, ConsList<TypeSymbol> basesBeingResolved)
Binder\WithExternAliasesBinder.cs (1)
33LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithExternAndUsingAliasesBinder.cs (1)
37LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithLambdaParametersBinder.cs (1)
87LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithParametersBinder.cs (1)
46LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithPrimaryConstructorParametersBinder.cs (1)
64LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithTypeParametersBinder.cs (1)
39LookupResult result, string name, int arity, ConsList<TypeSymbol> basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\WithUsingNamespacesAndTypesBinder.cs (3)
51protected override AssemblySymbol? GetForwardedToAssemblyInUsingNamespaces(string name, ref NamespaceOrTypeSymbol qualifierOpt, BindingDiagnosticBag diagnostics, Location location) 56var result = GetForwardedToAssembly(fullName, diagnostics, location); 131LookupResult result, string name, int arity, ConsList<TypeSymbol>? basesBeingResolved, LookupOptions options, Binder originalBinder, bool diagnose, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
BoundTree\BoundExpression.cs (4)
670public ReadOnlyBindingDiagnostic<AssemblySymbol> ValueDiagnostics { get; } 672public ReadOnlyBindingDiagnostic<AssemblySymbol> TypeDiagnostics { get; } 674public BoundTypeOrValueData(Symbol valueSymbol, BoundExpression valueExpression, ReadOnlyBindingDiagnostic<AssemblySymbol> valueDiagnostics, BoundExpression typeExpression, ReadOnlyBindingDiagnostic<AssemblySymbol> typeDiagnostics)
BoundTree\BoundExpressionExtensions.cs (1)
135public static NamedTypeSymbol? GetInferredDelegateType(this BoundExpression expr, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
BoundTree\UnboundLambda.cs (14)
47internal readonly ImmutableArray<AssemblySymbol> Dependencies; 57ImmutableArray<AssemblySymbol> dependencies) 82public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? delegateType, InferredLambdaReturnType inferredReturnType) 106public TypeWithAnnotations GetInferredReturnType(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool inferredFromFunctionType) 117public TypeWithAnnotations GetInferredReturnType(ConversionsBase? conversions, NullableWalker.VariableState? nullableState, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool inferredFromFunctionType) 226var useSiteInfo = withDependencies ? new CompoundUseSiteInfo<AssemblySymbol>(binder.Compilation.Assembly) : CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 239useSiteInfo.AccumulatesDependencies ? useSiteInfo.Dependencies.AsImmutableOrEmpty() : ImmutableArray<AssemblySymbol>.Empty); 249ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 468public TypeWithAnnotations InferReturnType(ConversionsBase conversions, NamedTypeSymbol delegateType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool inferredFromFunctionType) 950ImmutableArray<AssemblySymbol>.Empty); 1235ImmutableArray<AssemblySymbol>.Empty)) 1316foreach (ReadOnlyBindingDiagnostic<AssemblySymbol> bag in allBags) 1339foreach (ReadOnlyBindingDiagnostic<AssemblySymbol> bag in allBags)
CodeGen\Optimizer.cs (1)
2416internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue)
Compilation\BuiltInOperators.cs (1)
855internal static bool IsValidObjectEquality(Conversions Conversions, TypeSymbol leftType, bool leftIsNull, bool leftIsDefault, TypeSymbol rightType, bool rightIsNull, bool rightIsDefault, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Compilation\CSharpCompilation.cs (26)
70private ConcurrentDictionary<ImportInfo, ImmutableArray<AssemblySymbol>>? _lazyImportInfos; 75private ImmutableArray<AssemblySymbol> _lazyClsComplianceDependencies; 1182/// Gets the <see cref="AssemblySymbol"/> or <see cref="ModuleSymbol"/> for a metadata reference used to create this compilation. 1184/// <returns><see cref="AssemblySymbol"/> or <see cref="ModuleSymbol"/> corresponding to the given reference or null if there is none.</returns> 1324internal void GetUnaliasedReferencedAssemblies(ArrayBuilder<AssemblySymbol> assemblies) 1359internal MetadataReference? GetMetadataReference(AssemblySymbol? assemblySymbol) 1384internal new AssemblySymbol Assembly 1836return AssemblySymbol.DynamicType; 1898ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics; 1908new ReadOnlyBindingDiagnostic<AssemblySymbol>( 1919private MethodSymbol? FindEntryPoint(MethodSymbol? simpleProgramEntryPointSymbol, CancellationToken cancellationToken, out ReadOnlyBindingDiagnostic<AssemblySymbol> sealedDiagnostics) 2262public readonly ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics; 2264public static readonly EntryPoint None = new EntryPoint(null, ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty); 2266public EntryPoint(MethodSymbol? methodSymbol, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics) 2312var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2404var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2407AccessCheck.IsSymbolAccessible(symbol0, (AssemblySymbol)within0, ref discardedUseSiteInfo) : 2654ImmutableArray<AssemblySymbol> dependencies = pair.Value; 2760internal void RecordImportDependencies(UsingDirectiveSyntax syntax, ImmutableArray<AssemblySymbol> dependencies) 3199private ReadOnlyBindingDiagnostic<AssemblySymbol> GetSourceDeclarationDiagnostics(SyntaxTree? syntaxTree = null, TextSpan? filterSpanWithinTree = null, Func<IEnumerable<Diagnostic>, SyntaxTree, TextSpan?, IEnumerable<Diagnostic>>? locationFilterOpt = null, Predicate<Symbol>? symbolFilter = null, CancellationToken cancellationToken = default) 3239ReadOnlyBindingDiagnostic<AssemblySymbol> clsDiagnostics = GetClsComplianceDiagnostics(syntaxTree, filterSpanWithinTree, cancellationToken); 3240return new ReadOnlyBindingDiagnostic<AssemblySymbol>(result.AsImmutable().Concat(clsDiagnostics.Diagnostics), clsDiagnostics.Dependencies); 3244return new ReadOnlyBindingDiagnostic<AssemblySymbol>(result.AsImmutable(), ImmutableArray<AssemblySymbol>.Empty); 3248private ReadOnlyBindingDiagnostic<AssemblySymbol> GetClsComplianceDiagnostics(SyntaxTree? syntaxTree, TextSpan? filterSpanWithinTree, CancellationToken cancellationToken) 3268return new ReadOnlyBindingDiagnostic<AssemblySymbol>(_lazyClsComplianceDiagnostics, _lazyClsComplianceDependencies);
Compilation\CSharpCompilation.UsingsFromOptionsAndDiagnostics.cs (1)
136var corLibrary = compilation.SourceAssembly.CorLibrary;
Compilation\CSharpSemanticModel.cs (10)
36/// table, (that is, from an <see cref="AssemblySymbol"/> of the <see cref="Compilation"/>), 1662var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1735var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1825var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2023var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2209var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2858var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2910var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 4041var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 4638var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Compilation\MemberSemanticModel.cs (2)
481var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 505var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Compilation\SyntaxTreeSemanticModel.cs (1)
254var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Compiler\ClsComplianceChecker.cs (2)
44Debug.Assert(diagnostics.DependenciesBag is null || diagnostics.DependenciesBag is ConcurrentSet<AssemblySymbol>); 89public override void VisitAssembly(AssemblySymbol symbol)
Compiler\DocumentationCommentCompiler.cs (1)
1160CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics);
Compiler\MethodCompiler.cs (2)
93Debug.Assert(diagnostics.DependenciesBag == null || diagnostics.DependenciesBag is ConcurrentSet<AssemblySymbol>); 1116actualDiagnostics = new ReadOnlyBindingDiagnostic<AssemblySymbol>(sourceMethod.SetDiagnostics(actualDiagnostics.Diagnostics, out diagsWritten), actualDiagnostics.Dependencies);
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (10)
95private readonly AssemblySymbol _otherAssembly; 118AssemblySymbol otherAssembly, 181var otherAssembly = (AssemblySymbol?)Visit(module.ContainingAssembly); 208public override Symbol? VisitAssembly(AssemblySymbol assembly) 225foreach (var otherReferencedAssembly in _otherAssembly.Modules[0].ReferencedAssemblySymbols) 236private static bool IdentityEqualIgnoringVersionWildcard(AssemblySymbol left, AssemblySymbol right) 281var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 882var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Emitter\Model\AssemblyReference.cs (2)
20private readonly AssemblySymbol _targetAssembly; 22internal AssemblyReference(AssemblySymbol assemblySymbol)
Emitter\Model\PEModuleBuilder.cs (9)
26internal abstract class PEModuleBuilder : PEModuleBuilder<CSharpCompilation, SourceModuleSymbol, AssemblySymbol, TypeSymbol, NamedTypeSymbol, MethodSymbol, SyntaxNode, NoPia.EmbeddedTypesManager, ModuleCompilationState> 136internal sealed override AssemblySymbol CorLibrary 158foreach (AssemblySymbol aRef in modules[i].GetReferencedAssemblySymbols()) 165private void ValidateReferencedAssembly(AssemblySymbol assembly, AssemblyReference asmRef, DiagnosticBag diagnostics) 803internal IEnumerable<AssemblySymbol> GetReferencedAssembliesUsedSoFar() 805foreach (AssemblySymbol a in SourceModule.GetReferencedAssemblySymbols()) 862AssemblySymbol corLibrary = CorLibrary; 874internal sealed override Cci.IAssemblyReference Translate(AssemblySymbol assembly, DiagnosticBag diagnostics) 930AssemblySymbol container = module.ContainingAssembly;
Emitter\NoPia\EmbeddedEvent.cs (1)
114var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies;
Emitter\NoPia\EmbeddedType.cs (1)
70ImmutableArray<AssemblySymbol> refs = TypeManager.ModuleBeingBuilt.SourceModule.GetReferencedAssemblySymbols();
Emitter\NoPia\EmbeddedTypesManager.cs (9)
35AssemblySymbol, 39private readonly ConcurrentDictionary<AssemblySymbol, string> _assemblyGuidMap = new ConcurrentDictionary<AssemblySymbol, string>(ReferenceEqualityComparer.Instance); 61UseSiteInfo<AssemblySymbol> info = typeSymbol.GetUseSiteInfo(); 94UseSiteInfo<AssemblySymbol> info; 172internal string GetAssemblyGuidString(AssemblySymbol assembly) 197foreach (AssemblySymbol a in ModuleBeingBuilt.GetReferencedAssembliesUsedSoFar()) 221internal override void ReportIndirectReferencesToLinkedAssemblies(AssemblySymbol a, DiagnosticBag diagnostics) 234foreach (AssemblySymbol indirectRef in m.GetReferencedAssemblySymbols())
FlowAnalysis\NullableWalker.cs (16)
2006var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2613var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2719var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 4617var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 4730var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 5196var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 5477var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 5908var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 5964var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 7567var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 7851var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 8015new ConstraintsHelper.CheckConstraintsArgs(compilation, _conversions, includeNullability: true, NoLocation.Singleton, diagnostics: null, template: CompoundUseSiteInfo<AssemblySymbol>.Discarded), 8092var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 9560var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 10935var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 11121var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
FlowAnalysis\NullableWalker.PlaceholderLocal.cs (2)
62internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue) => ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty;
FlowAnalysis\NullableWalker_Patterns.cs (3)
462var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 762var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 949var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Generated\BoundNodes.xml.Generated.cs (3)
7593public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, LambdaSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type, bool hasErrors = false) 7613public ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics { get; } 7619public BoundLambda Update(UnboundLambda unboundLambda, LambdaSymbol symbol, BoundBlock body, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics, Binder binder, TypeSymbol? type)
Lowering\AsyncRewriter\AsyncIteratorMethodToStateMachineRewriter.cs (1)
333var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(F.Diagnostics, F.Compilation.Assembly);
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
272var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(F.Diagnostics, F.Compilation.Assembly); 620var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
620var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(Diagnostics, _bound.Compilation.Assembly);
Lowering\LocalRewriter\LocalRewriter.cs (2)
1134private CompoundUseSiteInfo<AssemblySymbol> GetNewCompoundUseSiteInfo() 1136return new CompoundUseSiteInfo<AssemblySymbol>(_diagnostics, _compilation.Assembly);
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (2)
210CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = _localRewriter.GetNewCompoundUseSiteInfo(); 464CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = _localRewriter.GetNewCompoundUseSiteInfo();
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (1)
737CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo();
Lowering\LocalRewriter\LocalRewriter_Call.cs (2)
104var assembly = receiver.Type.ContainingAssembly; 123var assembly = receiver.Type.ContainingAssembly;
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
195var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (2)
814var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, compilation.Assembly); 1855CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo();
Lowering\LocalRewriter\LocalRewriter_Field.cs (1)
104UseSiteInfo<AssemblySymbol> useSiteInfo = field.GetUseSiteInfo();
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
340CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = GetNewCompoundUseSiteInfo();
Lowering\LocalRewriter\LocalRewriter_ObjectOrCollectionInitializerExpression.cs (1)
666var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Lowering\LocalRewriter\LocalRewriter_SwitchExpression.cs (1)
150var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Lowering\LocalRewriter\LoweredDynamicOperationFactory.cs (4)
220resultType = AssemblySymbol.DynamicType; 271var resultType = AssemblySymbol.DynamicType; 313resultType = AssemblySymbol.DynamicType; 432return MakeDynamicOperation(binderConstruction, loweredReceiver, RefKind.None, loweredArguments, default(ImmutableArray<RefKind>), loweredRight, AssemblySymbol.DynamicType);
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
436var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(F.Diagnostics, F.Compilation.Assembly);
Lowering\SyntheticBoundNodeFactory.cs (6)
372UseSiteInfo<AssemblySymbol> useSiteInfo = specialMember.GetUseSiteInfo(); 552CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 641var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1307var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1414var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1473CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies;
Operations\CSharpOperationFactory.cs (1)
1894var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\AliasSymbol.cs (1)
237var corLibrary = this.ContainingAssembly.CorLibrary;
Symbols\ArrayTypeSymbol.cs (7)
37AssemblySymbol declaringAssembly, 66AssemblySymbol declaringAssembly, 91AssemblySymbol declaringAssembly, 106AssemblySymbol declaringAssembly) 238internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed; 452internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 454UseSiteInfo<AssemblySymbol> result = default;
Symbols\AssemblySymbol.cs (20)
40private AssemblySymbol _corLibrary; 48internal AssemblySymbol CorLibrary 62internal void SetCorLibrary(AssemblySymbol corLibrary) 204public sealed override AssemblySymbol ContainingAssembly 334internal abstract NamedTypeSymbol LookupDeclaredOrForwardedTopLevelMetadataType(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies); 355internal virtual NamedTypeSymbol? TryLookupForwardedMetadataTypeWithCycleDetection(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies) 366internal ErrorTypeSymbol CreateMultipleForwardingErrorTypeSymbol(ref MetadataTypeName emittedName, ModuleSymbol forwardingModule, AssemblySymbol destination1, AssemblySymbol destination2) 534internal abstract ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies(); 535internal abstract void SetNoPiaResolutionAssemblies(ImmutableArray<AssemblySymbol> assemblies); 542internal abstract ImmutableArray<AssemblySymbol> GetLinkedReferencedAssemblies(); 543internal abstract void SetLinkedReferencedAssemblies(ImmutableArray<AssemblySymbol> assemblies); 556=> AreInternalsVisibleToThisAssembly((AssemblySymbol)otherAssembly); 558internal abstract bool AreInternalsVisibleToThisAssembly(AssemblySymbol other); 687out (AssemblySymbol, AssemblySymbol) conflicts, 891out (AssemblySymbol, AssemblySymbol) conflicts, 943var assemblies = ArrayBuilder<AssemblySymbol>.GetInstance(); 1040private static NamedTypeSymbol? GetTopLevelTypeByMetadataName(AssemblySymbol assembly, ref MetadataTypeName metadataName, AssemblyIdentity? assemblyOpt)
Symbols\Attributes\AttributeData.cs (1)
117var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\BaseTypeAnalysis.cs (2)
144internal static ManagedKind GetManagedKind(NamedTypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 173static (bool definitelyManaged, bool hasGenerics) dependsOnDefinitelyManagedType(NamedTypeSymbol type, HashSet<Symbol> partialClosure, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\Compilation_UsedAssemblies.cs (21)
20private ConcurrentSet<AssemblySymbol>? _lazyUsedAssemblyReferences; 25ConcurrentSet<AssemblySymbol>? usedAssemblies = GetCompleteSetOfUsedAssemblies(cancellationToken); 40if (symbol is object && usedAssemblies.Contains((AssemblySymbol)symbol) && 64private ConcurrentSet<AssemblySymbol>? GetCompleteSetOfUsedAssemblies(CancellationToken cancellationToken) 93void addUsedAssembly(AssemblySymbol dependency, ArrayBuilder<AssemblySymbol> stack) 101void addReferencedAssemblies(AssemblySymbol assembly, bool includeMainModule, ArrayBuilder<AssemblySymbol> stack) 105foreach (var dependency in assembly.Modules[i].ReferencedAssemblySymbols) 122foreach (var assembly in SourceModule.ReferencedAssemblySymbols) 132foreach (var dependency in SourceAssembly.Modules[i].ReferencedAssemblySymbols) 154var stack = ArrayBuilder<AssemblySymbol>.GetInstance(_lazyUsedAssemblyReferences.Count); 159AssemblySymbol current = stack.Pop(); 160ConcurrentSet<AssemblySymbol>? usedAssemblies; 173foreach (AssemblySymbol dependency in usedAssemblies) 185foreach (AssemblySymbol underlyingDependency in retargetingAssembly.UnderlyingAssembly.SourceModule.ReferencedAssemblySymbols) 189AssemblySymbol dependency; 225internal void AddUsedAssemblies(ICollection<AssemblySymbol>? assemblies) 229foreach (var candidate in assemblies) 236internal bool AddUsedAssembly(AssemblySymbol? assembly) 245Interlocked.CompareExchange(ref _lazyUsedAssemblyReferences, new ConcurrentSet<AssemblySymbol>(), null);
Symbols\Compilation_WellKnownMembers.cs (7)
138(AssemblySymbol, AssemblySymbol) conflicts = default; 197var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 206internal bool IsExceptionType(TypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 216internal bool IsEqualOrDerivedFromWellKnownClass(TypeSymbol type, WellKnownType wellKnownType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 245internal static Symbol? GetRuntimeMember(NamedTypeSymbol declaringType, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt) 251internal static Symbol? GetRuntimeMember(ImmutableArray<Symbol> members, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
Symbols\ConstantValueUtils.cs (2)
18public readonly ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics; 20public EvaluatedConstant(ConstantValue value, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics)
Symbols\ConstraintsHelper.cs (42)
29public readonly UseSiteInfo<AssemblySymbol> UseSiteInfo; 31public TypeParameterDiagnosticInfo(TypeParameterSymbol typeParameter, UseSiteInfo<AssemblySymbol> useSiteInfo) 73AssemblySymbol corLibrary, 83template: new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, currentCompilation.Assembly)); 130AssemblySymbol corLibrary, 137CompoundUseSiteInfo<AssemblySymbol> template) 155var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(template); 179diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(constraintTypeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_CircularConstraint, constraintTypeParameter, typeParameter)))); 213diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(errorCode, typeParameter, constraintTypeParameter)))); 251diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(underlyingTypeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_CircularConstraint, underlyingTypeParameter, typeParameter)))); 303diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BaseConstraintConflict, typeParameter, constraintDeducedBase, deducedBaseType)))); 531public readonly CompoundUseSiteInfo<AssemblySymbol> Template; 539this(currentCompilation, conversions, includeNullability, location, diagnostics, template: new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, currentCompilation.Assembly)) 543public CheckConstraintsArgs(CSharpCompilation currentCompilation, ConversionsBase conversions, bool includeNullability, Location location, BindingDiagnosticBag diagnostics, CompoundUseSiteInfo<AssemblySymbol> template) 938diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BadTypeArgument, typeArgument.Type)))); 950diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(diagnosticInfo))); 955diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_RuntimeDoesNotSupportByRefLikeGenerics)))); 961diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NotRefStructConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 969diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_GenericArgIsStaticClass, typeArgument.Type)))); 978diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_RefConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 987var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(args.Template); 994diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_UnmanagedConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 1008diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(csDiagnosticInfo))); 1018diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_ValConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 1060var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(args.Template); 1069new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_GenericConstraintNotSatisfiedInterfaceWithStaticAbstractMembers, iface, member)))); 1103diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NewConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 1107diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NewConstraintCannotHaveRequiredMembers, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type)))); 1126nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterNotNullConstraint, containingSymbol.ConstructedFrom(), typeParameter, typeArgument)))); 1133nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterReferenceTypeConstraint, containingSymbol.ConstructedFrom(), typeParameter, typeArgument)))); 1146ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1157nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterConstraint, containingSymbol.ConstructedFrom(), constraintType, typeParameter, typeArgument)))); 1196diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(errorCode, containingSymbol.ConstructedFrom(), constraintTypeErrorArgument, typeParameter, typeArgumentErrorArgument)))); 1272CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1280new UseSiteInfo<AssemblySymbol>(useSiteInfo.Dependencies.Single()) : 1281new UseSiteInfo<AssemblySymbol>(useSiteInfo.Dependencies.ToImmutableHashSet()))); 1306useSiteDiagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(info))); 1321ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1381private static bool SelfOrBaseHasStaticAbstractMember(NamedTypeSymbol iface, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out Symbol memberWithoutImplementation) 1425return new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BaseConstraintConflict, typeParameter, deducedBase, classConflict ? "class" : "struct"))); 1523private static bool IsEncompassedBy(ConversionsBase conversions, TypeSymbol a, TypeSymbol b, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1598var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\DynamicTypeSymbol.cs (1)
109internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\ErrorTypeSymbol.cs (3)
82internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 84return new UseSiteInfo<AssemblySymbol>(this.ErrorInfo); 641internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo()
Symbols\EventSymbol.cs (4)
194var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 272internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 276return new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 282internal bool CalculateUseSiteDiagnostic(ref UseSiteInfo<AssemblySymbol> result)
Symbols\ExtendedErrorTypeSymbol.cs (2)
122internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 126return new UseSiteInfo<AssemblySymbol>(this.ErrorInfo);
Symbols\FieldSymbol.cs (3)
341internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 345return new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 351internal bool CalculateUseSiteDiagnostic(ref UseSiteInfo<AssemblySymbol> result)
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (4)
774internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 776UseSiteInfo<AssemblySymbol> info = default; 781MergeUseSiteInfo(ref info, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_UnsupportedCallingConvention, this))); 792MergeUseSiteInfo(ref info, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this)));
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (4)
88internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Unmanaged; 143internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 145UseSiteInfo<AssemblySymbol> fromSignature = Signature.GetUseSiteInfo(); 149return new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BogusType, this));
Symbols\FunctionTypeSymbol.cs (1)
154internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => throw ExceptionUtilities.Unreachable();
Symbols\LocalSymbol.cs (1)
363internal abstract ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue);
Symbols\MergedNamespaceSymbol.cs (1)
258public override AssemblySymbol ContainingAssembly
Symbols\Metadata\PE\DynamicTypeDecoder.cs (4)
35private readonly AssemblySymbol _containingAssembly; 44private DynamicTypeDecoder(ImmutableArray<bool> dynamicTransformFlags, bool haveCustomModifierFlags, bool checkLength, AssemblySymbol containingAssembly) 88AssemblySymbol containingAssembly, 105AssemblySymbol containingAssembly,
Symbols\Metadata\PE\MetadataDecoder.cs (5)
214public static bool IsOrClosedOverATypeFromAssemblies(TypeSymbol symbol, ImmutableArray<AssemblySymbol> assemblies) 234AssemblySymbol containingAssembly = symbol.OriginalDefinition.ContainingAssembly; 336AssemblySymbol referringAssembly) 362foreach (AssemblySymbol assembly in referringAssembly.GetNoPiaResolutionAssemblies()) 547var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\Metadata\PE\PEAssemblySymbol.cs (14)
47private ImmutableArray<AssemblySymbol> _noPiaResolutionAssemblies; 55private ImmutableArray<AssemblySymbol> _linkedReferencedAssemblies; 168internal (AssemblySymbol FirstSymbol, AssemblySymbol SecondSymbol) LookupAssembliesForForwardedMetadataType(ref MetadataTypeName emittedName) 184internal override NamedTypeSymbol? TryLookupForwardedMetadataTypeWithCycleDetection(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies) 187(AssemblySymbol firstSymbol, AssemblySymbol secondSymbol) = LookupAssembliesForForwardedMetadataType(ref emittedName); 204visitedAssemblies = new ConsList<AssemblySymbol>(this, visitedAssemblies ?? ConsList<AssemblySymbol>.Empty); 214internal override ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies() 219internal override void SetNoPiaResolutionAssemblies(ImmutableArray<AssemblySymbol> assemblies) 224internal override void SetLinkedReferencedAssemblies(ImmutableArray<AssemblySymbol> assemblies) 229internal override ImmutableArray<AssemblySymbol> GetLinkedReferencedAssemblies() 247internal override bool AreInternalsVisibleToThisAssembly(AssemblySymbol potentialGiverOfAccess)
Symbols\Metadata\PE\PEEventSymbol.cs (8)
35private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 463internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 465AssemblySymbol primaryDependency = PrimaryDependency; 469UseSiteInfo<AssemblySymbol> result = new UseSiteInfo<AssemblySymbol>(primaryDependency); 477void deriveCompilerFeatureRequiredUseSiteInfo(ref UseSiteInfo<AssemblySymbol> result) 492result = new UseSiteInfo<AssemblySymbol>(diag);
Symbols\Metadata\PE\PEFieldSymbol.cs (9)
123private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 628internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 630AssemblySymbol primaryDependency = PrimaryDependency; 634UseSiteInfo<AssemblySymbol> result = new UseSiteInfo<AssemblySymbol>(primaryDependency); 639MergeUseSiteInfo(ref result, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this))); 647void deriveCompilerFeatureRequiredUseSiteInfo(ref UseSiteInfo<AssemblySymbol> result) 662result = new UseSiteInfo<AssemblySymbol>(diag);
Symbols\Metadata\PE\PEGlobalNamespaceSymbol.cs (1)
66public override AssemblySymbol ContainingAssembly
Symbols\Metadata\PE\PEMethodSymbol.cs (10)
312public CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo; 430InitializeUseSiteDiagnostic(new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this))); 883InitializeUseSiteDiagnostic(new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this))); 914InitializeUseSiteDiagnostic(new UseSiteInfo<AssemblySymbol>(diagnosticInfo)); 1426internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 1430UseSiteInfo<AssemblySymbol> result = new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 1502private UseSiteInfo<AssemblySymbol> GetCachedUseSiteInfo() 1507private UseSiteInfo<AssemblySymbol> InitializeUseSiteDiagnostic(UseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\Metadata\PE\PEModuleSymbol.cs (13)
31private readonly AssemblySymbol _assemblySymbol; 126: this((AssemblySymbol)assemblySymbol, module, importOptions, ordinal) 132: this((AssemblySymbol)assemblySymbol, module, importOptions, ordinal) 138: this((AssemblySymbol)assemblySymbol, module, importOptions, ordinal) 143private PEModuleSymbol(AssemblySymbol assemblySymbol, PEModule module, MetadataImportOptions importOptions, int ordinal) 226public override AssemblySymbol ContainingAssembly 619foreach (AssemblySymbol assembly in this.GetReferencedAssemblySymbols()) 741internal (AssemblySymbol FirstSymbol, AssemblySymbol SecondSymbol) GetAssembliesForForwardedType(ref MetadataTypeName fullName) 751AssemblySymbol firstSymbol = GetReferencedAssemblySymbol(firstIndex); 758AssemblySymbol secondSymbol = GetReferencedAssemblySymbol(secondIndex); 771AssemblySymbol firstSymbol = this.GetReferencedAssemblySymbol(forwarder.Value.FirstIndex); 776var secondSymbol = this.GetReferencedAssemblySymbol(forwarder.Value.SecondIndex);
Symbols\Metadata\PE\PENamedTypeSymbol.cs (6)
80private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 626var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 2100internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 2102AssemblySymbol primaryDependency = PrimaryDependency; 2105_lazyCachedUseSiteInfo.Initialize(primaryDependency, new UseSiteInfo<AssemblySymbol>(primaryDependency).AdjustDiagnosticInfo(GetUseSiteDiagnosticImpl()));
Symbols\Metadata\PE\PENestedNamespaceSymbol.cs (1)
110public override AssemblySymbol ContainingAssembly
Symbols\Metadata\PE\PEParameterSymbol.cs (4)
691var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 710var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 730var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 752var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\Metadata\PE\PEPropertySymbol.cs (8)
181public CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 362retVal._lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 935internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 937AssemblySymbol primaryDependency = PrimaryDependency; 941var result = new UseSiteInfo<AssemblySymbol>(primaryDependency); 958return new UseSiteInfo<AssemblySymbol>(primaryDependency); 965uncommonFields._lazyCachedUseSiteInfo.InterlockedInitializeFromSentinel(primaryDependency, new UseSiteInfo<AssemblySymbol>(primaryDependency));
Symbols\Metadata\PE\PETypeParameterSymbol.cs (8)
38private CachedUseSiteInfo<AssemblySymbol> _lazyCachedConstraintsUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 142public override AssemblySymbol ContainingAssembly 239_lazyCachedConstraintsUseSiteInfo.InterlockedInitializeFromSentinel(primaryDependency: null, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this))); 419_lazyCachedConstraintsUseSiteInfo.InterlockedInitializeFromSentinel(primaryDependency: null, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this))); 678AssemblySymbol primaryDependency = PrimaryDependency; 679var useSiteInfo = new UseSiteInfo<AssemblySymbol>(primaryDependency); 700internal override UseSiteInfo<AssemblySymbol> GetConstraintsUseSiteErrorInfo()
Symbols\Metadata\PE\SymbolFactory.cs (1)
103ImmutableArray<AssemblySymbol> linkedAssemblies = moduleSymbol.ContainingAssembly.GetLinkedReferencedAssemblies();
Symbols\MetadataOrSourceAssemblySymbol.cs (4)
226protected IVTConclusion MakeFinalIVTDetermination(AssemblySymbol potentialGiverOfAccess) 266private ConcurrentDictionary<AssemblySymbol, IVTConclusion> _assembliesToWhichInternalAccessHasBeenAnalyzed; 268private ConcurrentDictionary<AssemblySymbol, IVTConclusion> AssembliesToWhichInternalAccessHasBeenDetermined 273Interlocked.CompareExchange(ref _assembliesToWhichInternalAccessHasBeenAnalyzed, new ConcurrentDictionary<AssemblySymbol, IVTConclusion>(), null);
Symbols\MethodSymbol.cs (4)
452var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 939internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 943return new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 951internal bool CalculateUseSiteDiagnostic(ref UseSiteInfo<AssemblySymbol> result)
Symbols\MissingAssemblySymbol.cs (9)
21/// A <see cref="MissingAssemblySymbol"/> is a special kind of <see cref="AssemblySymbol"/> that represents 124internal override void SetLinkedReferencedAssemblies(ImmutableArray<AssemblySymbol> assemblies) 129internal override ImmutableArray<AssemblySymbol> GetLinkedReferencedAssemblies() 131return ImmutableArray<AssemblySymbol>.Empty; 134internal override void SetNoPiaResolutionAssemblies(ImmutableArray<AssemblySymbol> assemblies) 139internal override ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies() 141return ImmutableArray<AssemblySymbol>.Empty; 170internal override NamedTypeSymbol LookupDeclaredOrForwardedTopLevelMetadataType(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies) 187internal override bool AreInternalsVisibleToThisAssembly(AssemblySymbol other)
Symbols\MissingMetadataTypeSymbol.cs (3)
66AssemblySymbol containingAssembly = this.ContainingAssembly; 228public override AssemblySymbol ContainingAssembly 292AssemblySymbol containingAssembly = _containingModule.ContainingAssembly;
Symbols\MissingModuleSymbol.cs (7)
26protected readonly AssemblySymbol assembly; 30public MissingModuleSymbol(AssemblySymbol assembly, int ordinal) 81public override AssemblySymbol ContainingAssembly 158internal override ImmutableArray<AssemblySymbol> GetReferencedAssemblySymbols() 160return ImmutableArray<AssemblySymbol>.Empty; 163internal override void SetReferences(ModuleReferences<AssemblySymbol> moduleReferences, SourceAssemblySymbol originatingSourceAssemblyDebugOnly) 211public MissingModuleSymbolWithName(AssemblySymbol assembly, string name)
Symbols\MissingNamespaceSymbol.cs (1)
56public override AssemblySymbol ContainingAssembly
Symbols\ModuleSymbol.cs (7)
39public override AssemblySymbol ContainingAssembly 43return (AssemblySymbol)ContainingSymbol; 224public ImmutableArray<AssemblySymbol> ReferencedAssemblySymbols 241internal abstract ImmutableArray<AssemblySymbol> GetReferencedAssemblySymbols(); // TODO: Remove this method and make ReferencedAssemblySymbols property abstract instead. 243internal AssemblySymbol GetReferencedAssemblySymbol(int referencedAssemblyIndex) 253var assembly = ContainingAssembly; 273internal abstract void SetReferences(ModuleReferences<AssemblySymbol> moduleReferences, SourceAssemblySymbol originatingSourceAssemblyDebugOnly = null);
Symbols\NamedTypeSymbol.cs (10)
72internal ImmutableArray<TypeWithAnnotations> TypeArgumentsWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 84internal TypeWithAnnotations TypeArgumentWithDefinitionUseSiteDiagnostics(int index, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 408internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1265internal void GetAllTypeArguments(ref TemporaryArray<TypeSymbol> builder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1279internal ImmutableArray<TypeWithAnnotations> GetAllTypeArguments(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1286internal void GetAllTypeArguments(ArrayBuilder<TypeWithAnnotations> builder, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1361internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 1363UseSiteInfo<AssemblySymbol> result = new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 1379private bool DeriveUseSiteDiagnosticFromTypeArguments(ref UseSiteInfo<AssemblySymbol> result)
Symbols\NamespaceExtent.cs (3)
57public AssemblySymbol Assembly 63return (AssemblySymbol)_symbolOrCompilation; 104internal NamespaceExtent(AssemblySymbol assembly)
Symbols\NamespaceSymbol.cs (2)
101public abstract override AssemblySymbol ContainingAssembly { get; } 335var assembly = this.ContainingAssembly;
Symbols\NativeIntegerTypeSymbol.cs (1)
164internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo()
Symbols\NonMissingAssemblySymbol.cs (3)
18/// A <see cref="NonMissingAssemblySymbol"/> is a special kind of <see cref="AssemblySymbol"/> that represents 161internal sealed override NamedTypeSymbol LookupDeclaredOrForwardedTopLevelMetadataType(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies) 186internal abstract override NamedTypeSymbol? TryLookupForwardedMetadataTypeWithCycleDetection(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies);
Symbols\NonMissingModuleSymbol.cs (7)
24/// An array of <see cref="AssemblySymbol"/> objects corresponding to assemblies directly referenced by this module. 29private ModuleReferences<AssemblySymbol> _moduleReferences; 60internal sealed override ImmutableArray<AssemblySymbol> GetReferencedAssemblySymbols() 66internal ImmutableArray<UnifiedAssembly<AssemblySymbol>> GetUnifiedAssemblies() 82var ownerAssembly = ownerModule.ContainingAssembly; 83var dependentAssembly = dependentType.ContainingAssembly; 154internal override void SetReferences(ModuleReferences<AssemblySymbol> moduleReferences, SourceAssemblySymbol originatingSourceAssemblyDebugOnly = null)
Symbols\NoPiaAmbiguousCanonicalTypeSymbol.cs (3)
22private readonly AssemblySymbol _embeddingAssembly; 27AssemblySymbol embeddingAssembly, 55public AssemblySymbol EmbeddingAssembly
Symbols\NoPiaMissingCanonicalTypeSymbol.cs (3)
23private readonly AssemblySymbol _embeddingAssembly; 30AssemblySymbol embeddingAssembly, 50public AssemblySymbol EmbeddingAssembly
Symbols\OverriddenOrHiddenMembersHelpers.cs (1)
1072var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\ParameterSymbol.cs (1)
438UseSiteInfo<AssemblySymbol> info = default;
Symbols\PointerTypeSymbol.cs (3)
109internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Unmanaged; 285internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 287UseSiteInfo<AssemblySymbol> result = default;
Symbols\PropertySymbol.cs (4)
291var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 388internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 392return new UseSiteInfo<AssemblySymbol>(PrimaryDependency); 398internal bool CalculateUseSiteDiagnostic(ref UseSiteInfo<AssemblySymbol> result)
Symbols\PublicModel\AssemblySymbol.cs (1)
19internal abstract Symbols.AssemblySymbol UnderlyingAssemblySymbol { get; }
Symbols\PublicModel\NonSourceAssemblySymbol.cs (3)
13private readonly Symbols.AssemblySymbol _underlying; 15public NonSourceAssemblySymbol(Symbols.AssemblySymbol underlying) 22internal override Symbols.AssemblySymbol UnderlyingAssemblySymbol => _underlying;
Symbols\PublicModel\SourceAssemblySymbol.cs (1)
21internal override Symbols.AssemblySymbol UnderlyingAssemblySymbol => _underlying;
Symbols\ReducedExtensionMethodSymbol.cs (5)
43var useSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 113ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool wasFullyInferred) 133var containingAssembly = method.ContainingAssembly; 207var success = method.CheckConstraints(new ConstraintsHelper.CheckConstraintsArgs(compilation, conversions, includeNullability: false, NoLocation.Singleton, diagnostics: null, template: new CompoundUseSiteInfo<AssemblySymbol>(useSiteInfo)), 356public override AssemblySymbol ContainingAssembly
Symbols\ReferenceManager.cs (52)
56internal sealed class ReferenceManager : CommonReferenceManager<CSharpCompilation, AssemblySymbol> 125protected override void GetActualBoundReferencesUsedBy(AssemblySymbol assemblySymbol, List<AssemblySymbol?> referencedAssemblySymbols) 142protected override ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies(AssemblySymbol candidateAssembly) 149return ImmutableArray<AssemblySymbol>.Empty; 155protected override bool IsLinked(AssemblySymbol candidateAssembly) 160protected override AssemblySymbol? GetCorLibrary(AssemblySymbol candidateAssembly) 162AssemblySymbol corLibrary = candidateAssembly.CorLibrary; 254var referencedAssembliesByIdentity = new AssemblyIdentityMap<AssemblySymbol>(); 281private static AssemblySymbol MapAssemblyIdentityToResolvedSymbol(AssemblyIdentity identity, AssemblyIdentityMap<AssemblySymbol> map) 283AssemblySymbol symbol; 323private void InitializeAssemblyReuseData(AssemblySymbol assemblySymbol, ImmutableArray<AssemblySymbol> referencedAssemblies, ImmutableArray<UnifiedAssembly<AssemblySymbol>> unifiedAssemblies) 329var sourceModuleReferences = new ModuleReferences<AssemblySymbol>(referencedAssemblies.SelectAsArray(a => a.Identity), referencedAssemblies, unifiedAssemblies); 439AssemblySymbol? corLibrary; 464ImmutableArray<ModuleReferences<AssemblySymbol>> moduleReferences; 546var corLibrary = sourceAssembly.CorLibrary; 566var linkedReferencedAssembliesBuilder = ArrayBuilder<AssemblySymbol>.GetInstance(); 661ImmutableArray<AssemblySymbol> underlyingReferencedAssemblySymbols = 665foreach (AssemblySymbol asm in underlyingReferencedAssemblySymbols) 693AssemblySymbol[] symbols = new AssemblySymbol[refsCount]; 694ArrayBuilder<UnifiedAssembly<AssemblySymbol>>? unifiedAssemblies = null; 709var moduleReferences = new ModuleReferences<AssemblySymbol>(referencedAssemblies, symbols.AsImmutableOrNull(), unifiedAssemblies.AsImmutableOrEmpty()); 735var symbols = new AssemblySymbol[moduleReferenceCount]; 739ArrayBuilder<UnifiedAssembly<AssemblySymbol>>? unifiedAssemblies = null; 753var moduleReferences = new ModuleReferences<AssemblySymbol>(identities.AsImmutableOrNull(), symbols.AsImmutableOrNull(), unifiedAssemblies.AsImmutableOrEmpty()); 766out ImmutableArray<ModuleReferences<AssemblySymbol>> moduleReferences) 771var moduleReferencesBuilder = (moduleSymbols.Length > 1) ? ArrayBuilder<ModuleReferences<AssemblySymbol>>.GetInstance() : null; 779var symbols = new AssemblySymbol[refsCount]; 781ArrayBuilder<UnifiedAssembly<AssemblySymbol>>? unifiedAssemblies = null; 801var references = new ModuleReferences<AssemblySymbol>( 819private static AssemblySymbol GetAssemblyDefinitionSymbol( 822ref ArrayBuilder<UnifiedAssembly<AssemblySymbol>>? unifiedAssemblies) 833unifiedAssemblies = new ArrayBuilder<UnifiedAssembly<AssemblySymbol>>(); 836unifiedAssemblies.Add(new UnifiedAssembly<AssemblySymbol>(assembly, referenceBinding.ReferenceIdentity)); 865private ImmutableArray<AssemblySymbol> _assemblies; 883internal abstract AssemblySymbol CreateAssemblySymbol(); 893public override ImmutableArray<AssemblySymbol> AvailableSymbols 899var builder = ArrayBuilder<AssemblySymbol>.GetInstance(); 913protected abstract void AddAvailableSymbols(ArrayBuilder<AssemblySymbol> builder); 982internal override AssemblySymbol CreateAssemblySymbol() 1015protected override void AddAvailableSymbols(ArrayBuilder<AssemblySymbol> assemblies) 1031public override bool IsMatchingAssembly(AssemblySymbol? candidateAssembly) 1133internal override AssemblySymbol CreateAssemblySymbol() 1138protected override void AddAvailableSymbols(ArrayBuilder<AssemblySymbol> assemblies) 1149public override bool IsMatchingAssembly(AssemblySymbol? candidateAssembly) 1152AssemblySymbol? asm;
Symbols\Retargeting\RetargetingAssemblySymbol.cs (8)
62private ImmutableArray<AssemblySymbol> _noPiaResolutionAssemblies; 70private ImmutableArray<AssemblySymbol> _linkedReferencedAssemblies; 205internal override bool AreInternalsVisibleToThisAssembly(AssemblySymbol other) 228internal override ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies() 233internal override void SetNoPiaResolutionAssemblies(ImmutableArray<AssemblySymbol> assemblies) 238internal override void SetLinkedReferencedAssemblies(ImmutableArray<AssemblySymbol> assemblies) 243internal override ImmutableArray<AssemblySymbol> GetLinkedReferencedAssemblies() 296internal override NamedTypeSymbol? TryLookupForwardedMetadataTypeWithCycleDetection(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies)
Symbols\Retargeting\RetargetingEventSymbol.cs (6)
30private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 140public override AssemblySymbol ContainingAssembly 174internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 178AssemblySymbol primaryDependency = PrimaryDependency; 179var result = new UseSiteInfo<AssemblySymbol>(primaryDependency);
Symbols\Retargeting\RetargetingFieldSymbol.cs (6)
33private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 88public override AssemblySymbol ContainingAssembly 123internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 127AssemblySymbol primaryDependency = PrimaryDependency; 128var result = new UseSiteInfo<AssemblySymbol>(primaryDependency);
Symbols\Retargeting\RetargetingMethodSymbol.cs (6)
53private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 274public override AssemblySymbol ContainingAssembly 349internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 353AssemblySymbol primaryDependency = PrimaryDependency; 354var result = new UseSiteInfo<AssemblySymbol>(primaryDependency);
Symbols\Retargeting\RetargetingModuleSymbol.cs (11)
45/// to what assembly. Key is the <see cref="AssemblySymbol"/> referenced by the underlying module, 46/// value is the corresponding <see cref="AssemblySymbol"/> referenced by this module, and corresponding 49private readonly Dictionary<AssemblySymbol, DestinationData> _retargetingAssemblyMap = 50new Dictionary<AssemblySymbol, DestinationData>(); 56public AssemblySymbol To; 168public override AssemblySymbol ContainingAssembly 188internal override void SetReferences(ModuleReferences<AssemblySymbol> moduleReferences, SourceAssemblySymbol originatingSourceAssemblyDebugOnly) 195ImmutableArray<AssemblySymbol> underlyingBoundReferences = _underlyingModule.GetReferencedAssemblySymbols(); 196ImmutableArray<AssemblySymbol> referencedAssemblySymbols = moduleReferences.Symbols; 246internal bool RetargetingDefinitions(AssemblySymbol from, out AssemblySymbol to)
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (6)
39private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 232public override AssemblySymbol ContainingAssembly 352internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 356AssemblySymbol primaryDependency = PrimaryDependency; 357_lazyCachedUseSiteInfo.Initialize(primaryDependency, new UseSiteInfo<AssemblySymbol>(primaryDependency).AdjustDiagnosticInfo(CalculateUseSiteDiagnostic()));
Symbols\Retargeting\RetargetingNamespaceSymbol.cs (1)
169public override AssemblySymbol ContainingAssembly
Symbols\Retargeting\RetargetingParameterSymbol.cs (1)
81public sealed override AssemblySymbol ContainingAssembly
Symbols\Retargeting\RetargetingPropertySymbol.cs (6)
34private CachedUseSiteInfo<AssemblySymbol> _lazyCachedUseSiteInfo = CachedUseSiteInfo<AssemblySymbol>.Uninitialized; 200public override AssemblySymbol ContainingAssembly 234internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 236AssemblySymbol primaryDependency = PrimaryDependency; 240var result = new UseSiteInfo<AssemblySymbol>(primaryDependency);
Symbols\Retargeting\RetargetingSymbolTranslator.cs (4)
154private Dictionary<AssemblySymbol, DestinationData> RetargetingAssemblyMap 232AssemblySymbol retargetFrom = type.ContainingAssembly; 610ImmutableArray<AssemblySymbol> assembliesToEmbedTypesFrom = this.UnderlyingModule.GetAssembliesToEmbedTypesFrom(); 623ImmutableArray<AssemblySymbol> linkedAssemblies = RetargetingAssembly.GetLinkedReferencedAssemblies();
Symbols\Retargeting\RetargetingTypeParameterSymbol.cs (1)
68public override AssemblySymbol ContainingAssembly
Symbols\SignatureOnlyMethodSymbol.cs (1)
159public override AssemblySymbol ContainingAssembly { get { throw ExceptionUtilities.Unreachable(); } }
Symbols\SignatureOnlyParameterSymbol.cs (1)
99public override AssemblySymbol ContainingAssembly { get { throw ExceptionUtilities.Unreachable(); } }
Symbols\SignatureOnlyPropertySymbol.cs (1)
94public override AssemblySymbol ContainingAssembly { get { throw ExceptionUtilities.Unreachable(); } }
Symbols\Source\CustomModifierUtils.cs (1)
69internal static TypeSymbol CopyTypeCustomModifiers(TypeSymbol sourceType, TypeSymbol destinationType, AssemblySymbol containingAssembly)
Symbols\Source\ExplicitInterfaceHelpers.cs (1)
306var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, implementingMember.ContainingAssembly);
Symbols\Source\LambdaSymbol.cs (3)
28private readonly HashSet<AssemblySymbol> _declarationDependencies; 70_declarationDependencies = new HashSet<AssemblySymbol>(); 305addTo.AddDependencies((IReadOnlyCollection<AssemblySymbol>)_declarationDependencies);
Symbols\Source\LocalFunctionSymbol.cs (3)
35private readonly HashSet<AssemblySymbol> _declarationDependencies; 47_declarationDependencies = new HashSet<AssemblySymbol>(); 134addTo.AddDependencies((IReadOnlyCollection<AssemblySymbol>)_declarationDependencies);
Symbols\Source\ModifierUtils.cs (1)
490var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(futureDestination: diagnostics, assemblyBeingBuilt: symbol.ContainingAssembly);
Symbols\Source\ParameterHelpers.cs (1)
736CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics);
Symbols\Source\SourceAssemblySymbol.cs (18)
532private ConcurrentDictionary<AssemblySymbol, bool> _optimisticallyGrantedInternalsAccess; 536private static AssemblySymbol t_assemblyForWhichCurrentThreadIsComputingKeys; 1852internal override ImmutableArray<AssemblySymbol> GetNoPiaResolutionAssemblies() 1857internal override void SetNoPiaResolutionAssemblies(ImmutableArray<AssemblySymbol> assemblies) 1862internal override ImmutableArray<AssemblySymbol> GetLinkedReferencedAssemblies() 1866return default(ImmutableArray<AssemblySymbol>); 1869internal override void SetLinkedReferencedAssemblies(ImmutableArray<AssemblySymbol> assemblies) 2099ConcurrentDictionary<AssemblySymbol, bool> haveGrantedAssemblies = _optimisticallyGrantedInternalsAccess; 2103foreach (var otherAssembly in haveGrantedAssemblies.Keys) 2147internal override bool AreInternalsVisibleToThisAssembly(AssemblySymbol potentialGiverOfAccess) 2156var assemblyWhoseKeysAreBeingComputed = t_assemblyForWhichCurrentThreadIsComputingKeys; 2163Interlocked.CompareExchange(ref _optimisticallyGrantedInternalsAccess, new ConcurrentDictionary<AssemblySymbol, bool>(), null); 2216UseSiteInfo<AssemblySymbol> useSiteInfo = forwardedType.GetUseSiteInfo(); 2807internal override NamedTypeSymbol? TryLookupForwardedMetadataTypeWithCycleDetection(ref MetadataTypeName emittedName, ConsList<AssemblySymbol>? visitedAssemblies) 2874(AssemblySymbol firstSymbol, AssemblySymbol secondSymbol) = peModuleSymbol.GetAssembliesForForwardedType(ref emittedName); 2890visitedAssemblies = new ConsList<AssemblySymbol>(this, visitedAssemblies ?? ConsList<AssemblySymbol>.Empty);
Symbols\Source\SourceComplexParameterSymbol.cs (5)
986var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnosticsOpt, ContainingAssembly); 1062var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 1090var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 1123var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 1164var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceDelegateMethodSymbol.cs (1)
99var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, delegateType.ContainingAssembly);
Symbols\Source\SourceEventSymbol.cs (2)
530var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 623protected static void CopyEventCustomModifiers(EventSymbol eventWithCustomModifiers, ref TypeWithAnnotations type, AssemblySymbol containingAssembly)
Symbols\Source\SourceLocalSymbol.cs (4)
475internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue) 477return ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty; 609internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue) 613return _constantTuple == null ? ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty : _constantTuple.Diagnostics;
Symbols\Source\SourceMemberContainerSymbol.cs (5)
190private ImmutableArray<AssemblySymbol> _managedKindUseSiteDependencies; 808internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 813var managedKindUseSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(ContainingAssembly); 816ImmutableInterlocked.InterlockedInitialize(ref _managedKindUseSiteDependencies, managedKindUseSiteInfo.Dependencies?.ToImmutableArray() ?? ImmutableArray<AssemblySymbol>.Empty); 831ImmutableArray<AssemblySymbol> useSiteDependencies = _managedKindUseSiteDependencies;
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (11)
165implementingMemberAndDiagnostics = new SymbolAndDiagnostics(explicitImpl.Single(), ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty); 169implementingMemberAndDiagnostics = new SymbolAndDiagnostics(null, new ReadOnlyBindingDiagnostic<AssemblySymbol>(ImmutableArray.Create(diag), default)); 322UseSiteInfo<AssemblySymbol> useSiteInfo = interfaceMember.GetUseSiteInfo(); 357var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 708var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 878var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 997var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1066var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 1129var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, overridingProperty.ContainingAssembly); 1203var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 1366var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\Source\SourceMemberFieldSymbol.cs (2)
91CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceMemberMethodSymbol.cs (1)
349var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (1)
951var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceModuleSymbol.cs (7)
33private ImmutableArray<AssemblySymbol> _lazyAssembliesToEmbedTypesFrom; 127internal ImmutableArray<AssemblySymbol> GetAssembliesToEmbedTypesFrom() 132var buffer = ArrayBuilder<AssemblySymbol>.GetInstance(); 134foreach (AssemblySymbol asm in this.GetReferencedAssemblySymbols()) 144default(ImmutableArray<AssemblySymbol>)); 304foreach (AssemblySymbol a in GetReferencedAssemblySymbols()) 439public override AssemblySymbol ContainingAssembly
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (7)
116var corLibrary = this.ContainingAssembly.CorLibrary; 126var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 162var corLibrary = this.ContainingAssembly.CorLibrary; 368CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 688var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 762var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (1)
999var corLibrary = compilation.SourceAssembly.CorLibrary;
Symbols\Source\SourceNamespaceSymbol.cs (2)
73public override AssemblySymbol ContainingAssembly 431AssemblySymbol containingAssembly = ContainingAssembly;
Symbols\Source\SourceParameterSymbolBase.cs (1)
62public sealed override AssemblySymbol ContainingAssembly
Symbols\Source\SourcePropertySymbol.cs (2)
568CompoundUseSiteInfo<AssemblySymbol> useSiteInfo = binder.GetNewCompoundUseSiteInfo(diagnostics); 651var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (2)
572var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly); 671var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, ContainingAssembly);
Symbols\SubstitutedMethodSymbol.cs (1)
125public sealed override AssemblySymbol ContainingAssembly
Symbols\Symbol.cs (17)
166public virtual AssemblySymbol ContainingAssembly 1059internal virtual UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 1064protected AssemblySymbol PrimaryDependency 1068AssemblySymbol dependency = this.ContainingAssembly; 1142internal bool MergeUseSiteInfo(ref UseSiteInfo<AssemblySymbol> result, UseSiteInfo<AssemblySymbol> info) 1150result = new UseSiteInfo<AssemblySymbol>(diagnosticInfo); 1159result = new UseSiteInfo<AssemblySymbol>(diagnosticInfo, primaryDependency, secondaryDependencies); 1197internal bool DeriveUseSiteInfoFromType(ref UseSiteInfo<AssemblySymbol> result, TypeSymbol type) 1199UseSiteInfo<AssemblySymbol> info = type.GetUseSiteInfo(); 1208private void GetSymbolSpecificUnsupportedMetadataUseSiteErrorInfo(ref UseSiteInfo<AssemblySymbol> info) 1221private UseSiteInfo<AssemblySymbol> GetSymbolSpecificUnsupportedMetadataUseSiteErrorInfo() 1223var useSiteInfo = new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BogusType, string.Empty)); 1228internal bool DeriveUseSiteInfoFromType(ref UseSiteInfo<AssemblySymbol> result, TypeWithAnnotations type, AllowedRequiredModifierType allowedRequiredModifierType) 1234internal bool DeriveUseSiteInfoFromParameter(ref UseSiteInfo<AssemblySymbol> result, ParameterSymbol param) 1243internal bool DeriveUseSiteInfoFromParameters(ref UseSiteInfo<AssemblySymbol> result, ImmutableArray<ParameterSymbol> parameters) 1266internal bool DeriveUseSiteInfoFromCustomModifiers(ref UseSiteInfo<AssemblySymbol> result, ImmutableArray<CustomModifier> customModifiers, AllowedRequiredModifierType allowedRequiredModifierType)
Symbols\SymbolDistinguisher.cs (3)
106var containingAssembly0 = unwrappedSymbol0.ContainingAssembly; 107var containingAssembly1 = unwrappedSymbol1.ContainingAssembly; 177AssemblySymbol containingAssembly = unwrappedSymbol.ContainingAssembly;
Symbols\SymbolExtensions.cs (10)
47public static bool IsAccessibleViaInheritance(this NamedTypeSymbol superType, NamedTypeSymbol subType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 87public static bool IsNoMoreVisibleThan(this Symbol symbol, TypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 92public static bool IsNoMoreVisibleThan(this Symbol symbol, TypeWithAnnotations type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 97internal static void AddUseSiteInfo(this Symbol? symbol, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool addDiagnostics = true) 402internal static AssemblySymbol? EnsureCSharpSymbolOrNull(this IAssemblySymbol? symbol, string paramName) 404return (AssemblySymbol?)EnsureCSharpSymbolOrNull((ISymbol?)symbol, paramName); 605internal static IAssemblySymbol? GetPublicSymbol(this AssemblySymbol? symbol) 749internal static ImmutableArray<IAssemblySymbol> GetPublicSymbols(this ImmutableArray<AssemblySymbol> symbols) 802internal static AssemblySymbol? GetSymbol(this IAssemblySymbol? symbol) 804return symbol.GetSymbol<AssemblySymbol>();
Symbols\SymbolVisitor.cs (1)
35public virtual void VisitAssembly(AssemblySymbol symbol)
Symbols\SymbolVisitor`1.cs (1)
35public virtual TResult VisitAssembly(AssemblySymbol symbol)
Symbols\SymbolVisitor`2.cs (2)
47/// Called when visiting an <see cref="AssemblySymbol" />; Override this method with 54public virtual TResult VisitAssembly(AssemblySymbol symbol, TArgument argument)
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
148public override AssemblySymbol ContainingAssembly => _containingType.ContainingAssembly;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
825public override AssemblySymbol ContainingAssembly => _containingModule.ContainingAssembly;
Symbols\Synthesized\Records\SynthesizedRecordClone.cs (2)
89var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; // This is reported when we bind bases 141internal static MethodSymbol? FindValidCloneMethod(TypeSymbol containingType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\Synthesized\Records\SynthesizedRecordCopyCtor.cs (1)
89internal static MethodSymbol? FindCopyConstructor(NamedTypeSymbol containingType, NamedTypeSymbol within, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (2)
60internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed; 80public override AssemblySymbol ContainingAssembly => _module.ContainingAssembly;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
87internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
73public override AssemblySymbol ContainingAssembly => _containingModule.ContainingAssembly;
Symbols\Synthesized\SynthesizedInstanceConstructor.cs (2)
274internal sealed override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 276var result = new UseSiteInfo<AssemblySymbol>(PrimaryDependency);
Symbols\Synthesized\SynthesizedLocal.cs (2)
195internal sealed override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue) 197return ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty;
Symbols\Synthesized\SynthesizedSealedPropertyAccessor.cs (1)
94var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\Synthesized\TypeSubstitutedLocalSymbol.cs (1)
121internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue)
Symbols\SynthesizedNamespaceSymbol.cs (1)
58public override AssemblySymbol ContainingAssembly
Symbols\Tuples\TupleErrorFieldSymbol.cs (2)
166internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 168return new UseSiteInfo<AssemblySymbol>(_useSiteDiagnosticInfo);
Symbols\Tuples\TupleFieldSymbol.cs (3)
139internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 279internal override UseSiteInfo<AssemblySymbol> GetUseSiteInfo() 283return new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_TupleInferredNamesNotAvailable, _name,
Symbols\Tuples\TupleTypeSymbol.cs (1)
498UseSiteInfo<AssemblySymbol> useSiteInfo = member.GetUseSiteInfo();
Symbols\TypeParameterSymbol.cs (8)
72internal virtual UseSiteInfo<AssemblySymbol> GetConstraintsUseSiteErrorInfo() 91internal ImmutableArray<TypeWithAnnotations> ConstraintTypesWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 105private void AppendConstraintsUseSiteErrorInfo(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 268internal NamedTypeSymbol EffectiveBaseClass(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 293internal ImmutableArray<NamedTypeSymbol> EffectiveInterfacesWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 317internal TypeSymbol DeducedBaseType(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 343internal ImmutableArray<NamedTypeSymbol> AllEffectiveInterfacesWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 594internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\TypeSymbol.cs (22)
162internal NamedTypeSymbol BaseTypeWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 174internal NamedTypeSymbol BaseTypeOriginalDefinition(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 211internal ImmutableArray<NamedTypeSymbol> AllInterfacesWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 243internal TypeSymbol EffectiveType(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 251internal bool IsDerivedFrom(TypeSymbol type, TypeCompareKind comparison, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 278internal bool IsEqualToOrDerivedFrom(TypeSymbol type, TypeCompareKind comparison, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 400internal MultiDictionary<NamedTypeSymbol, NamedTypeSymbol> InterfacesAndTheirBaseInterfacesWithDefinitionUseSiteDiagnostics(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 456var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 599internal bool IsManagedType(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => GetManagedKind(ref useSiteInfo) == ManagedKind.Managed; 605var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 614internal abstract ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 620var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded; 836var useSiteInfo = compilation is object ? new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, compilation.Assembly) : CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 1005var useSiteInfo2 = compilation is object ? new CompoundUseSiteInfo<AssemblySymbol>(diagnostics, compilation.Assembly) : CompoundUseSiteInfo<AssemblySymbol>.DiscardedDependencies; 1049ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1101private static Symbol FindMostSpecificImplementation(Symbol interfaceMember, NamedTypeSymbol implementingInterface, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1145ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1257ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, 1457private static bool IsExplicitlyImplementedViaAccessors(bool checkPendingExplicitImplementations, Symbol interfaceMember, TypeSymbol currType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out Symbol implementingMember) 1494private static bool TryGetExplicitImplementationAssociatedPropertyOrEvent(bool checkPendingExplicitImplementations, MethodSymbol interfaceAccessor, TypeSymbol currType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out Symbol associated)
Symbols\TypeSymbol.SymbolAndDiagnostics.cs (3)
21public static readonly SymbolAndDiagnostics Empty = new SymbolAndDiagnostics(null, ReadOnlyBindingDiagnostic<AssemblySymbol>.Empty); 24public readonly ReadOnlyBindingDiagnostic<AssemblySymbol> Diagnostics; 26public SymbolAndDiagnostics(Symbol symbol, ReadOnlyBindingDiagnostic<AssemblySymbol> diagnostics)
Symbols\TypeSymbolExtensions.cs (7)
20public CompoundUseSiteInfo<AssemblySymbol> UseSiteInfo; 26public static bool ImplementsInterface(this TypeSymbol subType, TypeSymbol superInterface, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 673public static bool IsAtLeastAsVisibleAs(this TypeSymbol type, Symbol sym, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 697private static bool IsTypeLessVisibleThan(TypeSymbol type, Symbol sym, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1001internal static bool IsAsRestrictive(this Symbol s1, Symbol sym2, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 1651AssemblySymbol assembly = containingType.ContainingAssembly; 1971var discardedUseSiteInfo = CompoundUseSiteInfo<AssemblySymbol>.Discarded;
Symbols\TypeWithAnnotations.cs (1)
430public bool IsAtLeastAsVisibleAs(Symbol sym, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\UpdatedContainingSymbolLocal.cs (1)
95internal override ReadOnlyBindingDiagnostic<AssemblySymbol> GetConstantValueDiagnostics(BoundExpression boundInitValue) =>
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (2)
Emit\DeterministicTests.cs (1)
337var assembly = module.ContainingAssembly;
Emit\InAttributeModifierTests.cs (1)
4428var assembly = ((Symbols.PublicModel.NonSourceAssemblySymbol)attribute.ContainingAssembly).UnderlyingAssemblySymbol;
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (13)
Attributes\AttributeTests_NativeInteger.cs (1)
1290var assembly = module.ContainingAssembly;
Attributes\AttributeTests_Nullable.cs (9)
800var assembly = module.ContainingAssembly; 814var assembly = module.ContainingAssembly; 844var assembly = module.ContainingAssembly; 867var assembly = module.ContainingAssembly; 889var assembly = module.ContainingAssembly; 911var assembly = module.ContainingAssembly; 934var assembly = module.ContainingAssembly; 957var assembly = module.ContainingAssembly; 973var assembly = module.ContainingAssembly;
Attributes\AttributeTests_Security.cs (1)
38var assembly = module.ContainingAssembly;
Attributes\AttributeTests_Synthesized.cs (1)
375var assembly = m.ContainingAssembly;
Attributes\InternalsVisibleToAndStrongNameTests.cs (1)
2802var assembly = module.ContainingAssembly;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (146)
Symbols\CorLibrary\CorTypes.cs (1)
32var noMsCorLibRef = assemblies[0];
Symbols\ExtensionMethodTests.cs (1)
2495var assembly = module.ContainingAssembly;
Symbols\Metadata\PE\BaseTypeResolution.cs (1)
27var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib);
Symbols\Metadata\PE\LoadingAttributes.cs (3)
32var assembly0 = assemblies[0]; 33var assembly1 = assemblies[1]; 104var assembly1 = assemblies[1];
Symbols\Metadata\PE\LoadingEvents.cs (1)
378var assembly = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.Events);
Symbols\Metadata\PE\LoadingGenericTypeParameters.cs (1)
23var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib);
Symbols\Metadata\PE\LoadingIndexers.cs (1)
602var assembly = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.Indexers);
Symbols\Metadata\PE\LoadingMetadataTokens.cs (1)
46var assembly = peModule.ContainingAssembly;
Symbols\Metadata\PE\LoadingMethods.cs (6)
383var assembly = MetadataTestHelpers.GetSymbolForReference( 407var assembly = MetadataTestHelpers.GetSymbolForReference( 511var assembly = MetadataTestHelpers.GetSymbolForReference( 539var assembly = MetadataTestHelpers.GetSymbolForReference( 606var assembly = MetadataTestHelpers.GetSymbolForReference( 630var assembly = MetadataTestHelpers.GetSymbolForReference(
Symbols\Metadata\PE\LoadingNamespacesAndTypes.cs (6)
26var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib); 40var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib); 125var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib); 170var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib); 173var assembly2 = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.DifferByCase.TypeAndNamespaceDifferByCase); 372var assembly = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.WithSpaces);
Symbols\Metadata\PE\LoadingProperties.cs (2)
25var assembly = MetadataTestHelpers.GetSymbolForReference( 293var assembly = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.Properties);
Symbols\Metadata\PE\MissingTypeReferences.cs (3)
25var assembly = MetadataTestHelpers.GetSymbolForReference(TestReferences.SymbolsTests.MDTestLib2); 284var asm1 = assemblies[0]; 307var asm2 = assemblies[1];
Symbols\Metadata\PE\NoPia.cs (46)
56var localTypes1_1 = assemblies1[0]; 57var localTypes2_1 = assemblies1[1]; 58var pia1_1 = assemblies1[2]; 98var localTypes1_2 = assemblies2[0]; 99var localTypes2_2 = assemblies2[1]; 128var localTypes1_3 = assemblies3[0]; 129var localTypes2_3 = assemblies3[1]; 130var pia1_3 = assemblies3[2]; 189var localTypes1_5 = assemblies5[0]; 190var localTypes2_5 = assemblies5[1]; 226var localTypes1_6 = assemblies6[0]; 227var localTypes2_6 = assemblies6[1]; 257var localTypes1_7 = assemblies7[0]; 258var localTypes2_7 = assemblies7[1]; 289var localTypes1_8 = assemblies8[0]; 290var localTypes2_8 = assemblies8[1]; 291var pia4_8 = assemblies8[2]; 292var pia1_8 = assemblies8[3]; 322var library1_9 = assemblies9[0]; 323var localTypes1_9 = assemblies9[1]; 334var library1_10 = assemblies10[0]; 335var localTypes1_10 = assemblies10[1]; 387var localTypes1_1 = assemblies1[4]; 388var localTypes2_1 = assemblies1[5]; 389var pia1_1 = assemblies1[0]; 439var localTypes1_2 = assemblies2[3]; 440var localTypes2_2 = assemblies2[4]; 469var localTypes1_3 = assemblies3[2]; 470var localTypes2_3 = assemblies3[3]; 515var localTypes1_5 = assemblies5[2]; 516var localTypes2_5 = assemblies5[3]; 560var localTypes1_6 = assemblies6[2]; 561var localTypes2_6 = assemblies6[3]; 590var pia4_7 = assemblies7[0]; 591var localTypes1_7 = assemblies7[2]; 592var localTypes2_7 = assemblies7[3]; 625var localTypes1_8 = assemblies8[3]; 626var localTypes2_8 = assemblies8[4]; 627var pia4_8 = assemblies8[0]; 628var pia1_8 = assemblies8[1]; 657var library1_9 = assemblies9[0]; 658var localTypes1_9 = assemblies9[3]; 669var library1_10 = assemblies10[0]; 670var localTypes1_10 = assemblies10[4]; 714var asmLocalTypes3 = assemblies[0]; 1015var asmLocalTypes3 = assemblies[1];
Symbols\Metadata\PE\TypeAccessibility.cs (1)
23var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib);
Symbols\Metadata\PE\TypeForwarders.cs (2)
1470var assembly = module.ContainingAssembly; 1742var assembly = module.ContainingAssembly;
Symbols\Metadata\PE\TypeKindTests.cs (1)
23var assembly = MetadataTestHelpers.GetSymbolForReference(Net40.References.mscorlib);
Symbols\Retargeting\NoPia.cs (69)
366var localTypes1_1 = assemblies1[0]; 367var localTypes2_1 = assemblies1[1]; 368var pia1_1 = assemblies1[2]; 408var localTypes1_2 = assemblies2[0]; 409var localTypes2_2 = assemblies2[1]; 436var localTypes1_3 = assemblies3[0]; 437var localTypes2_3 = assemblies3[1]; 438var pia1_3 = assemblies3[2]; 495var localTypes1_5 = assemblies5[0]; 496var localTypes2_5 = assemblies5[1]; 530var localTypes1_6 = assemblies6[0]; 531var localTypes2_6 = assemblies6[1]; 560var localTypes1_7 = assemblies7[0]; 561var localTypes2_7 = assemblies7[1]; 591var localTypes1_8 = assemblies8[0]; 592var localTypes2_8 = assemblies8[1]; 593var pia4_8 = assemblies8[2]; 594var pia1_8 = assemblies8[3]; 622var library1_9 = assemblies9[0]; 623var localTypes1_9 = assemblies9[1]; 633var library1_10 = assemblies10[0]; 634var localTypes1_10 = assemblies10[1]; 667var localTypes1_1 = assemblies1[0]; 668var localTypes2_1 = assemblies1[1]; 669var pia1_1 = assemblies1[2]; 709var localTypes1_2 = assemblies2[0]; 710var localTypes2_2 = assemblies2[1]; 737var localTypes1_3 = assemblies3[0]; 738var localTypes2_3 = assemblies3[1]; 739var pia1_3 = assemblies3[2]; 796var localTypes1_5 = assemblies5[0]; 797var localTypes2_5 = assemblies5[1]; 831var localTypes1_6 = assemblies6[0]; 832var localTypes2_6 = assemblies6[1]; 861var localTypes1_7 = assemblies7[0]; 862var localTypes2_7 = assemblies7[1]; 892var localTypes1_8 = assemblies8[0]; 893var localTypes2_8 = assemblies8[1]; 894var pia4_8 = assemblies8[2]; 895var pia1_8 = assemblies8[3]; 923var library1_9 = assemblies9[0]; 924var localTypes1_9 = assemblies9[1]; 934var library1_10 = assemblies10[0]; 935var localTypes1_10 = assemblies10[1]; 971var localTypes1_1 = assemblies1[0]; 972var localTypes2_1 = assemblies1[1]; 973var pia1_1 = assemblies1[2]; 1013var localTypes1_2 = assemblies2[0]; 1014var localTypes2_2 = assemblies2[1]; 1041var localTypes1_3 = assemblies3[0]; 1042var localTypes2_3 = assemblies3[1]; 1043var pia1_3 = assemblies3[2]; 1100var localTypes1_5 = assemblies5[0]; 1101var localTypes2_5 = assemblies5[1]; 1135var localTypes1_6 = assemblies6[0]; 1136var localTypes2_6 = assemblies6[1]; 1165var localTypes1_7 = assemblies7[0]; 1166var localTypes2_7 = assemblies7[1]; 1196var localTypes1_8 = assemblies8[0]; 1197var localTypes2_8 = assemblies8[1]; 1198var pia4_8 = assemblies8[2]; 1199var pia1_8 = assemblies8[3]; 1227var library1_9 = assemblies9[0]; 1228var localTypes1_9 = assemblies9[1]; 1238var library1_10 = assemblies10[0]; 1239var localTypes1_10 = assemblies10[1]; 1346var asmLocalTypes3 = assemblies[0]; 1899var asmLocalTypes3 = assemblies[0]; 1949var asmLocalTypes3 = assemblies[0];