2013-04-09 11 views

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.

+0

Grazie per i riferimenti, Raahul. – Joffer