Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (37)
304return ExprFactory("ArrayIndex", array, index);
308return ExprFactory("ArrayIndex", array, Indices(node.Indices));
347return ExprFactory("NewArrayInit", boundType, Expressions(node.InitializerOpt.Initializers));
358return ExprFactory("NewArrayBounds", boundType, Expressions(node.Bounds));
364return ExprFactory("ArrayLength", Visit(node.Expression));
377return ExprFactory("TypeAs", Visit(node.Operand), _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type)));
504((object)methodOpt == null) ? ExprFactory(opName, loweredLeft, loweredRight) :
506ExprFactory(opName, loweredLeft, loweredRight, _bound.Literal(isLifted && !TypeSymbol.Equals(methodOpt.ReturnType, type, TypeCompareKind.ConsiderEverything2)),
508ExprFactory(opName, loweredLeft, loweredRight, _bound.MethodInfo(methodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
573return ExprFactory(WellKnownMemberNames.DelegateInvokeName, Visit(node.ReceiverOpt), Expressions(node.Arguments));
579return ExprFactory(
592return ExprFactory("Condition", condition, consequence, alternative);
643var e2 = ExprFactory(node.Checked && SyntaxFacts.IsCheckedOperator(method.Name) ?
682return ExprFactory(isChecked ? "ConvertChecked" : "Convert", expr, _bound.Typeof(type, _bound.WellKnownType(WellKnownType.System_Type)));
739return ExprFactory(
752return ExprFactory("TypeIs", Visit(operand), _bound.Typeof(node.TargetType.Type, _bound.WellKnownType(WellKnownType.System_Type)));
758return node.Type.IsExpressionTree() ? ExprFactory("Quote", result) : result;
773var parameter = ExprFactory(
798return VisitObjectCreationContinued(ExprFactory("New", _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type))), node.InitializerExpressionOpt);
809return ExprFactory("Coalesce", left, right, MakeConversionLambda(leftConversion, lambdaParamType, node.LeftConversion.Type));
813return ExprFactory("Coalesce", left, right);
823var parameter = ExprFactory("Parameter", _bound.Typeof(fromType, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(parameterName));
830ExprFactory(
891builder.Add(ExprFactory("ListBind", left, value));
897builder.Add(ExprFactory("Bind", left, value));
903builder.Add(ExprFactory("MemberBind", left, value));
927BoundExpression elementInit = ExprFactory("ElementInit", _bound.MethodInfo(i.AddMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)), Expressions(i.Arguments));
956return ExprFactory("ListInit", result, init);
958return ExprFactory("MemberInit", result, init);
976return ExprFactory("New", _bound.Typeof(node.Type, _bound.WellKnownType(WellKnownType.System_Type)));
990return ExprFactory("New", ctor, args, _bound.ArrayOrEmpty(MemberInfoType, membersBuilder.ToImmutableAndFree()));
994return ExprFactory("New", ctor, args);
1039return ExprFactory("Property", receiver, _bound.MethodInfo(getMethod, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
1084var result = ExprFactory(opname, loweredArg);
1089? ExprFactory(opname, loweredArg)
1090: ExprFactory(opname, loweredArg, _bound.MethodInfo(node.MethodOpt, _bound.WellKnownType(WellKnownType.System_Reflection_MethodInfo)));
1107return ExprFactory(