122 overrides of ContainingSymbol
Microsoft.CodeAnalysis.CSharp (122)
Binder\Binder.ValueChecks.cs (1)
3423public override Symbol ContainingSymbol
CodeGen\Optimizer.cs (1)
2445public override Symbol ContainingSymbol
FlowAnalysis\NullableWalker.PlaceholderLocal.cs (1)
49public override Symbol ContainingSymbol => _containingSymbol;
Lowering\ClosureConversion\SynthesizedClosureEnvironment.cs (1)
147public override Symbol ContainingSymbol => TopLevelMethod.ContainingSymbol;
Lowering\IteratorRewriter\IteratorFinallyMethodSymbol.cs (1)
199public override Symbol ContainingSymbol
Lowering\LocalRewriter\DelegateCacheContainer.cs (1)
46public override Symbol ContainingSymbol => _containingSymbol;
Lowering\LocalRewriter\DynamicSiteContainer.cs (1)
26public override Symbol ContainingSymbol
Lowering\StateMachineRewriter\StateMachineTypeSymbol.cs (1)
34public override Symbol ContainingSymbol
Lowering\StateMachineRewriter\SynthesizedStateMachineProperty.cs (1)
104public override Symbol ContainingSymbol
Symbols\AliasSymbol.cs (1)
209public sealed override Symbol ContainingSymbol
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
64public sealed override Symbol ContainingSymbol
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.FieldSymbol.cs (1)
105public override Symbol ContainingSymbol
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.PropertySymbol.cs (1)
168public override Symbol ContainingSymbol
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.SynthesizedMethodBase.cs (1)
41public sealed override Symbol ContainingSymbol
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeOrDelegateTemplateSymbol.cs (1)
142public sealed override Symbol ContainingSymbol
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeParameterSymbol.cs (1)
127public override Symbol ContainingSymbol
Symbols\ArrayTypeSymbol.cs (1)
303public override Symbol? ContainingSymbol
Symbols\AssemblySymbol.cs (1)
305public sealed override Symbol ContainingSymbol
Symbols\DiscardSymbol.cs (1)
21public override Symbol? ContainingSymbol => null;
Symbols\DynamicTypeSymbol.cs (1)
168public override Symbol? ContainingSymbol
Symbols\ErrorMethodSymbol.cs (1)
106public override Symbol ContainingSymbol
Symbols\ErrorPropertySymbol.cs (1)
42public override Symbol ContainingSymbol { get { return _containingSymbol; } }
Symbols\ErrorTypeSymbol.cs (1)
252public override Symbol? ContainingSymbol
Symbols\ErrorTypeSymbol.ErrorTypeParameterSymbol.cs (1)
42public override Symbol ContainingSymbol
Symbols\Extensions\ReceiverParameterSymbol.cs (1)
22public override Symbol ContainingSymbol
Symbols\Extensions\RewrittenLambdaOrLocalFunctionSymbol.cs (1)
26public override Symbol ContainingSymbol => _containingMethod;
Symbols\Extensions\RewrittenMethodSymbol.cs (1)
145public sealed override Symbol ContainingSymbol
Symbols\Extensions\SourceExtensionImplementationMethodSymbol.cs (1)
64public sealed override Symbol ContainingSymbol => _originalMethod.ContainingType.ContainingSymbol;
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (1)
817public override Symbol? ContainingSymbol => null;
Symbols\FunctionPointers\FunctionPointerParameterSymbol.cs (1)
29public override Symbol ContainingSymbol => _containingSymbol;
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (1)
80public override Symbol? ContainingSymbol => null;
Symbols\FunctionTypeSymbol.cs (1)
110public override Symbol? ContainingSymbol => null;
Symbols\LabelSymbol.cs (1)
155public override Symbol ContainingSymbol
Symbols\MergedNamespaceSymbol.cs (1)
248public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEEventSymbol.cs (1)
220public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEFieldSymbol.cs (1)
163public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEGlobalNamespaceSymbol.cs (1)
36public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
464public override Symbol ContainingSymbol => _containingType;
Symbols\Metadata\PE\PEModuleSymbol.cs (1)
228public override Symbol ContainingSymbol
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
858public override Symbol ContainingSymbol
Symbols\Metadata\PE\PENestedNamespaceSymbol.cs (1)
84public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEParameterSymbol.cs (1)
532public override Symbol ContainingSymbol
Symbols\Metadata\PE\PEPropertySymbol.cs (1)
421public override Symbol ContainingSymbol
Symbols\Metadata\PE\PETypeParameterSymbol.cs (1)
138public override Symbol ContainingSymbol
Symbols\MissingModuleSymbol.cs (1)
90public override Symbol ContainingSymbol
Symbols\MissingNamespaceSymbol.cs (1)
48public override Symbol ContainingSymbol
Symbols\NativeIntegerTypeSymbol.cs (4)
44public override Symbol ContainingSymbol => _underlyingType.ContainingSymbol; 359public override Symbol ContainingSymbol => _container; 459public override Symbol ContainingSymbol => _container; 515public override Symbol ContainingSymbol => _container;
Symbols\PointerTypeSymbol.cs (1)
174public override Symbol? ContainingSymbol
Symbols\RangeVariableSymbol.cs (1)
137public override Symbol ContainingSymbol
Symbols\ReducedExtensionMethodSymbol.cs (2)
455public override Symbol ContainingSymbol 635public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingEventSymbol.cs (1)
132public override Symbol? ContainingSymbol
Symbols\Retargeting\RetargetingFieldSymbol.cs (1)
65public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingMethodSymbol.cs (1)
199public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingModuleSymbol.cs (1)
160public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (1)
257public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingNamespaceSymbol.cs (1)
156public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingParameterSymbol.cs (1)
64public abstract override Symbol ContainingSymbol { get; }
Symbols\Retargeting\RetargetingPropertySymbol.cs (1)
192public override Symbol ContainingSymbol
Symbols\Retargeting\RetargetingTypeParameterSymbol.cs (1)
57public override Symbol ContainingSymbol
Symbols\SignatureOnlyMethodSymbol.cs (1)
91public override Symbol ContainingSymbol { get { return _containingType; } }
Symbols\SignatureOnlyParameterSymbol.cs (1)
99public override Symbol ContainingSymbol { get { throw ExceptionUtilities.Unreachable(); } }
Symbols\SignatureOnlyPropertySymbol.cs (1)
62public override Symbol ContainingSymbol { get { return _containingType; } }
Symbols\Source\CrefTypeParameterSymbol.cs (1)
169public override Symbol ContainingSymbol
Symbols\Source\IndexedTypeParameterSymbol.cs (1)
184public override Symbol ContainingSymbol
Symbols\Source\LambdaSymbol.cs (1)
270public override Symbol ContainingSymbol
Symbols\Source\LocalFunctionSymbol.cs (1)
343public sealed override Symbol ContainingSymbol => _containingSymbol;
Symbols\Source\SourceEventSymbol.cs (1)
98public sealed override Symbol ContainingSymbol
Symbols\Source\SourceFieldSymbol.cs (1)
98public sealed override Symbol ContainingSymbol
Symbols\Source\SourceFixedFieldSymbol.cs (1)
164public override Symbol ContainingSymbol
Symbols\Source\SourceLocalSymbol.cs (1)
293public override Symbol ContainingSymbol
Symbols\Source\SourceMemberContainerSymbol.cs (1)
809public sealed override Symbol ContainingSymbol
Symbols\Source\SourceMemberMethodSymbol.cs (1)
520public sealed override Symbol ContainingSymbol
Symbols\Source\SourceModuleSymbol.cs (1)
460public override Symbol ContainingSymbol
Symbols\Source\SourceNamespaceSymbol.cs (1)
70public override Symbol ContainingSymbol
Symbols\Source\SourceParameterSymbolBase.cs (1)
57public sealed override Symbol ContainingSymbol
Symbols\Source\SourcePropertySymbolBase.cs (1)
527public override Symbol ContainingSymbol
Symbols\Source\SourceTypeParameterSymbol.cs (2)
470public override Symbol ContainingSymbol 616public sealed override Symbol ContainingSymbol
Symbols\Source\ThisParameterSymbol.cs (1)
181public override Symbol ContainingSymbol
Symbols\SubstitutedEventSymbol.cs (1)
38public override Symbol ContainingSymbol
Symbols\SubstitutedFieldSymbol.cs (1)
38public override Symbol ContainingSymbol
Symbols\SubstitutedMethodSymbol.cs (1)
195public sealed override Symbol ContainingSymbol
Symbols\SubstitutedNamedTypeSymbol.cs (1)
126public sealed override Symbol ContainingSymbol
Symbols\SubstitutedParameterSymbol.cs (1)
47public override Symbol ContainingSymbol
Symbols\SubstitutedPropertySymbol.cs (1)
39public override Symbol ContainingSymbol
Symbols\SubstitutedTypeParameterSymbol.cs (1)
58public override Symbol ContainingSymbol
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
157public override Symbol ContainingSymbol => _containingType;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListProperty.cs (1)
49public override Symbol ContainingSymbol => _containingType;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeParameterSymbol.cs (1)
45public override Symbol ContainingSymbol => _containingType;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
870public override Symbol? ContainingSymbol => _containingModule.GlobalNamespace;
Symbols\Synthesized\Records\SynthesizedPrimaryConstructorParameterBackingFieldSymbol.cs (1)
65public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (1)
267public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedCollectionBuilderProjectedMethodSymbol.cs (2)
45public override Symbol ContainingSymbol => this.UnderlyingMethod.ContainingSymbol; 127public override Symbol ContainingSymbol => _methodSymbol;
Symbols\Synthesized\SynthesizedDelegateSymbol.cs (1)
213public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
81public override Symbol ContainingSymbol => _namespace;
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (1)
62public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedFieldSymbolBase.cs (1)
147public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedGlobalMethodSymbol.cs (1)
77public sealed override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
107public override Symbol ContainingSymbol => _namespace;
Symbols\Synthesized\SynthesizedImplementationMethod.cs (1)
115public sealed override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (2)
74public override Symbol? ContainingSymbol => _containingModule.GlobalNamespace; 250public override Symbol ContainingSymbol => _container;
Symbols\Synthesized\SynthesizedInstanceConstructor.cs (1)
55public sealed override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedInteractiveInitializerMethod.cs (1)
54public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedIntrinsicOperatorSymbol.cs (1)
315public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedLocal.cs (1)
128public sealed override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedParameterSymbol.cs (1)
128public override Symbol? ContainingSymbol
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
67public override Symbol ContainingSymbol => _globalNamespace;
Symbols\Synthesized\SynthesizedPropertySymbol.cs (2)
30public override Symbol ContainingSymbol => _backingField.ContainingSymbol; 61public override Symbol ContainingSymbol => _property.ContainingSymbol;
Symbols\Synthesized\SynthesizedSealedPropertyAccessor.cs (1)
48public override Symbol ContainingSymbol
Symbols\Synthesized\SynthesizedStaticConstructor.cs (1)
22public override Symbol ContainingSymbol
Symbols\Synthesized\TypeSubstitutedLocalSymbol.cs (1)
65public override Symbol ContainingSymbol
Symbols\SynthesizedNamespaceSymbol.cs (1)
55public override Symbol ContainingSymbol
Symbols\SynthesizedSimpleMethodTypeParameterSymbol.cs (1)
91public override Symbol ContainingSymbol
Symbols\Tuples\TupleFieldSymbol.cs (1)
117public sealed override Symbol ContainingSymbol
Symbols\UpdatedContainingSymbolLocal.cs (1)
40public override Symbol ContainingSymbol { get; }
256 references to ContainingSymbol
Microsoft.CodeAnalysis.CSharp (256)
Binder\Binder.CapturedParametersFinder.cs (1)
155if (candidate is ParameterSymbol parameter && parameter.ContainingSymbol == (object)_primaryConstructor)
Binder\Binder.ValueChecks.cs (4)
108return implementationMethod.AsMember(method.ContainingSymbol.ContainingType). 1432parameterSymbol.ContainingSymbol is SynthesizedPrimaryConstructor primaryConstructor && 3389Debug.Assert(underlyingParameter.ContainingSymbol is MethodSymbol); 3425get { return _underlyingParameter.ContainingSymbol; }
Binder\Binder_Constraints.cs (4)
411Symbol containingSymbol = typeParameter.ContainingSymbol; 466MethodSymbol method => (TypeSymbol)method.ContainingSymbol, 557typeWithAnnotations.DefaultType is TypeParameterSymbol typeParameterInConstraint && typeParameterInConstraint.ContainingSymbol == (object)typeParameter.ContainingSymbol)
Binder\Binder_Expressions.cs (21)
58if (memberOpt is { ContainingSymbol: NamedTypeSymbol { IsExtension: true } }) 491if (field is { IsStatic: false, RefKind: RefKind.None, ContainingSymbol: SourceMemberContainerTypeSymbol { PrimaryConstructor: { } primaryConstructor } } && 524var binder = new LocalScopeBinder(this.WithContainingMemberOrLambda(parameter.ContainingSymbol).WithAdditionalFlags(BinderFlags.ParameterDefaultValue)); 526parameter.ContainingSymbol, 1836if (symbol.ContainingSymbol is NamedTypeSymbol { OriginalDefinition: var symbolContainerDefinition } && 1842membersOpt?.Any(static (m, containingTypeDefinition) => m.ContainingSymbol.OriginalDefinition == (object)containingTypeDefinition, containingTypeDefinition) != true) 1880shadowedParameter.ContainingSymbol == (object)primaryConstructor) 2043if ((object)containingMethod != null && (object)symbol.ContainingSymbol != (object)containingMethod) 2046Debug.Assert(!symbol.ContainingSymbol.Equals(containingMethod)); 2083var primaryCtor = parameter.ContainingSymbol as SynthesizedPrimaryConstructor; 2095(object)this.ContainingMember().ContainingSymbol != parameter.ContainingSymbol) && 2099if (this.ContainingMember() is { IsStatic: true } && !InParameterDefaultValue && !InAttributeArgument && (object)this.ContainingMember().ContainingSymbol == parameter.ContainingSymbol) 2346(object)containingMember.ContainingSymbol != primaryCtor.ContainingSymbol); // The member doesn't belong to our type, i.e. from nested type 2351if (symbol.ContainingSymbol is SynthesizedSimpleProgramEntryPointSymbol && 2478containingMember = containingMember.ContainingSymbol; 2618if (thisSymbol is not null && thisSymbol.ContainingSymbol != ContainingMemberOrLambda && thisSymbol.RefKind != RefKind.None) 3294if ((InConstructorInitializer || InFieldInitializer) && ContainingMemberOrLambda.ContainingSymbol.Kind == SymbolKind.NamedType) 3872var receiverParameter = ((NamedTypeSymbol)methodResult.Member.ContainingSymbol).ExtensionParameter; 5241parameter.ContainingSymbol == (object)primaryConstructor)
Binder\Binder_Lookup.cs (3)
685x = x.ContainingSymbol; 686y = y.ContainingSymbol; 1702for (Symbol s = symbol; (object)s != null; s = s.ContainingSymbol)
Binder\Binder_NameConflicts.cs (6)
25=> symbol.TryGetFirstLocation() ?? symbol.ContainingSymbol.GetFirstLocation(); 70if (tp.ContainingSymbol is NamedTypeSymbol { IsExtension: true }) 72if (p.ContainingSymbol != (object)tp.ContainingSymbol) // Otherwise, SynthesizedExtensionMarker is going to report an error about this conflict 90if (parameters[0] is { ContainingSymbol: NamedTypeSymbol { IsExtension: true }, Name: var receiverName } && receiverName == name) 164return containingMemberOrLambda.ContainingSymbol?.Kind == SymbolKind.NamedType &&
Binder\Binder_Operators.cs (1)
4272if (parameterSymbol.ContainingSymbol is SynthesizedPrimaryConstructor primaryConstructor &&
Binder\Binder_Patterns.cs (3)
1493if ((InConstructorInitializer || InFieldInitializer) && ContainingMemberOrLambda.ContainingSymbol.Kind == SymbolKind.NamedType) 1559type.ContainingSymbol is var declContainer && declContainer.Kind == SymbolKind.Namespace && declContainer.Name == "System" && 1560(declContainer.ContainingSymbol as NamespaceSymbol)?.IsGlobalNamespace == true;
Binder\Binder_Symbols.cs (5)
1541if (colorColorValueSymbol is ParameterSymbol { ContainingSymbol: SynthesizedPrimaryConstructor primaryConstructor } parameter && 1975if (aLocationsCount == 0 && bLocationsCount == 0) return Compare(fst.ContainingSymbol, snd.ContainingSymbol); 1979int containerResult = Compare(fst.ContainingSymbol, snd.ContainingSymbol);
Binder\BinderFactory.cs (1)
129if (memberOpt is { ContainingSymbol: SourceMemberContainerTypeSymbol container })
Binder\ContextualAttributeBinder.cs (1)
54for (; (object)symbol != null; symbol = symbol.ContainingSymbol)
Binder\InMethodBinder.cs (1)
296if (parameter.ContainingSymbol is NamedTypeSymbol { IsExtension: true })
Binder\LocalBinderFactory.cs (3)
312ParameterSymbol parameter when parameter.ContainingSymbol is not NamedTypeSymbol => getAllParameters(parameter), 326switch (parameter.ContainingSymbol) 340switch (typeParameter.ContainingSymbol)
Binder\RefSafetyAnalysis.cs (2)
222Debug.Assert(_localEscapeScopes?.ContainsKey(local) == true || _symbol != local.ContainingSymbol); 492_symbol != node.LocalSymbol.ContainingSymbol);
Binder\Semantics\AccessCheck.cs (1)
80symbol = symbol.ContainingSymbol;
Binder\Semantics\Conversions\ConversionsBase.cs (1)
3263ContainingSymbol: { Kind: SymbolKind.Namespace },
Binder\Semantics\OverloadResolution\OverloadResolution.cs (2)
204members.All(static m => m.ContainingSymbol is NamedTypeSymbol { BaseTypeNoUseSiteDiagnostics.SpecialType: SpecialType.System_Object })); 2688bool isExtensionParameterOfStaticExtensionMember = parameter is { ContainingSymbol: NamedTypeSymbol { IsExtension: true, ExtensionParameter: var extensionParameter } }
BoundTree\BoundInlineArrayAccess.cs (4)
22ContainingSymbol: NamespaceSymbol 25ContainingSymbol: NamespaceSymbol { IsGlobalNamespace: true } 52ContainingSymbol: NamespaceSymbol 55ContainingSymbol: NamespaceSymbol { IsGlobalNamespace: true }
CodeGen\CodeGenerator_HasHome.cs (2)
75if (!IsAnyReadOnly(addressKind) && containingSymbol is MethodSymbol { ContainingSymbol: NamedTypeSymbol, IsEffectivelyReadOnly: true }) 245if (!TypeSymbol.Equals(field.ContainingType, containingSymbol.ContainingSymbol as NamedTypeSymbol, TypeCompareKind.AllIgnoreOptions))
CodeGen\EmitExpression.cs (1)
1394if (!sym.ContainingSymbol.IsStatic)
Compilation\CSharpCompilation.cs (2)
3819Debug.Assert(symbol.ContainingSymbol.Kind == SymbolKind.Namespace); // avoid unnecessary traversal of nested types 4956symbol = symbol.ContainingSymbol;
Compiler\ClsComplianceChecker.cs (1)
680Symbol container = parameters[0].ContainingSymbol;
Compiler\DocumentationCommentCompiler.cs (1)
1339if (!parameter.ContainingSymbol.IsAccessor() && !documentedParameters.Add(parameter))
Compiler\DocumentationCommentCompiler.IncludeElementExpander.cs (2)
552Symbol containingSymbol = memberSymbol.ContainingSymbol; 606currentSymbol = currentSymbol.ContainingSymbol;
Compiler\MethodBodySynthesizer.cs (1)
282field.IsStatic || field.ContainingSymbol is NamedTypeSymbol { IsExtension: true } ? null : new BoundThisReference(syntax, accessor.ThisParameter.Type),
DocumentationComments\DocumentationCommentIDVisitor.PartVisitor.cs (2)
152Symbol containingSymbol = symbol.ContainingSymbol; 177Symbol containingSymbol = symbol.ContainingSymbol;
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (3)
263var otherContainer = Visit(@namespace.ContainingSymbol); 335var otherContainer = this.Visit(sourceType.ContainingSymbol); 453var otherContainer = Visit(symbol.ContainingSymbol);
Emitter\Model\PEModuleBuilder.cs (1)
1545var container = param.ContainingSymbol;
Emitter\Model\TypeParameterSymbolAdapter.cs (8)
65if (AdaptedTypeParameterSymbol.ContainingSymbol.Kind == SymbolKind.Method) 80if (AdaptedTypeParameterSymbol.ContainingSymbol.Kind == SymbolKind.Method) 100if (AdaptedTypeParameterSymbol.ContainingSymbol.Kind == SymbolKind.NamedType) 115if (AdaptedTypeParameterSymbol.ContainingSymbol.Kind == SymbolKind.NamedType) 222return ((MethodSymbol)AdaptedTypeParameterSymbol.ContainingSymbol).GetCciAdapter(); 231return ((NamedTypeSymbol)AdaptedTypeParameterSymbol.ContainingSymbol).GetCciAdapter(); 347return ((MethodSymbol)AdaptedTypeParameterSymbol.ContainingSymbol).GetCciAdapter(); 356return ((NamedTypeSymbol)AdaptedTypeParameterSymbol.ContainingSymbol).GetCciAdapter();
FlowAnalysis\DataFlowsOutWalker.cs (1)
234param.ContainingSymbol is SynthesizedPrimaryConstructor); // Primary constructor parameter can be used in other initializers and methods
FlowAnalysis\DefiniteAssignment.cs (6)
341case MethodSymbol { IsStatic: false, ContainingSymbol: SourceMemberContainerTypeSymbol { PrimaryConstructor: { } primaryConstructor } } and 357case (FieldSymbol or PropertySymbol) and { IsStatic: false, ContainingSymbol: SourceMemberContainerTypeSymbol { PrimaryConstructor: { } primaryConstructor } }: 641!(captured is ParameterSymbol { ContainingSymbol: SynthesizedPrimaryConstructor primaryConstructor } parameter && 698if (symbol is ParameterSymbol { ContainingSymbol: SynthesizedPrimaryConstructor } parameter) 1802Symbol containing = current.ContainingSymbol; 1910if (!parameter.IsThis && parameter.RefKind != RefKind.Out && parameter.ContainingSymbol is SynthesizedPrimaryConstructor primaryCtor)
FlowAnalysis\DefiniteAssignment.LocalFunctions.cs (1)
167symbol = symbol.ContainingSymbol;
FlowAnalysis\EmptyStructTypeCache.cs (1)
255for (; symbol != null && symbol.Kind != SymbolKind.Namespace; symbol = symbol.ContainingSymbol)
FlowAnalysis\NullableWalker.cs (10)
2266var container = method.ContainingSymbol; 2284if (symbol is ParameterSymbol { ContainingSymbol: SynthesizedPrimaryConstructor primaryConstructor } parameter && 2293enclosingMemberMethod = enclosingMemberMethod.ContainingSymbol as MethodSymbol; 2297methodThisParameter?.ContainingSymbol.ContainingSymbol == (object)primaryConstructor.ContainingSymbol && 2401var containingSymbol = parameterOpt?.ContainingSymbol; 7397&& GetTypeOrReturnType(parameter.ContainingSymbol).SpecialType != SpecialType.System_Boolean) 7946while (current.ContainingSymbol is MethodSymbol container) 8487parameter.ContainingSymbol is MethodSymbol method && 11376parameter.ContainingSymbol is not SynthesizedPrimaryConstructor primaryConstructor || !primaryConstructor.GetCapturedParameters().ContainsKey(parameter):
FlowAnalysis\NullableWalker.Variables.cs (2)
216Debug.Assert(!(method.ContainingSymbol is MethodSymbol containingMethod) || 358if (symbol.ContainingSymbol is MethodSymbol method &&
FlowAnalysis\ReadWriteWalker.cs (1)
107Symbol containing = current.ContainingSymbol;
Lowering\BoundTreeToDifferentEnclosingContextRewriter.cs (1)
64(!EnforceAccurateContainerForLocals || local.ContainingSymbol == CurrentMethod))
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (3)
632Debug.Assert(symbol.ContainingSymbol != null); 633if (symbol.ContainingSymbol != _currentFunction.OriginalMethodSymbol) 641while (function != null && symbol.ContainingSymbol != function.OriginalMethodSymbol)
Lowering\ClosureConversion\SynthesizedClosureEnvironment.cs (1)
147public override Symbol ContainingSymbol => TopLevelMethod.ContainingSymbol;
Lowering\ExtensionMethodReferenceRewriter.cs (1)
158method = implementationMethod.AsMember(method.ContainingSymbol.ContainingType).
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
317int ordinal = parameter.ContainingSymbol.IsExtensionBlockMember()
Lowering\LocalRewriter\DelegateCacheRewriter.cs (2)
142for (; enclosingSymbol is MethodSymbol enclosingMethod; enclosingSymbol = enclosingSymbol.ContainingSymbol) 183for (; enclosingSymbol is MethodSymbol enclosingMethod; enclosingSymbol = enclosingSymbol.ContainingSymbol)
Lowering\LocalRewriter\DynamicSiteContainer.cs (3)
19(topLevelMethod.ContainingSymbol is NamedTypeSymbol { IsExtension: true } extensionType ? extensionType.TypeParameters : []).Concat( 30var containingSymbol = _topLevelMethod.ContainingSymbol; 33return containingSymbol.ContainingSymbol;
Lowering\LocalRewriter\LocalRewriter.cs (1)
318if (node.ParameterSymbol.ContainingSymbol is SynthesizedPrimaryConstructor primaryCtor &&
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
645return expression is BoundParameter { ParameterSymbol: { ContainingSymbol: SynthesizedPrimaryConstructor primaryCtor } parameter } &&
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (3)
118Debug.Assert(!allVariables.Any((s, method) => s.Symbol is ParameterSymbol { ContainingSymbol: var container } && container != method && container is not SynthesizedPrimaryConstructor, method)); 128!(symbol is ParameterSymbol { ContainingSymbol: var container } && container != method)) // Not interested in force hoisting parameters that do not belong to our method 308if (node.ParameterSymbol.ContainingSymbol == topLevelMethod)
Symbols\AnonymousTypes\AnonymousTypeManager.Templates.cs (4)
370var xOwner = x.ContainingSymbol; 371var yOwner = y.ContainingSymbol; 389var other = symbol.ContainingSymbol; 396other = other.ContainingSymbol;
Symbols\Compilation_WellKnownMembers.cs (2)
1234if (typeParam.ContainingSymbol.Kind != SymbolKind.Method) 1248if (typeParam.ContainingSymbol.Kind != SymbolKind.NamedType)
Symbols\ConstraintsHelper.cs (6)
173if (constraintTypeParameter.ContainingSymbol == typeParameter.ContainingSymbol) 245if (underlyingTypeParameter.ContainingSymbol == typeParameter.ContainingSymbol) 915Debug.Assert(typeParameters.All(tp => ReferenceEquals(tp.ContainingSymbol, constructedContainingSymbol.OriginalDefinition))); 1067Debug.Assert(ReferenceEquals(typeParameter.ContainingSymbol, constructedContainingSymbol.OriginalDefinition));
Symbols\ConstructedMethodSymbol.cs (1)
19: base(containingSymbol: constructedFrom.ContainingSymbol,
Symbols\ConstructedNamedTypeSymbol.cs (1)
63: base(newContainer: constructedFrom.ContainingSymbol,
Symbols\EventSymbol.cs (1)
268Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition));
Symbols\Extensions\SourceExtensionImplementationMethodSymbol.cs (5)
64public sealed override Symbol ContainingSymbol => _originalMethod.ContainingType.ContainingSymbol; 140if (underlyingParameter.ContainingSymbol is NamedTypeSymbol) 147if (underlyingParameter.ContainingSymbol.IsStatic) 217if (originalIndexes.IsDefaultOrEmpty || this._underlyingParameter.ContainingSymbol.IsStatic) 224Debug.Assert(_underlyingParameter.ContainingSymbol is not NamedTypeSymbol);
Symbols\FieldSymbol.cs (1)
330Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition));
Symbols\MemberSymbolExtensions.cs (2)
98return member is { ContainingSymbol: NamedTypeSymbol { IsExtension: true }, OriginalDefinition: not SynthesizedExtensionMarker }; 103return member.ContainingSymbol is NamedTypeSymbol { IsExtension: true };
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
589s = s.ContainingSymbol;
Symbols\Metadata\PE\PEParameterSymbol.cs (2)
317var accessSymbol = containingSymbol.Kind == SymbolKind.Property ? containingSymbol.ContainingSymbol : containingSymbol; 920if (ContainingSymbol is { IsStatic: false, ContainingSymbol: NamedTypeSymbol { IsExtension: true, ExtensionParameter.Name: var extensionParameterName } }
Symbols\Metadata\PE\PETypeParameterSymbol.cs (1)
672Debug.Assert(!inProgress.Any() || ReferenceEquals(inProgress.Head.ContainingSymbol, this.ContainingSymbol));
Symbols\MethodSymbol.cs (2)
907Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition)); 1081method = method.ContainingSymbol as MethodSymbol;
Symbols\ModuleSymbol.cs (1)
43return (AssemblySymbol)ContainingSymbol;
Symbols\NamedTypeSymbol.cs (3)
118return this.ContainingSymbol as NamedTypeSymbol; 1595Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition)); 2017ContainingSymbol?.Kind == SymbolKind.Namespace &&
Symbols\NativeIntegerTypeSymbol.cs (2)
44public override Symbol ContainingSymbol => _underlyingType.ContainingSymbol; 88Debug.Assert(_underlyingType.Equals(underlyingMember.ContainingSymbol));
Symbols\ObsoleteAttributeHelpers.cs (1)
91symbol = symbol.ContainingSymbol;
Symbols\ParameterSymbol.cs (1)
169(refKind == RefKind.Ref && ContainingSymbol.ContainingType.IsComImport));
Symbols\PropertySymbol.cs (1)
381Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition));
Symbols\PublicModel\Symbol.cs (1)
67return UnderlyingSymbol.ContainingSymbol.GetPublicSymbol();
Symbols\ReducedExtensionMethodSymbol.cs (2)
265if (reducedFromTypeParameter.ContainingSymbol != _reducedFrom) 457get { return _reducedFrom.ContainingSymbol; }
Symbols\Retargeting\RetargetingEventSymbol.cs (1)
136return this.RetargetingTranslator.Retarget(_underlyingEvent.ContainingSymbol);
Symbols\Retargeting\RetargetingFieldSymbol.cs (1)
69return this.RetargetingTranslator.Retarget(_underlyingField.ContainingSymbol);
Symbols\Retargeting\RetargetingMethodSymbol.cs (1)
203return this.RetargetingTranslator.Retarget(_underlyingMethod.ContainingSymbol);
Symbols\Retargeting\RetargetingNamedTypeSymbol.cs (2)
261return this.RetargetingTranslator.Retarget(_underlyingType.ContainingSymbol); 303Debug.Assert((object)_underlyingType == underlyingResult.ContainingSymbol);
Symbols\Retargeting\RetargetingNamespaceSymbol.cs (1)
160return this.RetargetingTranslator.Retarget(_underlyingNamespace.ContainingSymbol);
Symbols\Retargeting\RetargetingPropertySymbol.cs (1)
196return this.RetargetingTranslator.Retarget(_underlyingProperty.ContainingSymbol);
Symbols\Retargeting\RetargetingSymbolTranslator.cs (3)
322if (type.ContainingSymbol.Kind != SymbolKind.NamedType && 1048Debug.Assert((object)typeParameter.ContainingSymbol == _toFind); 1060if ((object)containingType == typeParameter.ContainingSymbol)
Symbols\Retargeting\RetargetingTypeParameterSymbol.cs (1)
61return this.RetargetingTranslator.Retarget(_underlyingTypeParameter.ContainingSymbol);
Symbols\Source\LocalFunctionSymbol.cs (3)
471if (tpEnclosing.ContainingSymbol.Kind == SymbolKind.Method) 478Debug.Assert(tpEnclosing.ContainingSymbol.Kind == SymbolKind.NamedType); 482diagnostics.Add(typeError, location, name, tpEnclosing.ContainingSymbol);
Symbols\Source\ParameterHelpers.cs (2)
323refKind: parameter.RefKind, containingSymbol: parameter.ContainingSymbol, thisKeyword: thisKeyword, paramsKeyword: paramsKeyword, firstDefault: firstDefault, diagnostics: diagnostics); 1119for (Symbol current = symbol; (object)current != null; current = current.ContainingSymbol)
Symbols\Source\SourceAssemblySymbol.cs (1)
2862string fullEmittedName = MetadataHelpers.BuildQualifiedName(originalDefinition.ContainingSymbol.ToDisplayString(SymbolDisplayFormat.QualifiedNameOnlyFormat),
Symbols\Source\SourceComplexParameterSymbol.cs (2)
707Symbol containingSymbol = parameter.ContainingSymbol; 1706if (ContainingSymbol.ContainingSymbol is NamedTypeSymbol) // No need to check for lambdas or local function
Symbols\Source\SourceMethodSymbol.cs (1)
45if (ContainingSymbol is SourceMethodSymbol method)
Symbols\Source\SourceMethodSymbolWithAttributes.cs (3)
424if (ContainingSymbol is SourceMemberContainerTypeSymbol { AnyMemberHasAttributes: false }) 849for (MethodSymbol? current = this; current is object; current = current.ContainingSymbol as MethodSymbol) 1487if (ContainingSymbol is NamedTypeSymbol { IsComImport: true, TypeKind: TypeKind.Class or TypeKind.Interface })
Symbols\Source\SourceOrdinaryMethodSymbol.cs (1)
1180if (tpEnclosing.ContainingSymbol is NamedTypeSymbol { IsExtension: true })
Symbols\Source\SourceTypeParameterSymbol.cs (9)
129var sourceMethod = this.ContainingSymbol as SourceOrdinaryMethodSymbol; 184var sourceMethod = this.ContainingSymbol as SourceOrdinaryMethodSymbol; 190binderOpt: (ContainingSymbol as LocalFunctionSymbol)?.WithTypeParametersBinder); 225Debug.Assert(!inProgress.Any() || ReferenceEquals(inProgress.Head.ContainingSymbol, this.ContainingSymbol)); 288switch (this.ContainingSymbol) 298throw ExceptionUtilities.UnexpectedValue(this.ContainingSymbol); 369Debug.Assert(this.ContainingSymbol.IsContainingSymbolOfAllTypeParameters(this.EffectiveBaseClassNoUseSiteDiagnostics)); 370Debug.Assert(this.ContainingSymbol.IsContainingSymbolOfAllTypeParameters(this.DeducedBaseTypeNoUseSiteDiagnostics));
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (1)
928(object)p.ContainingSymbol == containingType &&
Symbols\Source\TypeParameterConstraintClause.cs (4)
168Symbol container = thisTypeParameter.ContainingSymbol; 175if (type is TypeParameterSymbol typeParameter && (object)typeParameter.ContainingSymbol == (object)container) 228Symbol container = thisTypeParameter.ContainingSymbol; 237if ((object)typeParameter.ContainingSymbol == (object)container)
Symbols\SubstitutedTypeParameterSymbol.cs (1)
23Debug.Assert(ContainingSymbol.OriginalDefinition == _underlyingTypeParameter.ContainingSymbol.OriginalDefinition);
Symbols\Symbol.cs (14)
116Symbol container = this.ContainingSymbol; 147for (var container = this.ContainingSymbol; (object)container != null; container = container.ContainingSymbol) 170var container = this.ContainingSymbol; 216return ContainingSymbol?.DeclaringCompilation; 309ISymbolInternal ISymbolInternal.ContainingSymbol => this.ContainingSymbol; 341var container = this.ContainingSymbol; 944return this.ContainingSymbol.IsDefinedInSourceTree(tree, definedWithinSpan, cancellationToken); 1040if (ContainingSymbol is SourceMemberContainerTypeSymbol container) 1651return GetLocalNullableContextValue() ?? ContainingSymbol?.GetNullableContextValue(); 1724byte containingValue = ContainingSymbol?.GetNullableContextValue() ?? 0; 1775&& variable is ParameterSymbol { ContainingSymbol: NamedTypeSymbol { IsExtension: true } }) 1784for (var currentFunction = variable.ContainingSymbol; 1786currentFunction = currentFunction.ContainingSymbol)
Symbols\Symbol_Attributes.cs (1)
975this.ContainingSymbol?.ForceCompleteObsoleteAttribute();
Symbols\SymbolExtensions.cs (8)
132var containingSymbol = symbol.ContainingSymbol; 152containingMember = containingMember.ContainingSymbol; 173symbol = method.ContainingSymbol; 241var symbol = type.ContainingSymbol; 242for (; ((object?)containingSymbol != null) && (containingSymbol.Kind != SymbolKind.Namespace); containingSymbol = containingSymbol.ContainingSymbol) 355Symbol? containingSymbol = symbol.ContainingSymbol; 826return parameter.ContainingSymbol is NamedTypeSymbol { IsExtension: true }; 832return parameter.ContainingSymbol is SourceExtensionImplementationMethodSymbol implementationMethod
Symbols\Synthesized\Records\SynthesizedPrimaryConstructorParameterBackingFieldSymbol.cs (3)
66=> ParameterSymbol.ContainingSymbol.ContainingSymbol; 69=> ParameterSymbol.ContainingSymbol.ContainingType;
Symbols\Synthesized\SynthesizedCollectionBuilderProjectedMethodSymbol.cs (1)
45public override Symbol ContainingSymbol => this.UnderlyingMethod.ContainingSymbol;
Symbols\Synthesized\SynthesizedContainer.cs (3)
60if (ContainingSymbol.Kind == SymbolKind.NamedType && ContainingSymbol.IsImplicitlyDeclared) 65var compilation = ContainingSymbol.DeclaringCompilation;
Symbols\Synthesized\SynthesizedTypeParameterSymbol.cs (1)
28Debug.Assert(ContainingSymbol.OriginalDefinition != _underlyingTypeParameter.ContainingSymbol.OriginalDefinition);
Symbols\Tuples\TupleTypeSymbol.cs (1)
1082Debug.Assert((object)underlyingAssociatedField.ContainingSymbol == TupleUnderlyingType);
Symbols\TypeMap.cs (2)
122bool synthesized = !ReferenceEquals(oldTypeParameters[0].ContainingSymbol.OriginalDefinition, newOwner.OriginalDefinition); 178oldOwner = oldOwner.ContainingSymbol.OriginalDefinition as MethodSymbol;
Symbols\TypeParameterSymbol.cs (5)
128return this.ContainingSymbol as MethodSymbol; 139return this.ContainingSymbol as NamedTypeSymbol; 674return other.ContainingSymbol.ContainingType.Equals(this.ContainingSymbol.ContainingType, comparison); 679return Hash.Combine(ContainingSymbol, Ordinal);
Symbols\TypeSymbolExtensions.cs (9)
375return p.ContainingSymbol.Kind == SymbolKind.Method; 524if (IsNamespaceName(type.ContainingSymbol, s_expressionsNamespaceName)) 540if (IsNamespaceName(type.ContainingSymbol, s_expressionsNamespaceName) && 602symbol = symbol.ContainingSymbol; 1057for (Symbol s2 = sym2; s2.Kind != SymbolKind.Namespace; s2 = s2.ContainingSymbol) 1262(type, typeParameterContainer, unused) => type.TypeKind == TypeKind.TypeParameter && (object)type.ContainingSymbol == (object)typeParameterContainer; 1318(type, _, _) => type.TypeKind == TypeKind.TypeParameter && type.ContainingSymbol is MethodSymbol; 1847methodOrType = methodOrType.ContainingSymbol; 1861var container = type.ContainingSymbol;
Symbols\UpdatedContainingSymbolLocal.cs (1)
70ContainingSymbol.Equals(otherLocal.ContainingSymbol, compareKind));