@Override protected void onElement(CtRole role, CtElement element) { next.accept(element); super.onElement(role, element); }
/** * This method is called ONLY when the listener decides that the current element and children should be visited. * Subclasses can override it to react accordingly. */ protected void doScan(CtRole role, CtElement element, ScanningMode mode) { //send input to output if (mode.visitElement) { onElement(role, element); } if (mode.visitChildren) { //do not call scan(CtElement) nor scan(CtRole, CtElement), because they would cause StackOverflowError element.accept(this); } }