sealed abstract class CorecursiveList[A] extends AnyRef
The corecursive list; i.e. the arguments to unfold
saved off to
a data structure. Generally does not have methods itself; as with
scalaz.NonEmptyList, it provides typeclass instances instead,
and you typically import typeclass syntax to get methods.
The corecursive list can be a very efficient way to represent
"listlike" things in some cases; because it is so unlike "normal"
collections, though, it's important to understand how its
operations are implemented and what their performance
characteristics are going to be. For example, using cons
iteratively to add a bunch of elements to the beginning of a
scala.collection.immutable.List is very efficient; it's very
inefficient for corecursive list.
Operations are generally designed to preserve the isomorphism with
scalaz.EphemeralStream; for example, ap
could be a "zipping"
ap
, but instead is a less efficient "combination" style. This
means that the scalaz.Monad has the same behavior as that of
scalaz.EphemeralStream and more traditional strict list
structures.
- Source
- CorecursiveList.scala
- Alphabetic
- By Inheritance
- CorecursiveList
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract type S
Concrete 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()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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()