public final JavaTokenNode getOperatorToken() { return getChildByRole(getOperatorRole(getOperator())); }
@Override public DefiniteAssignmentStatus visitAssignmentExpression(final AssignmentExpression node, final DefiniteAssignmentStatus data) { if (node.getOperator() == AssignmentOperatorType.ASSIGN) { return handleAssignment(node.getLeft(), node.getRight(), data); } else { return visitChildren(node, data); } }
private void markConstructorParameterForRemoval(final AssignmentExpression node, final ParameterDefinition parameter) { final ConstructorDeclaration constructorDeclaration = node.getParent(ConstructorDeclaration.class); if (constructorDeclaration != null) { final AstNodeCollection<ParameterDeclaration> parameters = constructorDeclaration.getParameters(); for (final ParameterDeclaration p : parameters) { if (p.getUserData(Keys.PARAMETER_DEFINITION) == parameter) { _nodesToRemove.add(p); break; } } } } }
@Override public boolean matches(final INode other, final Match match) { if (other instanceof AssignmentExpression) { final AssignmentExpression otherExpression = (AssignmentExpression) other; return !otherExpression.isNull() && (otherExpression._operator == _operator || _operator == AssignmentOperatorType.ANY || otherExpression._operator == AssignmentOperatorType.ANY) && getLeft().matches(otherExpression.getLeft(), match) && getRight().matches(otherExpression.getRight(), match); } return false; }
@Override public Void visitAssignmentExpression(final AssignmentExpression node, final Void ignored) { startNode(node); node.getLeft().acceptVisitor(this, ignored); space(policy.SpaceAroundAssignment); writeToken(AssignmentExpression.getOperatorRole(node.getOperator())); space(policy.SpaceAroundAssignment); node.getRight().acceptVisitor(this, ignored); endNode(node); return null; }
private void inlineInitializers() { for (final String fieldName : _initializers.keySet()) { final FieldDeclaration declaration = _fieldDeclarations.get(fieldName); if (declaration != null && declaration.getVariables().firstOrNullObject().getInitializer().isNull()) { final AssignmentExpression assignment = _initializers.get(fieldName); final Expression value = assignment.getRight(); value.remove(); declaration.getVariables().firstOrNullObject().setInitializer(value); final AstNode parent = assignment.getParent(); if (parent instanceof ExpressionStatement) { parent.remove(); } else if (parent.getRole() == Roles.VARIABLE) { final Expression left = assignment.getLeft(); left.remove(); assignment.replaceWith(left); } else { final Expression left = assignment.getLeft(); left.remove(); parent.replaceWith(left); } } } }
final AssignmentOperatorType assignOp = AssignmentExpression.getCorrespondingAssignmentOperator(binaryOp); node.setOperator(assignOp); tryRewriteBinaryAsUnary(node, node.getLeft(), node.getRight()); return true; final AssignmentOperatorType assignOp = AssignmentExpression.getCorrespondingAssignmentOperator(binaryOp); node.setOperator(assignOp); return true;
final Expression left = node.getLeft(); final Expression right = node.getRight(); node.getAncestorsAndSelf(), Predicates.<AstNode>instanceOf(ConstructorDeclaration.class) ); if (node.getParent() instanceof ExpressionStatement) { _nodesToRemove.add(node.getParent());
final Expression right = replacedAssignment.getRight(); final AstNode parent = replacedAssignment.getParent(); right.putUserDataIfAbsent(Keys.MEMBER_REFERENCE, replacedAssignment.getUserData(Keys.MEMBER_REFERENCE)); right.putUserDataIfAbsent(Keys.VARIABLE, variable); replacedAssignment.replaceWith(declaration);
final Expression left = node.getLeft(); final AstNode parent = node.getParent(); node.replaceWith(reference);
final Expression left = node.getLeft(); final Expression right = node.getRight(); if (node.getParent() instanceof ExpressionStatement) { _nodesToRemove.add(node.getParent()); _initializers.put(resolvedTargetField.getFullName(), argument); if (node.getParent() instanceof ExpressionStatement) { _nodesToRemove.add(node.getParent()); _initializers.put(resolvedTargetField.getFullName(), initializer); if (node.getParent() instanceof ExpressionStatement) { _nodesToRemove.add(node.getParent());
private boolean tryConvertAssignmentExpressionIntoVariableDeclaration( final BlockStatement block, final Expression expression, final AstType type, final String variableName) { if (expression instanceof AssignmentExpression) { final AssignmentExpression assignment = (AssignmentExpression) expression; if (assignment.getOperator() == AssignmentOperatorType.ASSIGN) { if (assignment.getLeft() instanceof IdentifierExpression) { final IdentifierExpression identifier = (IdentifierExpression) assignment.getLeft(); if (StringUtilities.equals(identifier.getIdentifier(), variableName)) { variablesToDeclare.add( new VariableToDeclare( type, variableName, identifier.getUserData(Keys.VARIABLE), assignment, block ) ); return true; } } } } return false; }
operator = AssignmentExpression.getCorrespondingBinaryOperator(((AssignmentExpression) parent).getOperator());
private boolean tryRewriteBinaryAsUnary(final AssignmentExpression node, final Expression left, final Expression right) { final AssignmentOperatorType op = node.getOperator(); node.replaceWith(new UnaryOperatorExpression(unaryOp, left));
final AssignmentExpression assignment = new AssignmentExpression( new IdentifierExpression(statement.getOffset(), v.getName()), initializer ); assignment.putUserData(Keys.MEMBER_REFERENCE, initializer.getUserData(Keys.MEMBER_REFERENCE)); assignment.putUserData(Keys.VARIABLE, initializer.getUserData(Keys.VARIABLE)); assignment.putUserData(Keys.MEMBER_REFERENCE, declaration.getUserData(Keys.MEMBER_REFERENCE)); assignment.putUserData(Keys.VARIABLE, declaration.getUserData(Keys.VARIABLE));
protected boolean arrayAccessAtTheLeftSideOfAssignment(final AstNode node) { final AssignmentExpression assignment = firstOrDefault(node.getAncestors(AssignmentExpression.class)); if (assignment == null) { return false; } final Expression left = assignment.getLeft(); return left.isAncestorOf(node) && left instanceof IndexerExpression; }
public Annotation createAnnotation(final CustomAnnotation annotation) { final Annotation a = new Annotation(); final AstNodeCollection<Expression> arguments = a.getArguments(); a.setType(convertType(annotation.getAnnotationType())); final List<AnnotationParameter> parameters = annotation.getParameters(); for (final AnnotationParameter p : parameters) { final String member = p.getMember(); final Expression value = createAnnotationElement(p.getValue()); if (StringUtilities.isNullOrEmpty(member) || parameters.size() == 1 && "value".equals(member)) { arguments.add(value); } else { arguments.add(new AssignmentExpression(new IdentifierExpression(value.getOffset(), member), value)); } } return a; }
public final Expression getLeft() { return getChildByRole(LEFT_ROLE); }