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); 721var e2 = _bound.StaticCall(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ? 724e1, _bound.Typeof(resultType, _bound.WellKnownType(WellKnownType.System_Type)), 725_bound.MethodInfo(method, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 748return Convert(Constant(_bound.Null(_objectType)), _objectType, node.Type, false, node.ExplicitCastInCode); 761return _bound.StaticCall(isChecked ? 764expr, _bound.Typeof(type, _bound.WellKnownType(WellKnownType.System_Type))); 769var nullObject = _bound.Null(_objectType); 776Conversion c = _bound.ClassifyEmitConversion(receiver, _objectType); 779receiver = _bound.Convert(_objectType, receiver, c); 782var createDelegate = _bound.WellKnownMethod(WellKnownMember.System_Reflection_MethodInfo__CreateDelegate, isOptional: true); 787unquoted = _bound.Call(_bound.MethodInfo(method, createDelegate.ContainingType), createDelegate, _bound.Typeof(delegateType, createDelegate.Parameters[0].Type), receiver); 792createDelegate = _bound.SpecialMethod(SpecialMember.System_Delegate__CreateDelegate); 793unquoted = _bound.Call(null, createDelegate, 794_bound.Typeof(delegateType, createDelegate.Parameters[0].Type), 796_bound.MethodInfo(method, createDelegate.Parameters[2].Type)); 830var receiver = node.FieldSymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 831return _bound.StaticCall( 833receiver, _bound.FieldInfo(node.FieldSymbol)); 841operand = _bound.Null(_objectType); 844return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__TypeIs, Visit(operand), _bound.Typeof(node.TargetType.Type, _bound.WellKnownType(WellKnownType.System_Type))); 850return node.Type.IsExpressionTree() ? _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Quote, result) : result; 861var param = _bound.SynthesizedLocal(ParameterExpressionType); 863var parameterReference = _bound.Local(param); 865var parameter = _bound.StaticCall( 867_bound.Typeof(_typeMap.SubstituteType(p.Type).Type, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(p.Name)); 868initializers.Add(_bound.AssignmentExpression(parameterReference, parameter)); 873var result = _bound.Sequence(locals.ToImmutableAndFree(), initializers.ToImmutableAndFree(), 874_bound.StaticCall( 878_bound.ArrayOrEmpty(ParameterExpressionType, parameters.ToImmutableAndFree()))); 890return VisitObjectCreationContinued(_bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))), node.InitializerExpressionOpt); 900return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce_Lambda, left, right, makeConversionLambda(node.LeftConversion, node.LeftPlaceholder)); 904return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Coalesce, left, right); 911ParameterSymbol lambdaParameter = _bound.SynthesizedParameter(fromType, parameterName); 912var param = _bound.SynthesizedLocal(ParameterExpressionType); 913var parameterReference = _bound.Local(param); 914var parameter = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Parameter, _bound.Typeof(fromType, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(parameterName)); 920var result = _bound.Sequence( 922ImmutableArray.Create<BoundExpression>(_bound.AssignmentExpression(parameterReference, parameter)), 923_bound.StaticCall( 926_bound.ArrayOrEmpty(ParameterExpressionType, ImmutableArray.Create<BoundExpression>(parameterReference)))); 937BoundExpression fieldInfo = _bound.FieldInfo((FieldSymbol)symbol); 938Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 941return _bound.Convert(MemberInfoType, fieldInfo, c); 944return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedSetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 947BoundExpression fieldInfo = _bound.FieldInfo(((EventSymbol)symbol).AssociatedField); 948Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 951return _bound.Convert(MemberInfoType, fieldInfo, c); 964BoundExpression fieldInfo = _bound.FieldInfo((FieldSymbol)symbol); 965Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 968return _bound.Convert(MemberInfoType, fieldInfo, c); 971return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedGetMethod(), _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)); 974BoundExpression fieldInfo = _bound.FieldInfo(((EventSymbol)symbol).AssociatedField); 975Conversion c = _bound.ClassifyEmitConversion(fieldInfo, MemberInfoType); 978return _bound.Convert(MemberInfoType, fieldInfo, c); 1009builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1018builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1027builder.Add(_bound.StaticCall(sym.Kind is SymbolKind.Property ? 1039return _bound.ArrayOrEmpty(MemberBindingType, builder.ToImmutableAndFree()); 1054BoundExpression elementInit = _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ElementInit, 1055_bound.MethodInfo(i.AddMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), 1060return _bound.ArrayOrEmpty(ElementInitType, builder.ToImmutableAndFree()); 1085return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__ListInit, result, init); 1087return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__MemberInit, result, init); 1105return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_Type, _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))); 1108var ctor = _bound.ConstructorInfo(node.Constructor); 1112Conversion c = _bound.ClassifyEmitConversion(args, iEnumerableType); 1115args = _bound.Convert(iEnumerableType, args, c); 1122membersBuilder.Add(_bound.MethodInfo(AnonymousTypeManager.GetAnonymousTypeProperty(anonType, i).GetMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1125return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_Expressions_MemberInfos, 1126ctor, args, _bound.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree())); 1130return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__New_ConstructorInfo_IEnumerableExpressions, ctor, args); 1155var receiver = node.PropertySymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 1175return _bound.StaticCall(WellKnownMember.System_Linq_Expressions_Expression__Property, receiver, _bound.MethodInfo(getMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1243var result = _bound.StaticCall(opFactory, loweredArg); 1248? _bound.StaticCall(opFactory, loweredArg) 1249: _bound.StaticCall(opFactory, loweredArg, _bound.MethodInfo(node.MethodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo))); 1256Conversion c = _bound.ClassifyEmitConversion(node, _objectType); 1259return _bound.StaticCall( 1261_bound.Convert(_objectType, node, c), 1262_bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type)));