Class PathMap.PathMapNodeSet

    • Constructor Detail

      • PathMapNodeSet

        public PathMapNodeSet()
        Create an initially-empty set of path map nodes
      • PathMapNodeSet

        public PathMapNodeSet​(PathMap.PathMapNode singleton)
        Create a set of path map nodes that initially contains a single node
        Parameters:
        singleton - the single node to act as the initial content
    • Method Detail

      • createArc

        public PathMap.PathMapNodeSet createArc​(int axis,
                                                NodeTest test)
        Create an arc from each node in this node set to a corresponding newly-created target node
        Parameters:
        axis - the axis of the step defining the transition
        test - the node test of the step defining the transition
        Returns:
        the set of new target nodes
      • addNodeSet

        public void addNodeSet​(PathMap.PathMapNodeSet nodes)
        Combine two node sets into one
        Parameters:
        nodes - the set of nodes to be added to this set
      • setAtomized

        public void setAtomized()
        Set the atomized property on all nodes in this nodeset
      • setReturnable

        public void setReturnable​(boolean isReturned)
        Set the returnable property on all nodes in this nodeset
        Parameters:
        isReturned - true if nodes should be returnable
      • hasReachableReturnables

        public boolean hasReachableReturnables()
        Test whether there are any returnable nodes reachable from nodes in this nodeset
        Returns:
        true if there are any reachable returnable nodes
      • allPathsAreWithinStreamableSnapshot

        public boolean allPathsAreWithinStreamableSnapshot()
        Determine whether the path is entirely within a streamable snapshot of a streamed document: that is, it must only navigate to ancestors and to attributes of ancestors
        Returns:
        true if the path is entirely within a streamable snapshot
      • addDescendants

        public void addDescendants()
        Indicate that all the descendants of the nodes in this nodeset are required
      • setHasUnknownDependencies

        public void setHasUnknownDependencies()
        Indicate that all the nodes have unknown dependencies