Trait/Object

org.atnos.eff

WriterEffect

Related Docs: object WriterEffect | package eff

Permalink

trait WriterEffect extends WriterCreation with WriterInterpretation with WriterImplicits

Effect for logging values alongside computations

Compared to traditional Writer monad which accumulates values by default this effect can be interpreted in different ways:

Several writer effects can be used in the same stack if they are tagged.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. WriterEffect
  2. WriterImplicits
  3. WriterImplicits1
  4. WriterInterpretation
  5. WriterCreation
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait Fold[A, B] extends AnyRef

    Permalink

    support trait for folding values while possibly keeping some internal state

    support trait for folding values while possibly keeping some internal state

    Definition Classes
    WriterInterpretation

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. implicit def ListFold[A]: Fold[A, List[A]]

    Permalink
    Definition Classes
    WriterInterpretation
  5. def MonoidFold[A](implicit arg0: Monoid[A]): Fold[A, A]

    Permalink
    Definition Classes
    WriterInterpretation
  6. implicit def TaggedWriterMemberFirst[R <: Effects, Tg, A]: Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, |:[[X]AnyRef { ... /* 2 definitions in type refinement */ }, R], R]

    Permalink
    Definition Classes
    WriterImplicits
  7. implicit def TaggedWriterMemberSuccessor[O[_], R <: Effects, U <: Effects, Tg, A](implicit m: Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, R, U]): Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, |:[O, R], |:[O, U]]

    Permalink
    Definition Classes
    WriterImplicits1
  8. implicit def TaggedWriterMemberZero[Tg, A]: Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, |:[[X]AnyRef { ... /* 2 definitions in type refinement */ }, NoEffect], NoEffect]

    Permalink
    Definition Classes
    WriterImplicits
  9. implicit def WriterMemberFirst[R <: Effects, A]: Aux[[β]WriterT[[+X]X, A, β], |:[[β]WriterT[[+X]X, A, β], R], R]

    Permalink
    Definition Classes
    WriterImplicits
  10. implicit def WriterMemberSuccessor[O[_], R <: Effects, U <: Effects, A](implicit m: Aux[[β]WriterT[[+X]X, A, β], R, U]): Aux[[β]WriterT[[+X]X, A, β], |:[O, R], |:[O, U]]

    Permalink
    Definition Classes
    WriterImplicits1
  11. implicit def WriterMemberZero[A]: Aux[[β]WriterT[[+X]X, A, β], |:[[β]WriterT[[+X]X, A, β], NoEffect], NoEffect]

    Permalink
    Definition Classes
    WriterImplicits
  12. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  13. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  21. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  23. def runTaggedWriter[R <: Effects, U <: Effects, T, O, A](w: Eff[R, A])(implicit m: Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, R, U]): Eff[U, (A, List[O])]

    Permalink

    run a tagged writer effect

    run a tagged writer effect

    Definition Classes
    WriterInterpretation
  24. def runTaggedWriterFold[R <: Effects, U <: Effects, T, O, A, B](w: Eff[R, A])(fold: Fold[O, B])(implicit m: Aux[[X]AnyRef { ... /* 2 definitions in type refinement */ }, R, U]): Eff[U, (A, B)]

    Permalink
    Definition Classes
    WriterInterpretation
  25. def runWriter[R <: Effects, U <: Effects, O, A, B](w: Eff[R, A])(implicit m: Aux[[β]WriterT[[+X]X, O, β], R, U]): Eff[U, (A, List[O])]

    Permalink

    run a writer effect and return the list of written values

    run a writer effect and return the list of written values

    This uses a ListBuffer internally to append values

    Definition Classes
    WriterInterpretation
  26. def runWriterFold[R <: Effects, U <: Effects, O, A, B](w: Eff[R, A])(fold: Fold[O, B])(implicit m: Aux[[β]WriterT[[+X]X, O, β], R, U]): Eff[U, (A, B)]

    Permalink

    More general fold of runWriter where we can use a fold to accumulate values in a mutable buffer

    More general fold of runWriter where we can use a fold to accumulate values in a mutable buffer

    Definition Classes
    WriterInterpretation
  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  28. def tell[R, O](o: O)(implicit member: Member[[β]WriterT[[+X]X, O, β], R]): Eff[R, Unit]

    Permalink

    write a given value

    write a given value

    Definition Classes
    WriterCreation
  29. def tellTagged[R, T, O](o: O)(implicit member: Member[[X]AnyRef { ... /* 2 definitions in type refinement */ }, R]): Eff[R, Unit]

    Permalink

    write a given value

    write a given value

    Definition Classes
    WriterCreation
  30. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  31. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from WriterImplicits

Inherited from WriterImplicits1

Inherited from WriterInterpretation

Inherited from WriterCreation

Inherited from AnyRef

Inherited from Any

Ungrouped