ASTEnumerator.java
上传用户:afrynkmhm
上传日期:2007-01-06
资源大小:1262k
文件大小:1k
源码类别:

编译器/解释器

开发平台:

Others

  1. package antlr.collections.impl;
  2. /* ANTLR Translator Generator
  3.  * Project led by Terence Parr at http://www.jGuru.com
  4.  * Software rights: http://www.antlr.org/RIGHTS.html
  5.  *
  6.  * $Id: //depot/code/org.antlr/release/antlr-2.7.0/antlr/collections/impl/ASTEnumerator.java#1 $
  7.  */
  8. import antlr.collections.impl.Vector;
  9. import antlr.collections.ASTEnumeration;
  10. import antlr.collections.AST;
  11. import java.util.NoSuchElementException;
  12. public class ASTEnumerator implements antlr.collections.ASTEnumeration {
  13. /** The list of root nodes for subtrees that match */
  14. VectorEnumerator nodes;
  15. int i = 0;
  16. public ASTEnumerator(Vector v) {
  17. nodes = new VectorEnumerator(v);
  18. }
  19. public boolean hasMoreNodes() {
  20. synchronized (nodes) {
  21. return i <= nodes.vector.lastElement;
  22. }
  23. }
  24. public antlr.collections.AST nextNode() {
  25. synchronized (nodes) {
  26. if (i <= nodes.vector.lastElement) {
  27. return (AST)nodes.vector.data[i++];
  28. }
  29. throw new NoSuchElementException("ASTEnumerator");
  30. }
  31. }
  32. }