1 write to _bound
Microsoft.CodeAnalysis.CSharp (1)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
103_bound = new SyntheticBoundNodeFactory(null, compilationState.Type, node, compilationState, diagnostics);
153 references to _bound
Microsoft.CodeAnalysis.CSharp (153)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (153)
32_ExpressionType = _bound.WellKnownType(WellKnownType.System_Linq_Expressions_Expression); 45_ParameterExpressionType = _bound.WellKnownType(WellKnownType.System_Linq_Expressions_ParameterExpression); 58_ElementInitType = _bound.WellKnownType(WellKnownType.System_Linq_Expressions_ElementInit); 72_MemberBindingType = _bound.WellKnownType(WellKnownType.System_Linq_Expressions_MemberBinding); 91_MemberInfoType = _bound.WellKnownType(WellKnownType.System_Reflection_MemberInfo); 99private BindingDiagnosticBag Diagnostics { get { return _bound.Diagnostics; } } 104_int32Type = _bound.SpecialType(SpecialType.System_Int32); 105_objectType = _bound.SpecialType(SpecialType.System_Object); 106_nullableType = _bound.SpecialType(SpecialType.System_Nullable_T); 107_IEnumerableType = _bound.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 173SyntaxNode old = _bound.Syntax; 174_bound.Syntax = node.Syntax; 176_bound.Syntax = old; 177Conversion c = _bound.ClassifyEmitConversion(result, ExpressionType); 180return _bound.Convert(ExpressionType, result, c); 309return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expression, array, index); 313return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayIndex_Expression_Expressions, array, Indices(node.Indices)); 330return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 341return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 347var boundType = _bound.Typeof(arrayType.ElementType, _bound.WellKnownType(WellKnownType.System_Type)); 352return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayInit, boundType, Expressions(node.InitializerOpt.Initializers)); 363return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__NewArrayBounds, boundType, Expressions(node.Bounds)); 369return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ArrayLength, Visit(node.Expression)); 376var operand = _bound.Null(_bound.SpecialType(SpecialType.System_Object)); 382return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeAs, Visit(node.Operand), _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))); 502left = _bound.Default(right.Type); 506right = _bound.Default(left.Type); 577((object)methodOpt == null) ? _bound.StaticCall(opFactory, loweredLeft, loweredRight) : 579_bound.StaticCall(opFactory, loweredLeft, loweredRight, 580_bound.Literal(isLifted && !TypeSymbol.Equals(methodOpt.ReturnType, type, TypeCompareKind.ConsiderEverything2)), 581_bound.MethodInfo(methodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))) : 582_bound.StaticCall(opFactory, loweredLeft, loweredRight, 583_bound.MethodInfo(methodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 601return _bound.SpecialType(possiblePromote); 627var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(Diagnostics, _bound.Compilation.Assembly); 628var kind = _bound.Compilation.Conversions.ClassifyConversionFromType(oldType, newType, isChecked: false, ref useSiteInfo).Kind; 648return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Invoke, Visit(node.ReceiverOpt), Expressions(node.Arguments)); 654return _bound.StaticCall( 656method.RequiresInstanceReceiver ? Visit(node.ReceiverOpt) : _bound.Null(ExpressionType), 657_bound.MethodInfo(method, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), 667return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Condition, condition, consequence, alternative); 718var e2 = _bound.StaticCall(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ? 721e1, _bound.Typeof(resultType, _bound.WellKnownType(WellKnownType.System_Type)), 722_bound.MethodInfo(method, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 745return Convert(Constant(_bound.Null(_objectType)), _objectType, node.Type, false, node.ExplicitCastInCode); 758return _bound.StaticCall(isChecked ? 761expr, _bound.Typeof(type, _bound.WellKnownType(WellKnownType.System_Type))); 766var nullObject = _bound.Null(_objectType); 773Conversion c = _bound.ClassifyEmitConversion(receiver, _objectType); 776receiver = _bound.Convert(_objectType, receiver, c); 779var createDelegate = _bound.WellKnownMethod(WellKnownMember.System_Reflection_MethodInfo__CreateDelegate, isOptional: true); 784unquoted = _bound.Call(_bound.MethodInfo(method, createDelegate.ContainingType), createDelegate, _bound.Typeof(delegateType, createDelegate.Parameters[0].Type), receiver); 789createDelegate = _bound.SpecialMethod(SpecialMember.System_Delegate__CreateDelegate); 790unquoted = _bound.Call(null, createDelegate, 791_bound.Typeof(delegateType, createDelegate.Parameters[0].Type), 793_bound.MethodInfo(method, createDelegate.Parameters[2].Type)); 827var receiver = node.FieldSymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 828return _bound.StaticCall( 830receiver, _bound.FieldInfo(node.FieldSymbol)); 838operand = _bound.Null(_objectType); 841return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeIs, Visit(operand), _bound.Typeof(node.TargetType.Type, _bound.WellKnownType(WellKnownType.System_Type))); 847return node.Type.IsExpressionTree() ? _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Quote, result) : result; 858var param = _bound.SynthesizedLocal(ParameterExpressionType); 860var parameterReference = _bound.Local(param); 862var parameter = _bound.StaticCall( 864_bound.Typeof(_typeMap.SubstituteType(p.Type).Type, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(p.Name)); 865initializers.Add(_bound.AssignmentExpression(parameterReference, parameter)); 870var result = _bound.Sequence(locals.ToImmutableAndFree(), initializers.ToImmutableAndFree(), 871_bound.StaticCall( 875_bound.ArrayOrEmpty(ParameterExpressionType, parameters.ToImmutableAndFree()))); 887return VisitObjectCreationContinued(_bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))), node.InitializerExpressionOpt); 897return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce_Lambda, left, right, makeConversionLambda(node.LeftConversion, node.LeftPlaceholder)); 901return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce, left, right); 908ParameterSymbol lambdaParameter = _bound.SynthesizedParameter(fromType, parameterName); 909var param = _bound.SynthesizedLocal(ParameterExpressionType); 910var parameterReference = _bound.Local(param); 911var parameter = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Parameter, _bound.Typeof(fromType, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(parameterName)); 917var result = _bound.Sequence( 919ImmutableArray.Create<BoundExpression>(_bound.AssignmentExpression(parameterReference, parameter)), 920_bound.StaticCall( 923_bound.ArrayOrEmpty(ParameterExpressionType, ImmutableArray.Create<BoundExpression>(parameterReference)))); 934BoundExpression fieldInfo = _bound.FieldInfo((FieldSymbol)symbol); 935Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 938return _bound.Convert(MemberInfoType, fieldInfo, c); 941return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedSetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 944BoundExpression fieldInfo = _bound.FieldInfo(((EventSymbol)symbol).AssociatedField); 945Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 948return _bound.Convert(MemberInfoType, fieldInfo, c); 961BoundExpression fieldInfo = _bound.FieldInfo((FieldSymbol)symbol); 962Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 965return _bound.Convert(MemberInfoType, fieldInfo, c); 968return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedGetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 971BoundExpression fieldInfo = _bound.FieldInfo(((EventSymbol)symbol).AssociatedField); 972Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 975return _bound.Convert(MemberInfoType, fieldInfo, c); 1006builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1015builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1024builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1036return _bound.ArrayOrEmpty(MemberBindingType, builder.ToImmutableAndFree()); 1051BoundExpression elementInit = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ElementInit, 1052_bound.MethodInfo(i.AddMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), 1057return _bound.ArrayOrEmpty(ElementInitType, builder.ToImmutableAndFree()); 1082return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ListInit, result, init); 1084return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__MemberInit, result, init); 1102return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))); 1105var ctor = _bound.ConstructorInfo(node.Constructor); 1109Conversion c = _bound.ClassifyEmitConversion(args, iEnumerableType); 1112args = _bound.Convert(iEnumerableType, args, c); 1119membersBuilder.Add(_bound.MethodInfo(AnonymousTypeManager.GetAnonymousTypeProperty(anonType, i).GetMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1122return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_Expressions_MemberInfos, 1123ctor, args, _bound.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree())); 1127return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_IEnumerableExpressions, ctor, args); 1152var receiver = node.PropertySymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 1172return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Property, receiver, _bound.MethodInfo(getMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1240var result = _bound.StaticCall(opFactory, loweredArg); 1245? _bound.StaticCall(opFactory, loweredArg) 1246: _bound.StaticCall(opFactory, loweredArg, _bound.MethodInfo(node.MethodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1253Conversion c = _bound.ClassifyEmitConversion(node, _objectType); 1256return _bound.StaticCall( 1258_bound.Convert(_objectType, node, c), 1259_bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type)));