Class InfixDataDepthFirstTreeIterator<D,​N extends TreeNode<D,​N>>

  • Type Parameters:
    D - is the type of the data inside the tree
    N - is the type of the tree nodes.
    All Implemented Interfaces:
    Iterator<D>, DataSelectionTreeIterator<D,​N>

    public class InfixDataDepthFirstTreeIterator<D,​N extends TreeNode<D,​N>>
    extends AbstractDataTreeIterator<D,​N>
    This class is an infixed depth-first iterator on a tree data.

    This iterator has an infix position which describes when to treat the parent node inside the set of child treatments. Significant values of this position are:

    0the parent is treated before the child at index 0. This is equivalent to a prefixed depth-first iterator. We recommend to use PrefixDepthFirstTreeIterator insteed of this iterator class.
    between 1 and getChildCount()-1the parent is treated before the child at the specified index.
    getChildCount()the parent is treated after the last child. This is equivalent to a postfixed depth-first iterator. We recommend to use PostfixDepthFirstTreeIterator insteed of this iterator class.

    By default this iterator assumes an infix index that corresponds to the middle of each child set (ie, getChildCount()/2).

    Since:
    13.0
    Version:
    17.0 2020-01-04 14:41:41
    Author:
    Stéphane GALLAND
    Maven Group Id:
    org.arakhne.afc.core
    Maven Artifact Id:
    mathtree
    • Constructor Detail

      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               NodeSelector<N> nodeSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               NodeSelector<N> nodeSelector,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               int infixPosition)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               int infixPosition,
                                               NodeSelector<N> nodeSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               int infixPosition,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(Tree<D,​N> tree,
                                               int infixPosition,
                                               NodeSelector<N> nodeSelector,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        tree - is the tree to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node)
        Constructor.
        Parameters:
        node - is the node to iterate.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               NodeSelector<N> nodeSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               NodeSelector<N> nodeSelector,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               int infixPosition)
        Constructor.
        Parameters:
        node - is the node to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               int infixPosition,
                                               NodeSelector<N> nodeSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               int infixPosition,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        dataSelector - permits to filter the user data replied by this iterator.
      • InfixDataDepthFirstTreeIterator

        public InfixDataDepthFirstTreeIterator​(N node,
                                               int infixPosition,
                                               NodeSelector<N> nodeSelector,
                                               DataSelector<D> dataSelector)
        Constructor.
        Parameters:
        node - is the node to iterate.
        infixPosition - is the index of the child which is assumed to be at the infixed position.
        nodeSelector - permits to filter the nodes replied/traversed by this iterator.
        dataSelector - permits to filter the user data replied by this iterator.