class IterateeFunctions[F[_]] extends AnyRef
- Alphabetic
- By Inheritance
- IterateeFunctions
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new IterateeFunctions(F: Monad[F])
Type Members
- type ResumableIter[E, A] = IterateeT[E, F, (A, IterateeT[E, F, _])]
- type ResumableIterList[E, A] = IterateeT[E, F, (Iterable[A], IterateeT[E, F, _])]
- type ResumableIterListStep[E, A] = StepT[E, F, (Iterable[A], IterateeT[E, F, _])]
- type ResumableStep[E, A] = StepT[E, F, (A, IterateeT[E, F, _])]
- type TheF[X] = F[X]
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
- val F: Monad[F]
-
def
appendTo(to: Appendable)(implicit F: Applicative[F]): IterateeT[CharSequence, F, CharSequence]
Append to an appendable, always returns Done for a line, cont for everything else TODO - should it be a pair including the appendable?
Append to an appendable, always returns Done for a line, cont for everything else TODO - should it be a pair including the appendable?
- Annotations
- @inline()
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
dropWhile[E](f: (E) ⇒ Boolean)(implicit F: Monad[F]): IterateeT[E, F, Option[E]]
drop while iteratee, returning the possibly remaining data
drop while iteratee, returning the possibly remaining data
- Annotations
- @inline()
-
def
dropWhileM[E](f: (E) ⇒ F[Boolean])(implicit F: Monad[F]): IterateeT[E, F, Option[E]]
Same as dropWhile but captures the Monad in F
Same as dropWhile but captures the Monad in F
- Annotations
- @inline()
-
def
enumToMany[E, A, R](dest: ResumableIter[A, R])(toMany: ResumableIter[E, EphemeralStream[A]])(implicit F: Monad[F]): ResumableIter[E, R]
Takes Input[E] converts via toMany to an EphemeralStream[A].
Takes Input[E] converts via toMany to an EphemeralStream[A]. This in turn is fed to the destination iteratee. The inputs can be 1 -> Many, Many -> 1, or indeed 1 -> 1.
The callers must take care of what kind of continnuation Iteratee is returned in a Done.
If the dest returns EOF, the toMany is in turn called with EOF for any needed resource control processing.
- Annotations
- @inline()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
evalWith[FROM, TO](f: (FROM) ⇒ TO)(implicit F: Applicative[F]): IterateeT[FROM, F, TO]
Calls the function param with the fed data and returns its result - consider Scalaz 7 map directly rather than composing
Calls the function param with the fed data and returns its result - consider Scalaz 7 map directly rather than composing
- Annotations
- @inline()
-
def
extract[E, A](iter: ResumableIter[E, A])(implicit F: Monad[F]): F[Option[A]]
Extract the Some(value) from a Done or None if it was not Done.
Extract the Some(value) from a Done or None if it was not Done.
- Annotations
- @inline()
-
def
extractCont[E, A](iter: ResumableIter[E, A])(implicit F: Monad[F]): ResumableIter[E, A]
Extract the continuation from a Done
Extract the continuation from a Done
- Annotations
- @inline()
-
def
extractContFromDoneOrCont[E, A](iter: ResumableIter[E, A])(implicit F: Monad[F]): ResumableIter[E, A]
Extract the continuation from a Done or the cont itself
Extract the continuation from a Done or the cont itself
- Annotations
- @inline()
-
def
extractContS[E, A](s: ResumableStep[E, A])(implicit F: Monad[F]): ResumableIter[E, A]
Extract the continuation from a Done
Extract the continuation from a Done
- Annotations
- @inline()
-
def
extractS[E, A](iter: ResumableStep[E, A])(implicit F: Monad[F]): Option[A]
Extract the Some(value) from a Done or None if it was not Done.
Extract the Some(value) from a Done or None if it was not Done.
- Annotations
- @inline()
-
def
filter[E](f: (E) ⇒ Boolean)(implicit F: Monad[F]): IterateeT[E, F, Iterable[E]]
filter iteratee, greedily taking all content until eof
filter iteratee, greedily taking all content until eof
- Annotations
- @inline()
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find[E](f: (E) ⇒ Boolean)(implicit F: Monad[F]): IterateeT[E, F, Option[E]]
"find" iteratee, finds Some(first) or None
"find" iteratee, finds Some(first) or None
- Annotations
- @inline()
-
def
flatMap[E, A, B](itr: IterateeT[E, F, A])(f: (A) ⇒ IterateeT[E, F, B])(implicit F: Monad[F]): IterateeT[E, F, B]
Based on Scalaz 7 flatMap but exposes the monad through the f parameter
Based on Scalaz 7 flatMap but exposes the monad through the f parameter
- Annotations
- @inline()
-
def
foldI[E, A](f: (E, A) ⇒ A)(init: A, stopOn: (A) ⇒ Boolean = (_: A) => true)(implicit F: Monad[F]): ResumableIter[E, A]
Stepwise fold, each element is evaluated but each one is returned as a result+resumable iter.
Stepwise fold, each element is evaluated but each one is returned as a result+resumable iter.
- Annotations
- @inline()
-
def
foldIM[E, A](f: (E, A) ⇒ F[A])(init: A, stopOn: (A) ⇒ Boolean = (_: A) => true)(implicit F: Monad[F]): ResumableIter[E, A]
Stepwise fold but the result of f is bound to F
Stepwise fold but the result of f is bound to F
- Annotations
- @inline()
-
def
foldOnDone[E, A, ACC](e: ⇒ EnumeratorT[E, F])(initAcc: ACC, initResumable: ResumableIter[E, A])(f: (ACC, A) ⇒ ACC)(implicit F: Monad[F]): F[ACC]
Folds over the Iteratee with Cont or Done and Empty, returning with Done and EOF.
Folds over the Iteratee with Cont or Done and Empty, returning with Done and EOF. If there is a ping pong on enumerator -> Cont -> enumerator then we'll of course get an infinite loop.
foldI returns a ResumableIter that performs a fold until a done, this folds over the enumerator to return a value.
combine with onDone to get through chunks of data.
- Annotations
- @inline()
-
def
foldOnDoneIter[E, A, ACC](initAcc: ACC, initIter: ResumableIter[E, A])(f: (ACC, A) ⇒ ACC)(implicit F: Monad[F]): IterateeT[E, F, ACC]
Enumeratee that folds over the Iteratee with Cont or Done and Empty, returning with Done and EOF.
Enumeratee that folds over the Iteratee with Cont or Done and Empty, returning with Done and EOF.
Converts ResumableIters on Done via a fold, returning Done only when receiving EOF from the initIter.
NB - This can be thought of the reverse of toResumableIter but also accumulating.
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
isDone[E, A](iter: IterateeT[E, F, A])(implicit F: Monad[F]): F[Boolean]
Helper to identify dones
Helper to identify dones
- Annotations
- @inline()
-
def
isDoneS[E, A](step: StepT[E, F, A])(implicit F: Monad[F]): Boolean
- Annotations
- @inline()
-
def
isEOF[E, A](iter: IterateeT[E, F, A])(implicit F: Monad[F]): F[Boolean]
Helper for done and eof
Helper for done and eof
- Annotations
- @inline()
-
def
isEOFS[E, A](step: StepT[E, F, A])(implicit F: Monad[F]): Boolean
Helper for done and eof
Helper for done and eof
- Annotations
- @inline()
-
def
isEmpty[E, A](iter: IterateeT[E, F, A])(implicit F: Monad[F]): F[Boolean]
Helper for done and empty
Helper for done and empty
- Annotations
- @inline()
-
def
isEmptyS[E, A](step: StepT[E, F, A])(implicit F: Monad[F]): Boolean
Helper for done and empty
Helper for done and empty
- Annotations
- @inline()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isResumableEOF[E, A](iter: ResumableIter[E, A])(implicit F: Monad[F]): F[Boolean]
is this iteratee actually "empty"
is this iteratee actually "empty"
- Annotations
- @inline()
-
def
isResumableEOFS[E, A](s: ResumableStep[E, A])(implicit F: Monad[F]): Boolean
- Annotations
- @inline()
-
def
iteratorEnumerator[E](iter: Iterator[E])(implicit F: Monad[F]): EnumeratorT[E, F]
- Annotations
- @inline()
-
def
mapTo[E, A](f: (E) ⇒ Input[EphemeralStream[A]])(implicit F: Applicative[F]): IterateeT[E, F, EphemeralStream[A]]
Maps a given input to a function returning a Input[EphemeralStream].
Maps a given input to a function returning a Input[EphemeralStream]. If the Input is El it returns it, if EOF empty and continues on empty.
- Annotations
- @inline()
-
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
onDone[E, A](originalList: List[ResumableIter[E, A]])(implicit F: Monad[F]): ResumableIterList[E, A]
onDone, iterates over the list of iteratees applying the element, when the resulting list contains a Done then the list of Dones is returned.
onDone, iterates over the list of iteratees applying the element, when the resulting list contains a Done then the list of Dones is returned.
One can use tuples or pattern matching to discern which of the original lists iteratees have matched.
Due to the return type of this iteratee all items in the list must return the same type and must return both an A and an IterV with the same interface to continue with the next and maintain state.
In the case of EOF, an empty list is returned
- Annotations
- @inline()
-
def
repeatUntil[E, A](init: A)(f: (A) ⇒ A)(stopOn: (A) ⇒ Boolean)(implicit F: Monad[F]): F[(A, ResumableIter[A, A])]
Repeating fold on done, calling f with the result to accumulate with side effects, stopping when stopOn is true and returns the accumulated value continuation iteratee pair.
-
def
repeatUntilM[E, A](init: A)(f: (A) ⇒ F[A])(stopOn: (A) ⇒ Boolean)(implicit F: Monad[F]): F[(A, ResumableIter[A, A])]
Repeating fold on done, calling f with the result to accumulate with side effects, stopping when stopOn is true and returns the accumulated value continuation iteratee pair.
-
def
resumableEOF[E, A](input: A = null)(implicit F: Monad[F]): ResumableIter[E, A]
marks a continuation resumableiter as actually being EOF - i.e.
marks a continuation resumableiter as actually being EOF - i.e. don't attempt to evaluate it
- Annotations
- @inline()
-
def
resumableEOFDone[E, A](input: A)(implicit F: Monad[F]): ResumableStep[E, A]
- Annotations
- @inline()
-
def
runningCount[E](implicit F: Monad[F]): functions.ResumableIter[E, F, Long]
keeps a running count of each element, probably not of much use unless combined but acts as a good poc for ResumableIter
keeps a running count of each element, probably not of much use unless combined but acts as a good poc for ResumableIter
- Annotations
- @inline()
-
def
sum[T](implicit n: Numeric[T], F: Applicative[F]): IterateeT[T, F, T]
Sums an iteratee up, consider using the Scalaz IterateeT monadic sum instead
Sums an iteratee up, consider using the Scalaz IterateeT monadic sum instead
- Annotations
- @inline()
-
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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- object EphemeralStreamEnum
- object IterateeImplicits
Deprecated Value Members
-
def
enumerateeMap[E, A, R](target: IterateeT[A, F, R])(f: (E) ⇒ A)(implicit F: Monad[F]): IterateeT[E, F, R]
Enumeratee that converts input 1:1 String => Int, enumerator Iterator[String] but IterV[Int, Int]
Enumeratee that converts input 1:1 String => Int, enumerator Iterator[String] but IterV[Int, Int]
- Annotations
- @deprecated @inline()
- Deprecated