GeneratedExtension

case class GeneratedExtension[C <: ExtendableMessage[C], T](lens: Lens[C, T]) extends Lens[C, T]
Companion
object
trait Serializable
trait Product
trait Equals
trait Lens[C, T]
class Object
trait Matchable
class Any

Value members

Concrete methods

def get(c: C): T
def set(t: T): () => C
def withLens[B](other: Lens[T, B]): GeneratedExtension[C, B]

Inherited methods

def :=(a: T): () => C

alias to set

alias to set

Inherited from
Lens
def compose[B](other: Lens[T, B]): Lens[C, 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.

Inherited from
Lens
def modify(f: T => T): () => C

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

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

Inherited from
Lens
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
def setIfDefined(aOpt: Option[T]): () => C

Optional assignment.

Optional assignment.

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

Inherited from
Lens
def zip[B](other: Lens[C, B]): Lens[C, (T, B)]

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

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
Lens