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
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
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[java.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[_]
- 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()
- 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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- def zip[B](b: StrictTree[B]): StrictTree[(A, B)]