1 write to _bound
Microsoft.CodeAnalysis.CSharp (1)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
102
_bound
= new SyntheticBoundNodeFactory(null, compilationState.Type, node, compilationState, diagnostics);
147 references to _bound
Microsoft.CodeAnalysis.CSharp (147)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (147)
31
_ExpressionType =
_bound
.WellKnownType(WellKnownType.System_Linq_Expressions_Expression);
44
_ParameterExpressionType =
_bound
.WellKnownType(WellKnownType.System_Linq_Expressions_ParameterExpression);
57
_ElementInitType =
_bound
.WellKnownType(WellKnownType.System_Linq_Expressions_ElementInit);
71
_MemberBindingType =
_bound
.WellKnownType(WellKnownType.System_Linq_Expressions_MemberBinding);
90
_MemberInfoType =
_bound
.WellKnownType(WellKnownType.System_Reflection_MemberInfo);
98
private BindingDiagnosticBag Diagnostics { get { return
_bound
.Diagnostics; } }
103
_int32Type =
_bound
.SpecialType(SpecialType.System_Int32);
104
_objectType =
_bound
.SpecialType(SpecialType.System_Object);
105
_nullableType =
_bound
.SpecialType(SpecialType.System_Nullable_T);
106
_IEnumerableType =
_bound
.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T);
172
SyntaxNode old =
_bound
.Syntax;
173
_bound
.Syntax = node.Syntax;
175
_bound
.Syntax = old;
176
return
_bound
.Convert(ExpressionType, result);
303
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expression, array, index);
307
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expressions, array, Indices(node.Indices));
324
return
_bound
.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree());
335
return
_bound
.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree());
341
var boundType =
_bound
.Typeof(arrayType.ElementType,
_bound
.WellKnownType(WellKnownType.System_Type));
346
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayInit, boundType, Expressions(node.InitializerOpt.Initializers));
357
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayBounds, boundType, Expressions(node.Bounds));
363
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayLength, Visit(node.Expression));
370
var operand =
_bound
.Null(
_bound
.SpecialType(SpecialType.System_Object));
376
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeAs, Visit(node.Operand),
_bound
.Typeof(node.Type,
_bound
.WellKnownType(WellKnownType.System_Type)));
496
left =
_bound
.Default(right.Type);
500
right =
_bound
.Default(left.Type);
571
((object)methodOpt == null) ?
_bound
.StaticCall(opFactory, loweredLeft, loweredRight) :
573
_bound
.StaticCall(opFactory, loweredLeft, loweredRight,
574
_bound
.Literal(isLifted && !TypeSymbol.Equals(methodOpt.ReturnType, type, TypeCompareKind.ConsiderEverything2)),
575
_bound
.MethodInfo(methodOpt,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo))) :
576
_bound
.StaticCall(opFactory, loweredLeft, loweredRight,
577
_bound
.MethodInfo(methodOpt,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
595
return
_bound
.SpecialType(possiblePromote);
621
var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(Diagnostics,
_bound
.Compilation.Assembly);
622
var kind =
_bound
.Compilation.Conversions.ClassifyConversionFromType(oldType, newType, isChecked: false, ref useSiteInfo).Kind;
642
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Invoke, Visit(node.ReceiverOpt), Expressions(node.Arguments));
648
return
_bound
.StaticCall(
650
method.RequiresInstanceReceiver ? Visit(node.ReceiverOpt) :
_bound
.Null(ExpressionType),
651
_bound
.MethodInfo(method,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)),
661
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Condition, condition, consequence, alternative);
712
var e2 =
_bound
.StaticCall(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ?
715
e1,
_bound
.Typeof(resultType,
_bound
.WellKnownType(WellKnownType.System_Type)),
716
_bound
.MethodInfo(method,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
739
return Convert(Constant(
_bound
.Null(_objectType)), _objectType, node.Type, false, node.ExplicitCastInCode);
752
return
_bound
.StaticCall(isChecked ?
755
expr,
_bound
.Typeof(type,
_bound
.WellKnownType(WellKnownType.System_Type)));
760
var nullObject =
_bound
.Null(_objectType);
761
receiver = requiresInstanceReceiver ? nullObject : receiver.Type.IsReferenceType ? receiver :
_bound
.Convert(_objectType, receiver);
763
var createDelegate =
_bound
.WellKnownMethod(WellKnownMember.System_Reflection_MethodInfo__CreateDelegate, isOptional: true);
768
unquoted =
_bound
.Call(
_bound
.MethodInfo(method, createDelegate.ContainingType), createDelegate,
_bound
.Typeof(delegateType, createDelegate.Parameters[0].Type), receiver);
773
createDelegate =
_bound
.SpecialMethod(SpecialMember.System_Delegate__CreateDelegate);
774
unquoted =
_bound
.Call(null, createDelegate,
775
_bound
.Typeof(delegateType, createDelegate.Parameters[0].Type),
777
_bound
.MethodInfo(method, createDelegate.Parameters[2].Type));
811
var receiver = node.FieldSymbol.IsStatic ?
_bound
.Null(ExpressionType) : Visit(node.ReceiverOpt);
812
return
_bound
.StaticCall(
814
receiver,
_bound
.FieldInfo(node.FieldSymbol));
822
operand =
_bound
.Null(_objectType);
825
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeIs, Visit(operand),
_bound
.Typeof(node.TargetType.Type,
_bound
.WellKnownType(WellKnownType.System_Type)));
831
return node.Type.IsExpressionTree() ?
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Quote, result) : result;
842
var param =
_bound
.SynthesizedLocal(ParameterExpressionType);
844
var parameterReference =
_bound
.Local(param);
846
var parameter =
_bound
.StaticCall(
848
_bound
.Typeof(_typeMap.SubstituteType(p.Type).Type,
_bound
.WellKnownType(WellKnownType.System_Type)),
_bound
.Literal(p.Name));
849
initializers.Add(
_bound
.AssignmentExpression(parameterReference, parameter));
854
var result =
_bound
.Sequence(locals.ToImmutableAndFree(), initializers.ToImmutableAndFree(),
855
_bound
.StaticCall(
859
_bound
.ArrayOrEmpty(ParameterExpressionType, parameters.ToImmutableAndFree())));
871
return VisitObjectCreationContinued(
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type,
_bound
.Typeof(node.Type,
_bound
.WellKnownType(WellKnownType.System_Type))), node.InitializerExpressionOpt);
882
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce_Lambda, left, right, MakeConversionLambda(leftConversion, lambdaParamType, node.LeftConversion.Type));
886
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce, left, right);
893
ParameterSymbol lambdaParameter =
_bound
.SynthesizedParameter(fromType, parameterName);
894
var param =
_bound
.SynthesizedLocal(ParameterExpressionType);
895
var parameterReference =
_bound
.Local(param);
896
var parameter =
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Parameter,
_bound
.Typeof(fromType,
_bound
.WellKnownType(WellKnownType.System_Type)),
_bound
.Literal(parameterName));
898
var convertedValue = Visit(
_bound
.Convert(toType,
_bound
.Parameter(lambdaParameter), conversion));
900
var result =
_bound
.Sequence(
902
ImmutableArray.Create<BoundExpression>(
_bound
.AssignmentExpression(parameterReference, parameter)),
903
_bound
.StaticCall(
906
_bound
.ArrayOrEmpty(ParameterExpressionType, ImmutableArray.Create<BoundExpression>(parameterReference))));
915
return
_bound
.Convert(MemberInfoType,
_bound
.FieldInfo((FieldSymbol)symbol));
917
return
_bound
.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedSetMethod(),
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo));
919
return
_bound
.Convert(MemberInfoType,
_bound
.FieldInfo(((EventSymbol)symbol).AssociatedField));
930
return
_bound
.Convert(MemberInfoType,
_bound
.FieldInfo((FieldSymbol)symbol));
932
return
_bound
.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedGetMethod(),
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo));
934
return
_bound
.Convert(MemberInfoType,
_bound
.FieldInfo(((EventSymbol)symbol).AssociatedField));
964
builder.Add(
_bound
.StaticCall(sym.Kind is SymbolKind.Property ?
973
builder.Add(
_bound
.StaticCall(sym.Kind is SymbolKind.Property ?
982
builder.Add(
_bound
.StaticCall(sym.Kind is SymbolKind.Property ?
994
return
_bound
.ArrayOrEmpty(MemberBindingType, builder.ToImmutableAndFree());
1009
BoundExpression elementInit =
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ElementInit,
1010
_bound
.MethodInfo(i.AddMethod,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)),
1015
return
_bound
.ArrayOrEmpty(ElementInitType, builder.ToImmutableAndFree());
1040
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ListInit, result, init);
1042
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__MemberInit, result, init);
1060
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type,
_bound
.Typeof(node.Type,
_bound
.WellKnownType(WellKnownType.System_Type)));
1063
var ctor =
_bound
.ConstructorInfo(node.Constructor);
1064
var args =
_bound
.Convert(_IEnumerableType.Construct(ExpressionType), Expressions(node.Arguments));
1071
membersBuilder.Add(
_bound
.MethodInfo(AnonymousTypeManager.GetAnonymousTypeProperty(anonType, i).GetMethod,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
1074
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_Expressions_MemberInfos,
1075
ctor, args,
_bound
.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree()));
1079
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_IEnumerableExpressions, ctor, args);
1104
var receiver = node.PropertySymbol.IsStatic ?
_bound
.Null(ExpressionType) : Visit(node.ReceiverOpt);
1124
return
_bound
.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Property, receiver,
_bound
.MethodInfo(getMethod,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
1192
var result =
_bound
.StaticCall(opFactory, loweredArg);
1197
?
_bound
.StaticCall(opFactory, loweredArg)
1198
:
_bound
.StaticCall(opFactory, loweredArg,
_bound
.MethodInfo(node.MethodOpt,
_bound
.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
1205
return
_bound
.StaticCall(
1207
_bound
.Convert(_objectType, node),
1208
_bound
.Typeof(node.Type,
_bound
.WellKnownType(WellKnownType.System_Type)));