public static JSExpression Assignment(JSExpression asignee, JSExpression value) { return(new JSBinaryExpression { Left = asignee, Operator = "=", Right = value }); }
private string WrapBinaryExpressions(JSExpression expression, Formatting formatting) { if (expression is JSBinaryExpression) { return("(" + expression.ToString(formatting) + ")"); } else { return(expression.ToString(formatting)); } }
public JSExpressionStatement(JSExpression expression) { Expression = expression; }
public static JSStatement Statement(JSExpression s) { return(new JSExpressionStatement(s)); }
public static JSExpression Return(JSExpression e) { return(new JSReturnExpression { Expression = e }); }
public static JSExpression Assignment(string identifier, JSExpression value) { return(Assignment(Identifier(identifier), value)); }
public static JSCallExpression Call(JSExpression function, params JSExpression[] args) { return(new JSCallExpression { Function = function, Arguments = args.ToList() }); }
public static JSExpression Truncate(JSExpression expr) { return(new JSBinaryExpression { Left = expr, Operator = "|", Right = Number(0) }); }
private static bool IsIdentifier(JSExpression function) { var prop = function as JSPropertyAccessExpression; return(function is JSIdentifier || (prop != null && IsIdentifier(prop.Host))); }
public JSPropertyAccessExpression(JSExpression host, string property) { this.Host = host; this.Property = property; }