@Override public boolean doIsEquals(CastExpr first, CastExpr second) { if (!isEqualsUseMerger(first.getType(), second.getType())) return false; if (!isEqualsUseMerger(first.getExpr(), second.getExpr())) return false; return true; }
@Override public Boolean visit(final CastExpr n1, final Node arg) { final CastExpr n2 = (CastExpr) arg; if (!nodeEquals(n1.getType(), n2.getType())) { return Boolean.FALSE; } if (!nodeEquals(n1.getExpr(), n2.getExpr())) { return Boolean.FALSE; } return Boolean.TRUE; }
@Override public CastExpr doMerge(CastExpr first, CastExpr second) { CastExpr ce = new CastExpr(); ce.setType(mergeSingle(first.getType(), second.getType())); ce.setExpr(mergeSingle(first.getExpr(), second.getExpr())); return ce; }
@Override public void visit(final CastExpr n, final A arg) { visitComment(n.getComment(), arg); n.getType().accept(this, arg); n.getExpr().accept(this, arg); }