protected Invocation(ToFunction function, List<Expression> arguments) { Function = function; Arguments = arguments; ProfileIndex = -1; SourceOffset = function.SourceOffset; Use(Function); Use(Arguments); }
protected Invocation(ToFunction function, List <Expression> arguments) { Function = function; Arguments = arguments; ProfileIndex = -1; SourceOffset = function.SourceOffset; Use(Function); Use(Arguments); }
public ToFunction MakeToFunction(Expression expression) { var n = expression as ToFunction; if (n == null) { n = new ToFunction(MakeGuardedCast(expression)); } return(n); }
public CallExpression(ToFunction function, Expression thisArg, List <Expression> arguments, bool isDirectEvalCall) : base(function, arguments) { ThisArg = thisArg; Use(ThisArg); IsDirectEvalCall = isDirectEvalCall; m.Util.Diagnose.Debug.Assert( !IsDirectEvalCall || ThisArg == null , "Invalid situation! DirectEvalCall cannot have a this argument"); }
public CallExpression(ToFunction function, Expression thisArg, List<Expression> arguments, bool isDirectEvalCall) : base(function, arguments) { ThisArg = thisArg; Use(ThisArg); IsDirectEvalCall = isDirectEvalCall; m.Util.Diagnose.Debug.Assert( !IsDirectEvalCall || ThisArg == null , "Invalid situation! DirectEvalCall cannot have a this argument"); }
public override void Visit(ToFunction node) { Visit(node, Types.Operations.Convert.ToFunction); }
public override void Visit(ToFunction node) { Visit((ConversionExpression)node); }
public override void Visit(ToFunction node) { base.Visit(node); node.ValueType = GetType(node); }
internal static mdr.ValueTypes GetType(ToFunction expression) { return mdr.ValueTypes.Function; }
public NewExpression(ToFunction function, List <Expression> arguments) : base(function, arguments) { }
public ToFunction MakeToFunction(Expression expression) { var n = expression as ToFunction; if (n == null) { n = new ToFunction(MakeGuardedCast(expression)); } return n; }
public abstract void Visit(ToFunction node);
public override void Visit(ToFunction node) { PushLocation(node); VisitNode(node.Expression); Call(Types.Operations.Stack.ToFunction, 1, 1); PopLocation(); }
public override void Visit(ToFunction node) { AssignToImplicitReturn(node); }
public NewExpression(ToFunction function, List<Expression> arguments) : base(function, arguments) { }