1 write to _bound
Microsoft.CodeAnalysis.CSharp (1)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
103_bound = new SyntheticBoundNodeFactory(null, compilationState.Type, node, compilationState, diagnostics);
91 references to _bound
Microsoft.CodeAnalysis.CSharp (91)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (91)
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; } } 105_int32Type = _bound.SpecialType(SpecialType.System_Int32); 106_objectType = _bound.SpecialType(SpecialType.System_Object); 107_nullableType = _bound.SpecialType(SpecialType.System_Nullable_T); 108_IEnumerableType = _bound.SpecialType(SpecialType.System_Collections_Generic_IEnumerable_T); 174SyntaxNode old = _bound.Syntax; 175_bound.Syntax = node.Syntax; 177_bound.Syntax = old; 178return _bound.Convert(ExpressionType, result); 325return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 336return _bound.ArrayOrEmpty(ExpressionType, builder.ToImmutableAndFree()); 342var boundType = _bound.Typeof(arrayType.ElementType); 371var operand = _bound.Null(_bound.SpecialType(SpecialType.System_Object)); 377return ExprFactory("TypeAs", Visit(node.Operand), _bound.Typeof(node.Type)); 429left = _bound.Default(right.Type); 433right = _bound.Default(left.Type); 505requiresLifted ? ExprFactory(opName, loweredLeft, loweredRight, _bound.Literal(isLifted && !TypeSymbol.Equals(methodOpt.ReturnType, type, TypeCompareKind.ConsiderEverything2)), _bound.MethodInfo(methodOpt)) : 506ExprFactory(opName, loweredLeft, loweredRight, _bound.MethodInfo(methodOpt)); 524return _bound.SpecialType(possiblePromote); 550var useSiteInfo = new CompoundUseSiteInfo<AssemblySymbol>(Diagnostics, _bound.Compilation.Assembly); 551var kind = _bound.Compilation.Conversions.ClassifyConversionFromType(oldType, newType, isChecked: false, ref useSiteInfo).Kind; 579method.RequiresInstanceReceiver ? Visit(node.ReceiverOpt) : _bound.Null(ExpressionType), 580_bound.MethodInfo(method), 641var e2 = ExprFactory(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ? "ConvertChecked" : "Convert", e1, _bound.Typeof(resultType), _bound.MethodInfo(method)); 664return Convert(Constant(_bound.Null(_objectType)), _objectType, node.Type, false, node.ExplicitCastInCode); 677return ExprFactory(isChecked ? "ConvertChecked" : "Convert", expr, _bound.Typeof(type)); 682var nullObject = _bound.Null(_objectType); 683receiver = requiresInstanceReceiver ? nullObject : receiver.Type.IsReferenceType ? receiver : _bound.Convert(_objectType, receiver); 685var createDelegate = _bound.WellKnownMethod(WellKnownMember.System_Reflection_MethodInfo__CreateDelegate, isOptional: true); 690unquoted = _bound.Call(_bound.MethodInfo(method), createDelegate, _bound.Typeof(delegateType), receiver); 697unquoted = _bound.StaticCall(_bound.SpecialType(SpecialType.System_Delegate), "CreateDelegate", _bound.Typeof(delegateType), receiver, _bound.MethodInfo(method)); 731var receiver = node.FieldSymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 734receiver, _bound.FieldInfo(node.FieldSymbol)); 742operand = _bound.Null(_objectType); 745return ExprFactory("TypeIs", Visit(operand), _bound.Typeof(node.TargetType.Type)); 762var param = _bound.SynthesizedLocal(ParameterExpressionType); 764var parameterReference = _bound.Local(param); 768_bound.Typeof(_typeMap.SubstituteType(p.Type).Type), _bound.Literal(p.Name)); 769initializers.Add(_bound.AssignmentExpression(parameterReference, parameter)); 774var result = _bound.Sequence(locals.ToImmutableAndFree(), initializers.ToImmutableAndFree(), 779_bound.ArrayOrEmpty(ParameterExpressionType, parameters.ToImmutableAndFree()))); 791return VisitObjectCreationContinued(ExprFactory("New", _bound.Typeof(node.Type)), node.InitializerExpressionOpt); 813ParameterSymbol lambdaParameter = _bound.SynthesizedParameter(fromType, parameterName); 814var param = _bound.SynthesizedLocal(ParameterExpressionType); 815var parameterReference = _bound.Local(param); 816var parameter = ExprFactory("Parameter", _bound.Typeof(fromType), _bound.Literal(parameterName)); 818var convertedValue = Visit(_bound.Convert(toType, _bound.Parameter(lambdaParameter), conversion)); 820var result = _bound.Sequence( 822ImmutableArray.Create<BoundExpression>(_bound.AssignmentExpression(parameterReference, parameter)), 826_bound.ArrayOrEmpty(ParameterExpressionType, ImmutableArray.Create<BoundExpression>(parameterReference)))); 835return _bound.Convert(MemberInfoType, _bound.FieldInfo((FieldSymbol)symbol)); 837return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedSetMethod()); 839return _bound.Convert(MemberInfoType, _bound.FieldInfo(((EventSymbol)symbol).AssociatedField)); 850return _bound.Convert(MemberInfoType, _bound.FieldInfo((FieldSymbol)symbol)); 852return _bound.MethodInfo(((PropertySymbol)symbol).GetOwnOrInheritedGetMethod()); 854return _bound.Convert(MemberInfoType, _bound.FieldInfo(((EventSymbol)symbol).AssociatedField)); 905return _bound.ArrayOrEmpty(MemberBindingType, builder.ToImmutableAndFree()); 920BoundExpression elementInit = ExprFactory("ElementInit", _bound.MethodInfo(i.AddMethod), Expressions(i.Arguments)); 924return _bound.ArrayOrEmpty(ElementInitType, builder.ToImmutableAndFree()); 969return ExprFactory("New", _bound.Typeof(node.Type)); 972var ctor = _bound.ConstructorInfo(node.Constructor); 973var args = _bound.Convert(_IEnumerableType.Construct(ExpressionType), Expressions(node.Arguments)); 980membersBuilder.Add(_bound.MethodInfo(AnonymousTypeManager.GetAnonymousTypeProperty(anonType, i).GetMethod)); 983return ExprFactory("New", ctor, args, _bound.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree())); 1012var receiver = node.PropertySymbol.IsStatic ? _bound.Null(ExpressionType) : Visit(node.ReceiverOpt); 1032return ExprFactory("Property", receiver, _bound.MethodInfo(getMethod)); 1083: ExprFactory(opname, loweredArg, _bound.MethodInfo(node.MethodOpt)); 1090return _bound.StaticCall(ExpressionType, name, arguments); 1095return _bound.StaticCall(_ignoreAccessibility ? BinderFlags.IgnoreAccessibility : BinderFlags.None, ExpressionType, name, typeArgs, arguments); 1102_bound.Convert(_objectType, node), 1103_bound.Typeof(node.Type));