@Override public JCExpression visitUnary(UnaryTree tree, Void v) { if (tree.getKind() == Kind.LOGICAL_COMPLEMENT) { return (JCExpression) tree.getExpression(); } else { return defaultNegation(tree); } }
@Override public Void visitUnary(UnaryTree tree, ExpressionTree expr) { if (tree.getKind().equals(Kind.LOGICAL_COMPLEMENT)) { notApplicable = true; } return super.visitUnary(tree, expr); }
@Override public Boolean visitUnary(UnaryTree node, Void aVoid) { Boolean r = node.getExpression().accept(this, null); if (r == null) { return null; } switch (node.getKind()) { case LOGICAL_COMPLEMENT: return !r; default: return null; } } };
@Override public Void visitUnary(UnaryTree node, InitializationContext init) { if (UNARY_ASSIGNMENT.contains(node.getKind())) { init = InitializationContext.NONE; writes.recordAssignment(node.getExpression(), init); } return super.visitUnary(node, init); } }
@Override public Void visitUnary(UnaryTree tree, Void unused) { switch (tree.getKind()) { case POSTFIX_INCREMENT: case PREFIX_INCREMENT: case POSTFIX_DECREMENT: case PREFIX_DECREMENT: check(tree.getExpression()); break; default: // fall out } return super.visitUnary(tree, unused); }
@Override public UUnary visitUnary(UnaryTree tree, Void v) { return UUnary.create(tree.getKind(), template(tree.getExpression())); }
@Override public Void visitUnary(UnaryTree node, Void unused) { switch (node.getKind()) { case PREFIX_DECREMENT: case PREFIX_INCREMENT: case POSTFIX_DECREMENT: case POSTFIX_INCREMENT: recordWrite(node.getExpression()); break; default: break; } return super.visitUnary(node, null); }
@Override @Nullable public Choice<Unifier> visitUnary(UnaryTree unary, @Nullable Unifier unifier) { return Choice.condition(getKind().equals(unary.getKind()), unifier) .thenChoose( unifications(getExpression(), ASTHelpers.stripParentheses(unary.getExpression()))); }
@Override public Description matchUnary(UnaryTree tree, VisitorState state) { switch (tree.getKind()) { case POSTFIX_INCREMENT: case POSTFIX_DECREMENT: break; default: return NO_MATCH; } Tree parent = state.getPath().getParentPath().getLeaf(); if (parent.getKind() != Kind.LAMBDA_EXPRESSION) { return NO_MATCH; } JCLambda lambda = (JCLambda) parent; Symbol sym = ASTHelpers.getSymbol(tree.getExpression()); if (lambda.getParameters().stream().noneMatch(p -> ASTHelpers.getSymbol(p) == sym)) { return NO_MATCH; } return describeMatch( tree, SuggestedFix.replace( tree, String.format( "%s %s 1", state.getSourceForNode(tree.getExpression()), tree.getKind() == Kind.POSTFIX_INCREMENT ? "+" : "-"))); } }
public BitwiseComplementNode(UnaryTree tree, Node operand) { super(tree, operand); assert tree.getKind() == Kind.BITWISE_COMPLEMENT; }
@Override public Void visitUnary(UnaryTree tree, ExpressionTree expr) { if (tree.getKind().equals(Kind.LOGICAL_COMPLEMENT)) { notApplicable = true; } return super.visitUnary(tree, expr); }
@Override public JCExpression visitUnary(UnaryTree tree, Void v) { if (tree.getKind() == Kind.LOGICAL_COMPLEMENT) { return (JCExpression) tree.getExpression(); } else { return defaultNegation(tree); } }
@Override public Void visitUnary(UnaryTree node, InitializationContext init) { if (UNARY_ASSIGNMENT.contains(node.getKind())) { init = InitializationContext.NONE; writes.recordAssignment(node.getExpression(), init); } return super.visitUnary(node, init); } }
@Override public Void visitUnary(UnaryTree tree, Void unused) { switch (tree.getKind()) { case POSTFIX_INCREMENT: case PREFIX_INCREMENT: case POSTFIX_DECREMENT: case PREFIX_DECREMENT: check(tree.getExpression()); break; default: // fall out } return super.visitUnary(tree, unused); }
@Override @Nullable public Choice<Unifier> visitUnary(UnaryTree unary, @Nullable Unifier unifier) { return Choice.condition(getKind().equals(unary.getKind()), unifier) .thenChoose( unifications(getExpression(), ASTHelpers.stripParentheses(unary.getExpression()))); }
@Override public Tree visitUnary(UnaryTree tree, Void p) { UnaryTree n = make.Unary(tree.getKind(), tree.getExpression()); model.setType(n, model.getType(tree)); comments.copyComments(tree, n); model.setPos(n, model.getPos(tree)); return n; }
@Override public JExpression visitUnary(UnaryTree ut, Void __) { return $b.invoke(opName(ut.getKind())) .arg(loc(ut)) .arg(visit(ut.getExpression())); }
protected final UnaryTree rewriteChildren(UnaryTree tree) { ExpressionTree arg = (ExpressionTree)translate(tree.getExpression()); if (arg!=tree.getExpression()) { UnaryTree n = make.Unary(tree.getKind(), arg); model.setType(n, model.getType(tree)); copyCommentTo(tree,n); copyPosTo(tree,n); tree = n; } return tree; }