Safe Haskell | None |
---|---|

Language | Haskell2010 |

## Synopsis

- type ReversedPrism s t a b = Optic A_ReversedPrism NoIx s t a b
- type ReversedPrism' s a = Optic' A_ReversedPrism NoIx s a
- data A_ReversedPrism :: OpticKind

# Formation

type ReversedPrism s t a b = Optic A_ReversedPrism NoIx s t a b Source #

Type synonym for a type-modifying reversed prism.

type ReversedPrism' s a = Optic' A_ReversedPrism NoIx s a Source #

Type synonym for a type-preserving reversed prism.

# Introduction

There is no canonical introduction form for `ReversedPrism`

, but you can
use `re`

to construct one from a `Prism`

:

(\ f g ->`re`

(`prism`

f g)) :: (s -> a) -> (b -> Either a t) ->`ReversedPrism`

s t a b

# Elimination

A `ReversedPrism`

is a `Getter`

, so you can specialise
types to obtain:

`view`

::`ReversedPrism'`

s a -> s -> a

There is no reversed `matching`

defined, but it is
definable using `re`

:

`matching`

.`re`

::`ReversedPrism`

s t a b -> b -> Either a t

# Computation

# Subtyping

data A_ReversedPrism :: OpticKind Source #

Tag for a reversed prism.