case class StrictTree[A](rootLabel: A, subForest: Vector[StrictTree[A]]) extends Product with Serializable
- rootLabel
The label at the root of this tree.
- subForest
The child nodes of this tree.
- Source
- StrictTree.scala
- Alphabetic
- By Inheritance
- StrictTree
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new StrictTree(rootLabel: A, subForest: Vector[StrictTree[A]])
- rootLabel
The label at the root of this tree.
- subForest
The child nodes of this tree.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def cobind[B](f: (StrictTree[A]) => B): StrictTree[B]
Binds the given function across all the subtrees of this tree.
- def drawTree(implicit sh: Show[A]): String
A 2D String representation of this StrictTree.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(obj: Any): Boolean
- Definition Classes
- StrictTree → Equals → AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def flatMap[B](f: (A) => StrictTree[B]): StrictTree[B]
- def flatten: Vector[A]
Pre-order traversal.
- def foldMap[B](f: (A) => B)(implicit arg0: Monoid[B]): B
Maps the elements of the StrictTree into a Monoid and folds the resulting StrictTree.
- def foldNode[Z](f: (A) => (Vector[StrictTree[A]]) => Z): Z
- def foldRight[B](z: B)(f: (A, => B) => B): B
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
This implementation is 24x faster than the trampolined implementation for StrictTreeTestJVM's hashCode test.
This implementation is 24x faster than the trampolined implementation for StrictTreeTestJVM's hashCode test.
- Definition Classes
- StrictTree → AnyRef → Any
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def levels: Vector[Vector[A]]
Breadth-first traversal.
- def map[B](f: (A) => B): StrictTree[B]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val rootLabel: A
- def scanr[B](g: (A, Vector[StrictTree[B]]) => B): StrictTree[B]
A histomorphic transform.
A histomorphic transform. Each element in the resulting tree is a function of the corresponding element in this tree and the histomorphic transform of its children.
- def size: Int
- val subForest: Vector[StrictTree[A]]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toTree: Tree[A]
- def traverse1[G[_], B](f: (A) => G[B])(implicit arg0: Apply[G]): G[StrictTree[B]]
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def zip[B](b: StrictTree[B]): StrictTree[(A, B)]