Ci sono certo numero di grandi tutorial e post là fuori che copre il più semplice dei metodi di Lens, per esempio Cleaner way to update nested structures; qualcuno può fornire esempi di utilizzo per questi tre altri metodi? Grazie.esempio utilizza dei scalaz.Lens modf, mod p e Xmap
7
A
risposta
1
Purtroppo, gli esempi di lenti Scalaz7 sono una WIP. È necessario fare questa domanda di the Scalaz Google Group. Prima di chiedere, prova questi esempi qui e guarda i video di Emmett.
guardare il codice sorgente di nuovo. Cosa puoi risolvere da questo?
def xmapbA[X, A >: A2 <: A1](b: Bijection[A, X]): LensFamily[X, X, B1, B2] =
xmapA(b to _)(b from _)
def xmapB[X1, X2](f: B1 => X1)(g: X2 => B2): LensFamily[A1, A2, X1, X2] =
lensFamily(a => run(a).xmap(f)(g))
def xmapbB[X, B >: B1 <: B2](b: Bijection[B, X]): LensFamily[A1, A2, X, X] =
xmapB(b to _)(b from _)
/** Modify the value viewed through the lens, returning a functor `X` full of results. */
def modf[X[+_]](f: B1 => X[B2], a: A1)(implicit XF: Functor[X]): X[A2] = {
val c = run(a)
XF.map(f(c.pos))(c put _)
}
Ci scusiamo per l'aiuto minimo. Posso semplicemente puntare a chi chiedere e ciò che è necessario sapere prima di chiedere.
Grazie per i riferimenti, Raahul. – Joffer