8 overrides of ContainingMemberOrLambda
Microsoft.CodeAnalysis.CSharp (8)
Binder\Binder_Flags.cs (1)
36internal override Symbol ContainingMemberOrLambda
Binder\BuckStopsHereBinder.cs (1)
158internal override Symbol? ContainingMemberOrLambda
Binder\ExecutableCodeBinder.cs (1)
48internal override Symbol ContainingMemberOrLambda
Binder\InContainerBinder.cs (1)
43internal override Symbol ContainingMemberOrLambda
Binder\InMethodBinder.cs (1)
72internal override Symbol ContainingMemberOrLambda
Binder\ScriptLocalScopeBinder.cs (1)
24internal override Symbol ContainingMemberOrLambda
Binder\WithLambdaParametersBinder.cs (1)
53internal override Symbol ContainingMemberOrLambda
Binder\WithMethodTypeParametersBinder.cs (1)
30internal override Symbol ContainingMemberOrLambda
121 references to ContainingMemberOrLambda
Microsoft.CodeAnalysis.CSharp (119)
Binder\Binder.cs (6)
245return Next.ContainingMemberOrLambda; 426var member = this.ContainingMemberOrLambda; 444var containingMember = this.ContainingMemberOrLambda; 611ReportDiagnosticsIfObsolete(diagnostics, symbol, node, hasBaseReceiver, this.ContainingMemberOrLambda, this.ContainingType, this.Flags); 930var currentContainer = scope.ContainingMemberOrLambda; 931if (currentContainer != null && currentContainer != scope.Next?.ContainingMemberOrLambda)
Binder\Binder.IdentifierUsedAsValueFinder.cs (1)
184enclosingBinder.ContainingMemberOrLambda!,
Binder\Binder.QueryTranslationState.cs (2)
75var result = new RangeVariableSymbol(name, binder.ContainingMemberOrLambda, identifier.GetLocation()); 120return new RangeVariableSymbol(transparentIdentifier, binder.ContainingMemberOrLambda, null, true);
Binder\Binder.ValueChecks.cs (6)
1089if (!isValueType || (RequiresAssignableVariable(valueKind) && (this.ContainingMemberOrLambda as MethodSymbol)?.IsEffectivelyReadOnly == true)) 1432if (RequiresAssignableVariable(valueKind) && !backingField.ContainingType.IsReferenceType && (this.ContainingMemberOrLambda as MethodSymbol)?.IsEffectivelyReadOnly == true) 1702Symbol containing = this.ContainingMemberOrLambda; 1735if (!(ContainingMemberOrLambda is MethodSymbol method)) 2015var containing = this.ContainingMemberOrLambda; 2170var containingMember = ContainingMemberOrLambda;
Binder\Binder_AnonymousTypes.cs (1)
185var member = this.ContainingMemberOrLambda;
Binder\Binder_Attributes.cs (1)
133var boundAttribute = new ExecutableCodeBinder(node, this.ContainingMemberOrLambda, this).BindAttribute(node, boundAttributeType, (this as ContextualAttributeBinder)?.AttributedMember, diagnostics);
Binder\Binder_Await.cs (3)
111var containingMethod = this.ContainingMemberOrLambda as MethodSymbol; 155var containingMemberOrLambda = this.ContainingMemberOrLambda; 303var isRuntimeAsyncEnabled = Compilation.IsRuntimeAsyncEnabledIn(this.ContainingMemberOrLambda);
Binder\Binder_Deconstruct.cs (1)
896CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declTypeWithAnnotations.Type, diagnostics, typeSyntax);
Binder\Binder_Expressions.cs (19)
44var memberOpt = this.ContainingMemberOrLambda?.ContainingNonLambdaMember(); 478Debug.Assert((object)this.ContainingMemberOrLambda == field); 537Debug.Assert(this.ContainingMemberOrLambda.Kind == SymbolKind.Method 538|| this.ContainingMemberOrLambda.Kind == SymbolKind.Property 539|| this.ContainingMemberOrLambda is NamedTypeSymbol { IsExtension: true }); 1364Symbol container = this.ContainingMemberOrLambda; 2042var containingMethod = this.ContainingMemberOrLambda as MethodSymbol; 2149this.ContainingMemberOrLambda is MethodSymbol { MethodKind: MethodKind.AnonymousFunction or MethodKind.LocalFunction } && 2428return this.ContainingMemberOrLambda.ContainingNonLambdaMember(); 2456var containingMember = this.ContainingMemberOrLambda; 2603Debug.Assert(this.ContainingMemberOrLambda is not null); 2604ParameterSymbol? thisSymbol = this.ContainingMemberOrLambda.EnclosingThisSymbol(); 2607if (thisSymbol is not null && thisSymbol.ContainingSymbol != ContainingMemberOrLambda && thisSymbol.RefKind != RefKind.None) 3283if ((InConstructorInitializer || InFieldInitializer) && ContainingMemberOrLambda.ContainingSymbol.Kind == SymbolKind.NamedType) 3299CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declType.Type, diagnostics, typeSyntax); 11351Debug.Assert(ContainingMemberOrLambda is { }); 11558resultIsUsed = (((SimpleLambdaExpressionSyntax)parent).Body != node) || MethodOrLambdaRequiresValue(ContainingMemberOrLambda, Compilation); 11562resultIsUsed = (((ParenthesizedLambdaExpressionSyntax)parent).Body != node) || MethodOrLambdaRequiresValue(ContainingMemberOrLambda, Compilation); 11566resultIsUsed = (((ArrowExpressionClauseSyntax)parent).Expression != node) || MethodOrLambdaRequiresValue(ContainingMemberOrLambda, Compilation);
Binder\Binder_Initializers.cs (2)
147Debug.Assert((ContainingMemberOrLambda is TypeSymbol containing && TypeSymbol.Equals(containing, fieldSymbol.ContainingType, TypeCompareKind.ConsiderEverything2)) || //should be the binder for the type 207Debug.Assert(scriptClassBinder.ContainingMemberOrLambda is NamedTypeSymbol { IsScriptClass: true });
Binder\Binder_Invocation.cs (3)
269if (IsInAsyncMethod() && Compilation.IsRuntimeAsyncEnabledIn(ContainingMemberOrLambda)) 272diagnostics.Add(ErrorCode.ERR_UnsupportedFeatureInRuntimeAsync, node, ContainingMemberOrLambda); 1903ContainingMemberOrLambda is MethodSymbol containingMethod &&
Binder\Binder_NameConflicts.cs (2)
155var containingMemberOrLambda = this.ContainingMemberOrLambda; 165this.Next?.ContainingMemberOrLambda != containingMemberOrLambda;
Binder\Binder_Operators.cs (1)
4262accessedLocalOrParameterOpt = this.ContainingMemberOrLambda.EnclosingThisSymbol();
Binder\Binder_Patterns.cs (3)
898RoslynDebug.Assert(ContainingMemberOrLambda is { }); 899if ((InConstructorInitializer || InFieldInitializer) && ContainingMemberOrLambda.ContainingSymbol.Kind == SymbolKind.NamedType) 908CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declType.Type, diagnostics, typeSyntax ?? (SyntaxNode)designation);
Binder\Binder_Statements.cs (14)
219var method = (MethodSymbol)this.ContainingMemberOrLambda; 482new SourceLabelSymbol((MethodSymbol)ContainingMemberOrLambda, node.Identifier); 1104CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declTypeOpt.Type, localDiagnostics, typeSyntax); 1214ContainingMemberOrLambda, 2985return IsInAsyncMethod(this.ContainingMemberOrLambda as MethodSymbol); 2990var symbol = this.ContainingMemberOrLambda; 2996var symbol = this.ContainingMemberOrLambda; 3002var symbol = this.ContainingMemberOrLambda; 3014var symbol = this.ContainingMemberOrLambda as MethodSymbol; 3046var interactiveInitializerMethod = this.ContainingMemberOrLambda as SynthesizedInteractiveInitializerMethod; 3104var container = this.ContainingMemberOrLambda; 3234if (this.ContainingMemberOrLambda is LambdaSymbol) 3426var lambda = this.ContainingMemberOrLambda as LambdaSymbol; 3571var inferringLambda = this.ContainingMemberOrLambda is MethodSymbol method && (object)method.ReturnType == LambdaSymbol.ReturnTypeIsBeingInferred;
Binder\BinderFactory.BinderFactoryVisitor.cs (10)
436Symbol containingSymbol = binder.ContainingMemberOrLambda; 666var container = ((NamespaceOrTypeSymbol)outer.ContainingMemberOrLambda).GetSourceTypeMember(parent); 701var container = ((NamespaceOrTypeSymbol)outer.ContainingMemberOrLambda).GetSourceTypeMember(parent.Identifier.ValueText, 0, SyntaxKind.EnumDeclaration, parent); 766var typeSymbol = ((NamespaceOrTypeSymbol)resultBinder.ContainingMemberOrLambda).GetSourceTypeMember(parent); 1208result = result.WithContainingMemberOrLambda(outerBinder.ContainingMemberOrLambda); 1263SourceNamedTypeSymbol type = ((NamespaceOrTypeSymbol)outerBinder.ContainingMemberOrLambda).GetSourceTypeMember((TypeDeclarationSyntax)memberSyntax); 1271SourceNamedTypeSymbol type = ((NamespaceOrTypeSymbol)outerBinder.ContainingMemberOrLambda).GetSourceTypeMember((TypeDeclarationSyntax)memberSyntax); 1315SourceNamedTypeSymbol delegateType = ((NamespaceOrTypeSymbol)outerBinder.ContainingMemberOrLambda).GetSourceTypeMember((DelegateDeclarationSyntax)memberSyntax); 1352SourceNamedTypeSymbol typeSymbol = ((NamespaceOrTypeSymbol)outerBinder.ContainingMemberOrLambda).GetSourceTypeMember(typeDeclSyntax); 1371SourceNamedTypeSymbol delegateType = ((NamespaceOrTypeSymbol)outerBinder.ContainingMemberOrLambda).GetSourceTypeMember((DelegateDeclarationSyntax)memberSyntax);
Binder\CatchClauseBinder.cs (1)
34locals.Add(SourceLocalSymbol.MakeLocal(this.ContainingMemberOrLambda, this, allowRefKind: false, allowScoped: false, declarationOpt.Type, declarationOpt.Identifier, LocalDeclarationKind.CatchVariable, initializer: null));
Binder\EmbeddedStatementBinder.cs (1)
56var containingMethod = (MethodSymbol)this.ContainingMemberOrLambda;
Binder\ExecutableCodeBinder.cs (1)
50get { return _memberSymbol ?? Next.ContainingMemberOrLambda; }
Binder\ExpressionVariableFinder.cs (5)
614Debug.Assert(_scopeBinder.ContainingMemberOrLambda != null); 616_scopeBinder.ContainingMemberOrLambda, 636Debug.Assert(_scopeBinder.ContainingMemberOrLambda != null); 638containingSymbol: _scopeBinder.ContainingMemberOrLambda, 664containingSymbol: _scopeBinder.ContainingMemberOrLambda,
Binder\ForEachLoopBinder.cs (3)
89(MethodSymbol)this.ContainingMemberOrLambda, 151this.ContainingMemberOrLambda, 326CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declType.Type, diagnostics, typeSyntax);
Binder\LocalBinderFactory.cs (11)
535Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 548Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 576Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 586Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 596Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 642Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 695Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 731Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 879Debug.Assert((object)_containingMemberOrLambda == _enclosing.ContainingMemberOrLambda); 1052Debug.Assert((object)_containingMemberOrLambda == enclosing.ContainingMemberOrLambda); 1057Debug.Assert((object)_containingMemberOrLambda == enclosing.ContainingMemberOrLambda);
Binder\LocalScopeBinder.cs (3)
334this.ContainingMemberOrLambda, 349this.ContainingMemberOrLambda, 355var containingMethod = (MethodSymbol)this.ContainingMemberOrLambda;
Binder\SwitchBinder.cs (1)
236labels.Add(new SourceLabelSymbol((MethodSymbol)this.ContainingMemberOrLambda, labelSyntax, boundLabelConstantOpt));
Binder\UsingStatementBinder.cs (1)
122CheckRestrictedTypeInAsyncMethod(originalBinder.ContainingMemberOrLambda, expressionOpt.Type, diagnostics, expressionOpt.Syntax);
BoundTree\UnboundLambda.cs (7)
86: this(syntax, unboundLambda.WithNoCache(), (LambdaSymbol)binder.ContainingMemberOrLambda!, body, diagnostics, binder, delegateType) 556Debug.Assert(binder.ContainingMemberOrLambda != null); 740Debug.Assert(Binder.ContainingMemberOrLambda is { }); 750Binder.ContainingMemberOrLambda, 818Debug.Assert(Binder.ContainingMemberOrLambda is { }); 854lambdaSymbol = CreateLambdaSymbol(Binder.ContainingMemberOrLambda, returnType, cacheKey.ParameterTypes, cacheKey.ParameterRefKinds, refKind, refCustomModifiers); 1051var lambdaSymbol = CreateLambdaSymbol(Binder.ContainingMemberOrLambda!,
Compilation\CSharpSemanticModel.cs (6)
236return new ExecutableCodeBinder(expression, binder.ContainingMemberOrLambda, binder).GetBinder(expression); 249return new ExecutableCodeBinder(attribute, binder.ContainingMemberOrLambda, binder).GetBinder(attribute); 418var boundNode = new ExecutableCodeBinder(attribute, binder.ContainingMemberOrLambda, binder).BindAttribute(attribute, attributeType, attributedMember: null, BindingDiagnosticBag.Discarded); 813binder = new ExecutableCodeBinder(constructorInitializer, binder.ContainingMemberOrLambda, binder); 886binder = new ExecutableCodeBinder(constructorInitializer, binder.ContainingMemberOrLambda, binder); 4953return binder == null ? null : binder.ContainingMemberOrLambda.GetPublicSymbol();
Compilation\InitializerSemanticModel.cs (1)
212binder = new ExecutableCodeBinder(initializer, binder.ContainingMemberOrLambda, binder);
Symbols\Source\SourceComplexParameterSymbol.cs (1)
389Debug.Assert(binder.ContainingMemberOrLambda == ContainingSymbol);
Symbols\Source\SourceFixedFieldSymbol.cs (1)
88binder = new ExecutableCodeBinder(sizeExpression, binder.ContainingMemberOrLambda, binder).GetBinder(sizeExpression);
Symbols\TypeWithAnnotations.cs (1)
1184diagnostics.Add(new LazyObsoleteDiagnosticInfo(type, binder.ContainingMemberOrLambda, binder.Flags), syntax.GetLocation());
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (2)
Semantics\ImportsTests.cs (1)
120AliasSymbol.CreateCustomDebugInfoAlias(scratchExternAliases[1].Alias.Target, externAlias1.ExternAliasDirective.Identifier, binder.ContainingMemberOrLambda, isExtern: true),
Semantics\UnsafeTests.cs (1)
5203Assert.Equal(SymbolKind.Method, binder.ContainingMemberOrLambda.Kind);