This accessor lets you access values inside the Err variant of a Result.
import Accessors exposing (..)
import Result.Accessors as Result
import Lens as L
maybeRecord : { foo : Result String { bar : Int }, qux : Result String { bar : Int } }
maybeRecord = { foo = Ok { bar = 2 }
, qux = Err "Not an Int"
}
try (L.foo << Result.err) maybeRecord
--> Nothing
try (L.qux << Result.err) maybeRecord
--> Just "Not an Int"
map (L.foo << Result.err) String.toUpper maybeRecord
--> { foo = Ok { bar = 2 }, qux = Err "Not an Int" }
map (L.qux << Result.err) String.toUpper maybeRecord
--> { foo = Ok { bar = 2 }, qux = Err "NOT AN INT" }
This accessor lets you access values inside the Ok variant of a Result.