arrow-optics / arrow.optics.dsl / index

index

fun <T, S, I, A> Lens<T, S>.index(ID: Index<S, I, A>, i: I): Optional<T, A>

DSL to compose Index with a Lens for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Lens with a focus in S

Return Optional with a focus in A at given index I

fun <T, S, I, A> Iso<T, S>.index(ID: Index<S, I, A>, i: I): Optional<T, A>

DSL to compose Index with an Iso for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Iso with a focus in S

Return Optional with a focus in A at given index I

fun <T, S, I, A> Prism<T, S>.index(ID: Index<S, I, A>, i: I): Optional<T, A>

DSL to compose Index with a Prism for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Prism with a focus in S

Return Optional with a focus in A at given index I

fun <T, S, I, A> Optional<T, S>.index(ID: Index<S, I, A>, i: I): Optional<T, A>

DSL to compose Index with an Optional for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Optional with a focus in S

Return Optional with a focus in A at given index I

fun <T, S, I, A> Setter<T, S>.index(ID: Index<S, I, A>, i: I): Setter<T, A>

DSL to compose Index with a Setter for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Setter with a focus in S

Return Setter with a focus in A at given index I.

fun <T, S, I, A> Traversal<T, S>.index(ID: Index<S, I, A>, i: I): Traversal<T, A>

DSL to compose Index with a Traversal for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Traversal with a focus in S

Return Traversal with a focus in A at given index I.

fun <T, S, I, A> Fold<T, S>.index(ID: Index<S, I, A>, i: I): Fold<T, A>

DSL to compose Index with a Fold for a structure S to focus in on A at given index I

Parameters

ID - Index instance to provide a Optional to focus into S at I

i - index I to focus into S and find focus A

Receiver Fold with a focus in S

Return Fold with a focus in A at given index I.