scales.utils.collection

path

package path

Content Hierarchy Learn more about scaladoc diagrams
Visibility
  1. Public
  2. All

Type Members

  1. trait AbstractPathIterator[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]], T] extends Iterator[T]

    Provides an Iterator from a given initial path that traverses the entire tree, allows both forwards and backwards iteration.

  2. case class AddAfter[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](newPath: utils.ItemOrTree[Item, Section, CC])(implicit cbf: utils.TreeCBF[Item, Section, CC]) extends FoldOperation[Item, Section, CC] with Product with Serializable

  3. case class AddBefore[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](newPath: utils.ItemOrTree[Item, Section, CC])(implicit cbf: utils.TreeCBF[Item, Section, CC]) extends FoldOperation[Item, Section, CC] with Product with Serializable

  4. case class AsIs[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]]() extends FoldOperation[Item, Section, CC] with Product with Serializable

    Use to make it easier to filter out large sets (for those that aren't interesting simply asis them, see tests for use case)

  5. class DirectionIterator[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]] extends AbstractPathIterator[Item, Section, CC, Path[Item, Section, CC]]

    Iterates over paths using the document order it skips over EndElemS events when going forward and StartElem when reversing, returning just the path.

  6. sealed trait FoldError extends AnyRef

  7. sealed trait FoldOperation[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]] extends AnyRef

    Represents the base for operations that fold over a list of paths

  8. case class Node[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](index: Int, focus: utils.ItemOrTree[Item, Section, CC]) extends Product with Serializable

    Position in a parent Paths children

  9. case class Path[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](top: EitherLike[Top[Item, Section, CC], Path[Item, Section, CC]], node: Node[Item, Section, CC])(implicit cbf: CanBuildFrom[CC[_], utils.ItemOrTree[Item, Section, CC], CC[utils.ItemOrTree[Item, Section, CC]]]) extends Iterable[Path[Item, Section, CC]] with RightLike[Top[Item, Section, CC], Path[Item, Section, CC]] with Product with Serializable

  10. class PathFoldCombiner[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]] extends AnyRef

    Provide & combinator to pass the result of one fold onto the other, in the case of failure no further joined functions will be called.

  11. trait PathImplicits extends AnyRef

  12. trait Paths extends AnyRef

    Utility functions for Paths, sorting, moving between Paths, getting to the root etc.

  13. trait Position[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]] extends AnyRef

    Positions only have meaning for a given Path(s).

  14. case class Remove[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]]()(implicit cbf: utils.TreeCBF[Item, Section, CC]) extends FoldOperation[Item, Section, CC] with Product with Serializable

  15. case class Replace[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](replaceWith: Iterable[utils.ItemOrTree[Item, Section, CC]])(implicit cbf: utils.TreeCBF[Item, Section, CC]) extends FoldOperation[Item, Section, CC] with Product with Serializable

    Allows replacing one path with many, may be easier to use the * version however

  16. case class ReplaceWith[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]](f: (Path[Item, Section, CC]) ⇒ utils.FoldR[Item, Section, CC], wholeTree: Boolean = false)(implicit cbf: utils.TreeCBF[Item, Section, CC]) extends FoldOperation[Item, Section, CC] with Product with Serializable

    Allows foldPositions to be nested, only replace and delete makes sense here (afaict).

  17. case class Top[Item <: LeftLike[Item, Tree[Item, Section, CC]], Section, CC[X] <: IndexedSeqLike[X, CC[X]]]() extends LeftLike[Top[Item, Section, CC], Path[Item, Section, CC]] with Product with Serializable

    Represents the Top for a given Path, there isn't a tree above this

Value Members

  1. object AddedBeforeOrAfterRoot extends FoldError with Product with Serializable

  2. object NoPaths extends FoldError with Product with Serializable

  3. object NoSingleRoot extends FoldError with Product with Serializable

  4. object PathFold

  5. object RemovedRoot extends FoldError with Product with Serializable

  6. object Replace extends Serializable

Ungrouped