@Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }
private void copySubtree(SequentialNode root, SequentialNode newBase) { if (root instanceof BlockEndNode) { ((BlockEndNode) root).updateBase(newBase); return; } else if (root.getSuccessor() instanceof SequentialNode) { SequentialNode successor = (SequentialNode) root.getSuccessor(); SequentialNode newSuccessor = successor.copy(); root.replaceSuccessor(successor, newSuccessor); copySubtree(newSuccessor, newBase); } }
@Override public void visit(IfThenElseNode node) { node.getPositive().accept(this); node.getNegative().accept(this); node.getSuccessor().accept(this); }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(AssignmentNode node) { node.getSuccessor().accept(this); }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(StoreResultNode node) { node.getSuccessor().accept(this); }
@Override public void visit(ColorNode node) { node.getSuccessor().accept(this); } }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(BreakNode node) { node.getSuccessor().accept(this); }
@Override public void visit(Macro node) { // ignore body of macro node.getSuccessor().accept(this); }
private void copySubtree(SequentialNode root, SequentialNode newBase) { if (root instanceof BlockEndNode) { ((BlockEndNode) root).updateBase(newBase); return; } else if (root.getSuccessor() instanceof SequentialNode) { SequentialNode successor = (SequentialNode) root.getSuccessor(); SequentialNode newSuccessor = successor.copy(); root.replaceSuccessor(successor, newSuccessor); copySubtree(newSuccessor, newBase); } }
private void replaceSubtree(Node root, Expression old, Expression newExpression) { if (root instanceof BlockEndNode || root instanceof EndNode) { return; } else if (root instanceof SequentialNode) { root.replaceExpression(old, newExpression); replaceSubtree(((SequentialNode) root).getSuccessor(), old, newExpression); } }
private void replaceSubtree(Node root, Expression old, Expression newExpression) { if (root instanceof BlockEndNode || root instanceof EndNode) { return; } else if (root instanceof SequentialNode) { root.replaceExpression(old, newExpression); replaceSubtree(((SequentialNode) root).getSuccessor(), old, newExpression); } }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }
/** * {@inheritDoc} * * This empty implementation visits the positive part, the negative part and finally the successor node by default. */ @Override public void visit(IfThenElseNode node) { node.getPositive().accept(this); node.getNegative().accept(this); node.getSuccessor().accept(this); }
@Override public void visit(ColorNode node) { node.getSuccessor().accept(this); } }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(Macro node) { node.getSuccessor().accept(this); }
@Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }
/** * {@inheritDoc} * * This empty implementation visits the positive part, the negative part and finally the successor node by default. */ @Override public void visit(IfThenElseNode node) { node.getPositive().accept(this); node.getNegative().accept(this); node.getSuccessor().accept(this); }
/** * {@inheritDoc} * * This empty implementation visits the successor node by default. */ @Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }
@Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }
@Override public void visit(LoopNode node) { node.getBody().accept(this); node.getSuccessor().accept(this); }