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); 98private 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); 172SyntaxNode old = _bound.Syntax; 173_bound.Syntax = node.Syntax; 175_bound.Syntax = old; 176return _bound.Convert(ExpressionType, result); 303return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expression, array, index); 307return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expressions, array, Indices(node.Indices)); 324return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 335return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 341var boundType = _bound.Typeof(arrayType.ElementType, _bound.WellKnownType(WellKnownType.System_Type)); 346return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayInit, boundType, Expressions(node.InitializerOpt.Initializers)); 357return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayBounds, boundType, Expressions(node.Bounds)); 363return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayLength, Visit(node.Expression)); 370var operand = _bound.Null(_bound.SpecialType(SpecialType.System_Object)); 376return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeAs, Visit(node.Operand), _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))); 496left = _bound.Default(right.Type); 500right = _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))); 595return _bound.SpecialType(possiblePromote); 621var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(Diagnostics, _bound.Compilation.Assembly); 622var kind = _bound.Compilation.Conversions.ClassifyConversionFromType(oldType, newType, isChecked: false, ref useSiteInfo).Kind; 642return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Invoke, Visit(node.ReceiverOpt), Expressions(node.Arguments)); 648return _bound.StaticCall( 650method.RequiresInstanceReceiver ? Visit(node.ReceiverOpt) : _bound.Null(ExpressionType), 651_bound.MethodInfo(method, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), 661return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Condition, condition, consequence, alternative); 712var e2 = _bound.StaticCall(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ? 715e1, _bound.Typeof(resultType, _bound.WellKnownType(WellKnownType.System_Type)), 716_bound.MethodInfo(method, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 739return Convert(Constant(_bound.Null(_objectType)), _objectType, node.Type, false, node.ExplicitCastInCode); 752return _bound.StaticCall(isChecked ? 755expr, _bound.Typeof(type, _bound.WellKnownType(WellKnownType.System_Type))); 760var nullObject = _bound.Null(_objectType); 761receiver = requiresInstanceReceiver ? nullObject : receiver.Type.IsReferenceType ? receiver : _bound.Convert(_objectType, receiver); 763var createDelegate = _bound.WellKnownMethod(WellKnownMember.System_Reflection_MethodInfo__CreateDelegate, isOptional: true); 768unquoted = _bound.Call(_bound.MethodInfo(method, createDelegate.ContainingType), createDelegate, _bound.Typeof(delegateType, createDelegate.Parameters[0].Type), receiver); 773createDelegate = _bound.SpecialMethod(SpecialMember.System_Delegate__CreateDelegate); 774unquoted = _bound.Call(null, createDelegate, 775_bound.Typeof(delegateType, createDelegate.Parameters[0].Type), 777_bound.MethodInfo(method, createDelegate.Parameters[2].Type)); 811var receiver = node.FieldSymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 812return _bound.StaticCall( 814receiver, _bound.FieldInfo(node.FieldSymbol)); 822operand = _bound.Null(_objectType); 825return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeIs, Visit(operand), _bound.Typeof(node.TargetType.Type, _bound.WellKnownType(WellKnownType.System_Type))); 831return node.Type.IsExpressionTree() ? _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Quote, result) : result; 842var param = _bound.SynthesizedLocal(ParameterExpressionType); 844var parameterReference = _bound.Local(param); 846var parameter = _bound.StaticCall( 848_bound.Typeof(_typeMap.SubstituteType(p.Type).Type, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(p.Name)); 849initializers.Add(_bound.AssignmentExpression(parameterReference, parameter)); 854var result = _bound.Sequence(locals.ToImmutableAndFree(), initializers.ToImmutableAndFree(), 855_bound.StaticCall( 859_bound.ArrayOrEmpty(ParameterExpressionType, parameters.ToImmutableAndFree()))); 871return VisitObjectCreationContinued(_bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))), node.InitializerExpressionOpt); 882return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce_Lambda, left, right, MakeConversionLambda(leftConversion, lambdaParamType, node.LeftConversion.Type)); 886return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce, left, right); 893ParameterSymbol lambdaParameter = _bound.SynthesizedParameter(fromType, parameterName); 894var param = _bound.SynthesizedLocal(ParameterExpressionType); 895var parameterReference = _bound.Local(param); 896var parameter = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Parameter, _bound.Typeof(fromType, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(parameterName)); 898var convertedValue = Visit(_bound.Convert(toType, _bound.Parameter(lambdaParameter), conversion)); 900var result = _bound.Sequence( 902ImmutableArray.Create<BoundExpression>(_bound.AssignmentExpression(parameterReference, parameter)), 903_bound.StaticCall( 906_bound.ArrayOrEmpty(ParameterExpressionType, ImmutableArray.Create<BoundExpression>(parameterReference)))); 915return _bound.Convert(MemberInfoType, _bound.FieldInfo((FieldSymbol)symbol)); 917return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedSetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 919return _bound.Convert(MemberInfoType, _bound.FieldInfo(((EventSymbol)symbol).AssociatedField)); 930return _bound.Convert(MemberInfoType, _bound.FieldInfo((FieldSymbol)symbol)); 932return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedGetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 934return _bound.Convert(MemberInfoType, _bound.FieldInfo(((EventSymbol)symbol).AssociatedField)); 964builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 973builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 982builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 994return _bound.ArrayOrEmpty(MemberBindingType, builder.ToImmutableAndFree()); 1009BoundExpression elementInit = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ElementInit, 1010_bound.MethodInfo(i.AddMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), 1015return _bound.ArrayOrEmpty(ElementInitType, builder.ToImmutableAndFree()); 1040return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ListInit, result, init); 1042return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__MemberInit, result, init); 1060return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))); 1063var ctor = _bound.ConstructorInfo(node.Constructor); 1064var args = _bound.Convert(_IEnumerableType.Construct(ExpressionType), Expressions(node.Arguments)); 1071membersBuilder.Add(_bound.MethodInfo(AnonymousTypeManager.GetAnonymousTypeProperty(anonType, i).GetMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1074return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_Expressions_MemberInfos, 1075ctor, args, _bound.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree())); 1079return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_IEnumerableExpressions, ctor, args); 1104var receiver = node.PropertySymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 1124return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Property, receiver, _bound.MethodInfo(getMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1192var 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))); 1205return _bound.StaticCall( 1207_bound.Convert(_objectType, node), 1208_bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type)));