You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2017/10/31 20:56:01 UTC

svn commit: r1813931 - in /uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl: TypeImpl.java TypeSystemImpl.java

Author: schor
Date: Tue Oct 31 20:56:01 2017
New Revision: 1813931

URL: http://svn.apache.org/viewvc?rev=1813931&view=rev
Log:
no Jira - make TypeSystem and Type iterable 

Modified:
    uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeImpl.java
    uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeSystemImpl.java

Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeImpl.java
URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeImpl.java?rev=1813931&r1=1813930&r2=1813931&view=diff
==============================================================================
--- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeImpl.java (original)
+++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeImpl.java Tue Oct 31 20:56:01 2017
@@ -25,6 +25,7 @@ import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.NoSuchElementException;
 import java.util.Vector;
 import java.util.function.BiConsumer;
 import java.util.stream.Stream;
@@ -1138,6 +1139,31 @@ public class TypeImpl implements Type, C
 //    return generator;
 //  }
 
+  @Override
+  public Iterator<Feature> iterator() {
+    final FeatureImpl[] fia = getFeatureImpls();
+    final int l = fia.length;
+    
+    return new Iterator<Feature>() {
+      int i = 0;
+      
+      @Override
+      public boolean hasNext() {
+        return i < l;
+      }
+
+      @Override
+      public Feature next() {
+        if (hasNext()) {
+          return fia[i++];
+        } else {
+          throw new NoSuchElementException();
+        }
+      }
+      
+    };
+  }
+
 //  /**
 //   * @return the jcasClassInfo
 //   */

Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeSystemImpl.java
URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeSystemImpl.java?rev=1813931&r1=1813930&r2=1813931&view=diff
==============================================================================
--- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeSystemImpl.java (original)
+++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/TypeSystemImpl.java Tue Oct 31 20:56:01 2017
@@ -2678,6 +2678,11 @@ public class TypeSystemImpl implements T
     return callSite;
   }
 
+  @Override
+  public Iterator<Type> iterator() {
+    return getTypeIterator();
+  }
+
 //  private static boolean isBuiltIn(Class<? extends TOP> clazz) {
 //    return BuiltinTypeKinds.creatableBuiltinJCasClassNames.contains(clazz.getName());
 //  }