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)
1088if (!isValueType || (RequiresAssignableVariable(valueKind) && (this.ContainingMemberOrLambda as MethodSymbol)?.IsEffectivelyReadOnly == true)) 1404if (RequiresAssignableVariable(valueKind) && !backingField.ContainingType.IsReferenceType && (this.ContainingMemberOrLambda as MethodSymbol)?.IsEffectivelyReadOnly == true) 1674Symbol containing = this.ContainingMemberOrLambda; 1707if (!(ContainingMemberOrLambda is MethodSymbol method)) 1987var containing = this.ContainingMemberOrLambda; 2142var 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)
38var memberOpt = this.ContainingMemberOrLambda?.ContainingNonLambdaMember(); 472Debug.Assert((object)this.ContainingMemberOrLambda == field); 531Debug.Assert(this.ContainingMemberOrLambda.Kind == SymbolKind.Method 532|| this.ContainingMemberOrLambda.Kind == SymbolKind.Property 533|| this.ContainingMemberOrLambda is NamedTypeSymbol { IsExtension: true }); 1358Symbol container = this.ContainingMemberOrLambda; 2036var containingMethod = this.ContainingMemberOrLambda as MethodSymbol; 2143this.ContainingMemberOrLambda is MethodSymbol { MethodKind: MethodKind.AnonymousFunction or MethodKind.LocalFunction } && 2422return this.ContainingMemberOrLambda.ContainingNonLambdaMember(); 2450var containingMember = this.ContainingMemberOrLambda; 2597Debug.Assert(this.ContainingMemberOrLambda is not null); 2598ParameterSymbol? thisSymbol = this.ContainingMemberOrLambda.EnclosingThisSymbol(); 2601if (thisSymbol is not null && thisSymbol.ContainingSymbol != ContainingMemberOrLambda && thisSymbol.RefKind != RefKind.None) 3277if ((InConstructorInitializer || InFieldInitializer) && ContainingMemberOrLambda.ContainingSymbol.Kind == SymbolKind.NamedType) 3293CheckRestrictedTypeInAsyncMethod(this.ContainingMemberOrLambda, declType.Type, diagnostics, typeSyntax); 11339Debug.Assert(ContainingMemberOrLambda is { }); 11546resultIsUsed = (((SimpleLambdaExpressionSyntax)parent).Body != node) || MethodOrLambdaRequiresValue(ContainingMemberOrLambda, Compilation); 11550resultIsUsed = (((ParenthesizedLambdaExpressionSyntax)parent).Body != node) || MethodOrLambdaRequiresValue(ContainingMemberOrLambda, Compilation); 11554resultIsUsed = (((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)
4264accessedLocalOrParameterOpt = 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);