public static CastExpression asExpression(ClassNode type, Expression expression) { CastExpression answer = new CastExpression(type, expression); answer.setCoerce(true); return answer; }
@Override public void visitCastExpression(CastExpression expr) { CastExpression conversion = new CastExpression( expr.getType(), convert(expr.getExpression()), expr.isIgnoringAutoboxing()); conversion.setSourcePosition(expr); conversion.setCoerce(expr.isCoerce()); result = record(conversion); }
public Expression transformExpression(ExpressionTransformer transformer) { CastExpression ret = new CastExpression(getType(), transformer.transform(expression)); ret.setSourcePosition(this); ret.setCoerce(this.isCoerce()); ret.setStrict(this.isStrict()); ret.copyNodeMetaData(this); return ret; }
@Override public void visitCastExpression(CastExpression expr) { CastExpression result = new CastExpression( expr.getType(), replaceExpr(expr.getExpression()), expr.isIgnoringAutoboxing() ); result.setCoerce(expr.isCoerce()); result.setType(expr.getType()); result.setSourcePosition(expr); replaceVisitedExpressionWith(result); }
public static CastExpression asExpression(ClassNode type, Expression expression) { CastExpression answer = new CastExpression(type, expression); answer.setCoerce(true); return answer; }
public static CastExpression asExpression(ClassNode type, Expression expression) { CastExpression answer = new CastExpression(type, expression); answer.setCoerce(true); return answer; }
public static CastExpression asExpression(ClassNode type, Expression expression) { CastExpression answer = new CastExpression(type, expression); answer.setCoerce(true); return answer; }
public static CastExpression asExpression(ClassNode type, Expression expression) { CastExpression answer = new CastExpression(type, expression); answer.setCoerce(true); return answer; }
public Expression transformExpression(ExpressionTransformer transformer) { CastExpression ret = new CastExpression(getType(), transformer.transform(expression)); ret.setSourcePosition(this); ret.setCoerce(this.isCoerce()); return ret; }
public Expression transformExpression(ExpressionTransformer transformer) { CastExpression ret = new CastExpression(getType(), transformer.transform(expression)); ret.setSourcePosition(this); ret.setCoerce(this.isCoerce()); return ret; }
public Expression transformExpression(ExpressionTransformer transformer) { CastExpression ret = new CastExpression(getType(), transformer.transform(expression)); ret.setSourcePosition(this); ret.setCoerce(this.isCoerce()); return ret; }
public Expression transformExpression(ExpressionTransformer transformer) { CastExpression ret = new CastExpression(getType(), transformer.transform(expression)); ret.setSourcePosition(this); ret.setCoerce(this.isCoerce()); return ret; }
@Override public void visitCastExpression(CastExpression expr) { CastExpression result = new CastExpression( expr.getType(), replaceExpr(expr.getExpression()), expr.isIgnoringAutoboxing() ); result.setCoerce(expr.isCoerce()); result.setType(expr.getType()); result.setSourcePosition(expr); replaceVisitedExpressionWith(result); }
@Override public void visitExpressionStatement(ExpressionStatement es) { Expression exp = es.getExpression(); if (exp instanceof DeclarationExpression) { DeclarationExpression de = (DeclarationExpression) exp; Expression leftExpression = de.getLeftExpression(); if (leftExpression instanceof VariableExpression) { // Only cast and transform if the RHS is *not* an EmptyExpression, i.e., "String foo;" would not be cast/transformed. if (!(de.getRightExpression() instanceof EmptyExpression) && mightBePositionalArgumentConstructor((VariableExpression) leftExpression)) { CastExpression ce = new CastExpression(leftExpression.getType(), de.getRightExpression()); ce.setCoerce(true); es.setExpression(transform(new DeclarationExpression(leftExpression, de.getOperation(), ce))); return; } } else { throw new UnsupportedOperationException("not supporting tuples yet"); // cf. "Unexpected LHS of an assignment" above } } super.visitExpressionStatement(es); }