| package com.intellij.dupLocator.iterators; |
| |
| import com.intellij.psi.PsiElement; |
| |
| /** |
| * Node iterator interface |
| */ |
| public abstract class NodeIterator implements Cloneable { |
| public abstract boolean hasNext(); |
| public abstract PsiElement current(); |
| public abstract void advance(); |
| public abstract void rewind(); |
| public abstract void reset(); |
| |
| public void rewind(int number) { |
| while(number > 0) { |
| --number; |
| rewind(); |
| } |
| } |
| |
| public NodeIterator clone() { |
| try { |
| return (NodeIterator) super.clone(); |
| } catch (CloneNotSupportedException e) { |
| e.printStackTrace(); |
| return null; |
| } |
| } |
| } |