Class Step<T extends XSComponent>

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      (package private) static class  Step.AnonymousType
      Matches anonymous types.
      (package private) static class  Step.Any
      Matches any name.
      (package private) static class  Step.Facet
      Matches a particular kind of facets.
      private static class  Step.Filtered<T extends XSComponent>  
      (package private) static class  Step.Named
      Matches a particular name.
      (package private) static class  Step.Schema
      Matches a schema in a particular namespace.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      Axis<? extends T> axis  
      (package private) int predicate
      'Predicate' in SCD designates the index of the item.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Step​(Axis<? extends T> axis)  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Iterator<T> evaluate​(java.util.Iterator<XSComponent> nodeSet)
      Evaluate this step against the current node set and returns matched nodes.
      protected abstract java.util.Iterator<? extends T> filter​(java.util.Iterator<? extends T> base)
      Perform filtering (which is different depending on the kind of step.)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • predicate

        int predicate
        'Predicate' in SCD designates the index of the item. -1 if there's no predicate. Predicate starts from 1.

        Because of the parsing order this parameter cannot be marked final, even though it's immutable once it's parsed.

    • Constructor Detail

      • Step

        protected Step​(Axis<? extends T> axis)
    • Method Detail

      • filter

        protected abstract java.util.Iterator<? extends T> filter​(java.util.Iterator<? extends T> base)
        Perform filtering (which is different depending on the kind of step.)
      • evaluate

        public final java.util.Iterator<T> evaluate​(java.util.Iterator<XSComponent> nodeSet)
        Evaluate this step against the current node set and returns matched nodes.