29 instantiations of ExecutableCodeBinder
Microsoft.CodeAnalysis.CSharp (28)
Binder\Binder.IdentifierUsedAsValueFinder.cs (1)
191return new ExecutableCodeBinder(unboundLambda.Syntax, lambdaSymbol, unboundLambda.GetWithParametersBinder(lambdaSymbol, enclosingBinder));
Binder\Binder_Attributes.cs (1)
134var boundAttribute = new ExecutableCodeBinder(node, this.ContainingMemberOrLambda, this).BindAttribute(node, boundAttributeType, (this as ContextualAttributeBinder)?.AttributedMember, diagnostics);
Binder\Binder_Expressions.cs (1)
469return new ExecutableCodeBinder(defaultValueSyntax,
Binder\Binder_Initializers.cs (2)
214Binder parentBinder = new ExecutableCodeBinder( 308binder = new ExecutableCodeBinder(equalsValueClauseNode, fieldSymbol, new LocalScopeBinder(binder));
BoundTree\UnboundLambda.cs (3)
681var lambdaBodyBinder = new ExecutableCodeBinder(_unboundLambda.Syntax, lambdaSymbol, GetWithParametersBinder(lambdaSymbol, Binder)); 773lambdaBodyBinder = new ExecutableCodeBinder(_unboundLambda.Syntax, lambdaSymbol, GetWithParametersBinder(lambdaSymbol, Binder), inExpressionTree ? BinderFlags.InExpressionTree : BinderFlags.None); 960var lambdaBodyBinder = new ExecutableCodeBinder(_unboundLambda.Syntax, lambdaSymbol, GetWithParametersBinder(lambdaSymbol, Binder));
Compilation\AttributeSemanticModel.cs (1)
29: base(syntax, attributeType, new ExecutableCodeBinder(syntax, rootBinder.ContainingMember(), rootBinder), containingPublicSemanticModel, parentRemappedSymbolsOpt)
Compilation\CSharpSemanticModel.cs (5)
235return new ExecutableCodeBinder(expression, binder.ContainingMemberOrLambda, binder).GetBinder(expression); 248return new ExecutableCodeBinder(attribute, binder.ContainingMemberOrLambda, binder).GetBinder(attribute); 415var boundNode = new ExecutableCodeBinder(attribute, binder.ContainingMemberOrLambda, binder).BindAttribute(attribute, attributeType, attributedMember: null, BindingDiagnosticBag.Discarded); 810binder = new ExecutableCodeBinder(constructorInitializer, binder.ContainingMemberOrLambda, binder); 883binder = new ExecutableCodeBinder(constructorInitializer, binder.ContainingMemberOrLambda, binder);
Compilation\InitializerSemanticModel.cs (1)
212binder = new ExecutableCodeBinder(initializer, binder.ContainingMemberOrLambda, binder);
Compilation\MethodBodySemanticModel.cs (5)
191executablebinder = new ExecutableCodeBinder(body, methodSymbol, executablebinder); 217binder = new ExecutableCodeBinder(statement, methodSymbol, binder); 235binder = new ExecutableCodeBinder(expressionBody, methodSymbol, binder); 250binder = new ExecutableCodeBinder(constructorInitializer, methodSymbol, binder); 272binder = new ExecutableCodeBinder(constructorInitializer, primaryCtor, binder);
Compilation\SyntaxTreeSemanticModel.cs (2)
1226new MethodBodySemanticModel.InitialState(node, binder: new ExecutableCodeBinder(node, scriptInitializer, new ScriptLocalScopeBinder(_globalStatementLabels, defaultOuter())))); 1289outer = new ExecutableCodeBinder(initializer, symbol, outer);
Symbols\ConstantValueUtils.cs (1)
64collisionDetector = new ExecutableCodeBinder(initializer, fieldSymbol, collisionDetector);
Symbols\Source\SourceFixedFieldSymbol.cs (1)
87binder = new ExecutableCodeBinder(sizeExpression, binder.ContainingMemberOrLambda, binder).GetBinder(sizeExpression);
Symbols\Source\SourceMemberFieldSymbol.cs (1)
534var executableBinder = new ExecutableCodeBinder(syntaxNode, this, initializerBinder);
Symbols\Source\SourceMemberMethodSymbol.cs (1)
662return inMethod == null ? null : new ExecutableCodeBinder(SyntaxNode, this, inMethod.WithAdditionalFlags(ignoreAccessibility ? BinderFlags.IgnoreAccessibility : BinderFlags.None));
Symbols\Synthesized\Records\SynthesizedPrimaryConstructor.cs (1)
71return new ExecutableCodeBinder(SyntaxNode, this, result.WithAdditionalFlags(ignoreAccessibility ? BinderFlags.IgnoreAccessibility : BinderFlags.None));
Symbols\Synthesized\SynthesizedSimpleProgramEntryPointSymbol.cs (1)
232return new ExecutableCodeBinder(syntaxNode, this, result);
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (1)
CompilationContext.cs (1)
988var executableBinder = new ExecutableCodeBinder(syntax, substitutedSourceMethod, binder,
43 references to ExecutableCodeBinder
Microsoft.CodeAnalysis.CSharp (42)
Binder\Binder.IdentifierUsedAsValueFinder.cs (3)
174var lambdaBodyBinder = CreateLambdaBodyBinder(enclosingBinder, unboundLambda); 178private static ExecutableCodeBinder CreateLambdaBodyBinder(Binder enclosingBinder, UnboundLambda unboundLambda) 538var lambdaBodyBinder = CreateLambdaBodyBinder(enclosingBinder, unboundLambda);
Binder\BinderFactory.BinderFactoryVisitor.cs (2)
116ExecutableCodeBinder bodyBinder = simpleProgram.GetBodyBinder(_factory._ignoreAccessibility); 999ExecutableCodeBinder bodyBinder = simpleProgram.GetBodyBinder(_factory._ignoreAccessibility);
BoundTree\UnboundLambda.cs (5)
681var lambdaBodyBinder = new ExecutableCodeBinder(_unboundLambda.Syntax, lambdaSymbol, GetWithParametersBinder(lambdaSymbol, Binder)); 896(var lambdaSymbol, var block, var lambdaBodyBinder, var diagnostics) = BindWithParameterAndReturnType(parameterTypes, parameterRefKinds, returnType, refKind); 948private (LambdaSymbol lambdaSymbol, BoundBlock block, ExecutableCodeBinder lambdaBodyBinder, BindingDiagnosticBag diagnostics) BindWithParameterAndReturnType( 960var lambdaBodyBinder = new ExecutableCodeBinder(_unboundLambda.Syntax, lambdaSymbol, GetWithParametersBinder(lambdaSymbol, Binder)); 1179(var lambdaSymbol, var block, var lambdaBodyBinder, var diagnostics) = BindWithParameterAndReturnType(parameterTypes, parameterRefKinds, returnType, refKind);
Compilation\MethodBodySemanticModel.cs (1)
178if (binder is ExecutableCodeBinder)
Compilation\SyntaxTreeSemanticModel.cs (2)
1192ExecutableCodeBinder binder = symbol?.TryGetBodyBinder(_binderFactory, this.IgnoresAccessibility); 1239ExecutableCodeBinder binder = symbol?.TryGetBodyBinder(_binderFactory, this.IgnoresAccessibility);
Compiler\MethodBodySynthesizer.Lowered.cs (1)
311internal override ExecutableCodeBinder? TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false) => throw ExceptionUtilities.Unreachable();
Lowering\ClosureConversion\SynthesizedClosureMethod.cs (1)
237internal override ExecutableCodeBinder? TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false)
Lowering\DiagnosticsPass_ExpressionTrees.cs (2)
35ExecutableCodeBinder.ValidateIteratorMethod(compilation, containingSymbol, diagnostics); 142ExecutableCodeBinder.ValidateIteratorMethod(_compilation, node.Symbol, _diagnostics);
Symbols\Source\SourceConstructorSymbol.cs (1)
88internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceCustomEventAccessorSymbol.cs (1)
67internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceDelegateMethodSymbol.cs (1)
34internal sealed override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false) => throw ExceptionUtilities.Unreachable();
Symbols\Source\SourceDestructorSymbol.cs (1)
82internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceMemberFieldSymbol.cs (1)
534var executableBinder = new ExecutableCodeBinder(syntaxNode, this, initializerBinder);
Symbols\Source\SourceMemberMethodSymbol.cs (2)
657internal abstract ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false); 659protected ExecutableCodeBinder TryGetBodyBinderFromSyntax(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceOrdinaryMethodSymbol.cs (1)
296internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourcePropertyAccessorSymbol.cs (1)
245internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceUserDefinedConversionSymbol.cs (1)
99internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Source\SourceUserDefinedOperatorSymbol.cs (1)
99internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Synthesized\Records\SynthesizedPrimaryConstructor.cs (1)
66internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Synthesized\Records\SynthesizedRecordEqualityContractProperty.cs (1)
164internal override ExecutableCodeBinder? TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false) => throw ExceptionUtilities.Unreachable();
Symbols\Synthesized\Records\SynthesizedRecordEqualityOperatorBase.cs (1)
61internal sealed override ExecutableCodeBinder? TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false) => throw ExceptionUtilities.Unreachable();
Symbols\Synthesized\Records\SynthesizedRecordOrdinaryMethod.cs (1)
88internal sealed override ExecutableCodeBinder? TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false) => throw ExceptionUtilities.Unreachable();
Symbols\Synthesized\SynthesizedEventAccessorSymbol.cs (1)
96internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory binderFactoryOpt = null, bool ignoreAccessibility = false)
Symbols\Synthesized\SynthesizedSimpleProgramEntryPointSymbol.cs (9)
25private WeakReference<ExecutableCodeBinder>? _weakBodyBinder; 26private WeakReference<ExecutableCodeBinder>? _weakIgnoreAccessibilityBodyBinder; 213internal override ExecutableCodeBinder TryGetBodyBinder(BinderFactory? binderFactoryOpt = null, bool ignoreAccessibility = false) 218private ExecutableCodeBinder CreateBodyBinder(bool ignoreAccessibility) 235internal ExecutableCodeBinder GetBodyBinder(bool ignoreAccessibility) 237ref WeakReference<ExecutableCodeBinder>? weakBinder = ref ignoreAccessibility ? ref _weakIgnoreAccessibilityBodyBinder : ref _weakBodyBinder; 242if (previousWeakReference != null && previousWeakReference.TryGetTarget(out ExecutableCodeBinder? previousBinder)) 247ExecutableCodeBinder newBinder = CreateBodyBinder(ignoreAccessibility); 248if (Interlocked.CompareExchange(ref weakBinder, new WeakReference<ExecutableCodeBinder>(newBinder), previousWeakReference) == previousWeakReference)
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (1)
CompilationContext.cs (1)
988var executableBinder = new ExecutableCodeBinder(syntax, substitutedSourceMethod, binder,