Packages

trait Lens[Container, A] extends Serializable

Self Type
Lens[Container, A]
Linear Supertypes
Serializable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Lens
  2. Serializable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def get(c: Container): A

    get knows how to extract some field of type A from a container

  2. abstract def set(a: A): Mutation[Container]

    Represents an assignment operator.

    Represents an assignment operator.

    Given a value of type A, sets knows how to transform a container such that a is assigned to the field.

    We must have get(set(a)(c)) == a

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def :=(a: A): Mutation[Container]

    alias to set

  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. def compose[B](other: Lens[A, B]): Lens[Container, B]

    Composes two lenses, this enables nesting.

    Composes two lenses, this enables nesting.

    If our field of type A has a sub-field of type B, then given a lens for it (other: Lens[A, B]) we can create a single lens from Container to B.

  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  11. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def modify(f: (A) => A): Mutation[Container]

    Represent an update operator (like x.y += 1 )

  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. def setIfDefined(aOpt: Option[A]): Mutation[Container]

    Optional assignment.

    Optional assignment.

    Given a Some[A], assign the Some's value to the field. Given None, the container is unchanged.

  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  24. def zip[B](other: Lens[Container, B]): Lens[Container, (A, B)]

    Given two lenses with the same origin, returns a new lens that can mutate both values represented by both lenses through a tuple.

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped