optics-core-0.4.1.1: Optics as an abstract interface: core definitions

Safe Haskell | None
Language | Haskell2010

Optics.Each.Core

Contents

- Each

Description

This module defines the `Each` class, which provides an `IxTraversal` that extracts `each` element of a (potentially monomorphic) container.

Note that orphan instances for this class are defined in the `Optics.Each` module from `optics-extra`, so if you are not simply depending on `optics` you may wish to import that module instead.

Synopsis

- class Each i s t a b | s -> i a, t -> i b, s b -> t, t a -> s where
  - each :: IxTraversal i s t a b

# Each

class Each i s t a b | s -> i a, t -> i b, s b -> t, t a -> s where Source #

Extract `each` element of a (potentially monomorphic) container.

    >>> over each (*10) (1,2,3)
    (10,20,30)

    >>> iover each (\i a -> a*10 + succ i) (1,2,3)
    (11,22,33)

Minimal complete definition

Nothing

Methods

each :: IxTraversal i s t a b Source #

default each :: forall (g :: Type -> Type). (TraversableWithIndex i g, s ~ g a, t ~ g b) => IxTraversal i s t a b Source #

#### Instances

Instances details

Each () (Identity a) (Identity b) a b Source #

    each :: IxTraversal () (Identity a) (Identity b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal () (Identity a) (Identity b) a b Source #

Each () (Maybe a) (Maybe b) a b Source #

    each :: IxTraversal () (Maybe a) (Maybe b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal () (Maybe a) (Maybe b) a b Source #

Each Int (IntMap a) (IntMap b) a b Source #

    each :: IxTraversal Int (IntMap a) (IntMap b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (IntMap a) (IntMap b) a b Source #

Each Int (Seq a) (Seq b) a b Source #

    each :: IxTraversal Int (Seq a) (Seq b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (Seq a) (Seq b) a b Source #

Each Int (NonEmpty a) (NonEmpty b) a b Source #

    each :: IxTraversal Int (NonEmpty a) (NonEmpty b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (NonEmpty a) (NonEmpty b) a b Source #

Each Int [a] [b] a b Source #

    each :: IxTraversal Int [a] [b] a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int [a] [b] a b Source #

(a ~ a1, b ~ b1) => Each Int (a, a1) (b, b1) a b Source #

    each :: IxTraversal Int (a, a) (b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1) (b, b1) a b Source #

(Ix i, i ~ j) => Each i (Array i a) (Array j b) a b Source #

    each :: Ix i => IxTraversal i (Array i a) (Array i b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal i (Array i a) (Array j b) a b Source #

k ~ k' => Each k (Map k a) (Map k' b) a b Source #

    each :: IxTraversal k (Map k a) (Map k b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal k (Map k a) (Map k' b) a b Source #

(a ~ a1, a ~ a2, b ~ b1, b ~ b2) => Each Int (a, a1, a2) (b, b1, b2) a b Source #

    each :: IxTraversal Int (a, a, a) (b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2) (b, b1, b2) a b Source #

(a ~ a1, a ~ a2, a ~ a3, b ~ b1, b ~ b2, b ~ b3) => Each Int (a, a1, a2, a3) (b, b1, b2, b3) a b Source #

    each :: IxTraversal Int (a, a, a, a) (b, b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3) (b, b1, b2, b3) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, b ~ b1, b ~ b2, b ~ b3, b ~ b4) => Each Int (a, a1, a2, a3, a4) (b, b1, b2, b3, b4) a b Source #

    each :: IxTraversal Int (a, a, a, a, a) (b, b, b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4) (b, b1, b2, b3, b4) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, a ~ a5, b ~ b1, b ~ b2, b ~ b3, b ~ b4, b ~ b5) => Each Int (a, a1, a2, a3, a4, a5) (b, b1, b2, b3, b4, b5) a b Source #

    each :: IxTraversal Int (a, a, a, a, a, a) (b, b, b, b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4, a5) (b, b1, b2, b3, b4, b5) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, a ~ a5, a ~ a6, b ~ b1, b ~ b2, b ~ b3, b ~ b4, b ~ b5, b ~ b6) => Each Int (a, a1, a2, a3, a4, a5, a6) (b, b1, b2, b3, b4, b5, b6) a b Source #

    each :: IxTraversal Int (a, a, a, a, a, a, a) (b, b, b, b, b, b, b)
     a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4, a5, a6) (b, b1, b2, b3, b4, b5, b6) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, a ~ a5, a ~ a6, a ~ a7, b ~ b1, b ~ b2, b ~ b3, b ~ b4, b ~ b5, b ~ b6, b ~ b7) => Each Int (a, a1, a2, a3, a4, a5, a6, a7) (b, b1, b2, b3, b4, b5, b6, b7) a b Source #

    each :: IxTraversal Int (a, a, a, a, a, a, a, a) (b, b, b, b, b, b,
     b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4, a5, a6, a7) (b, b1, b2, b3, b4, b5, b6, b7) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, a ~ a5, a ~ a6, a ~ a7, a ~ a8, b ~ b1, b ~ b2, b ~ b3, b ~ b4, b ~ b5, b ~ b6, b ~ b7, b ~ b8) => Each Int (a, a1, a2, a3, a4, a5, a6, a7, a8) (b, b1, b2, b3, b4, b5, b6, b7, b8) a b Source #

    each :: IxTraversal Int (a, a, a, a, a, a, a, a, a) (b, b, b, b, b,
     b, b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4, a5, a6, a7, a8) (b, b1, b2, b3, b4, b5, b6, b7, b8) a b Source #

(a ~ a1, a ~ a2, a ~ a3, a ~ a4, a ~ a5, a ~ a6, a ~ a7, a ~ a8, a ~ a9, b ~ b1, b ~ b2, b ~ b3, b ~ b4, b ~ b5, b ~ b6, b ~ b7, b ~ b8, b ~ b9) => Each Int (a, a1, a2, a3, a4, a5, a6, a7, a8, a9) (b, b1, b2, b3, b4, b5, b6, b7, b8, b9) a b Source #

    each :: IxTraversal Int (a, a, a, a, a, a, a, a, a, a) (b, b, b, b,
     b, b, b, b, b, b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal Int (a, a1, a2, a3, a4, a5, a6, a7, a8, a9) (b, b1, b2, b3, b4, b5, b6, b7, b8, b9) a b Source #

Each [Int] (Tree a) (Tree b) a b Source #

    each :: IxTraversal [Int] (Tree a) (Tree b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal [Int] (Tree a) (Tree b) a b Source #

Each (Either () ()) (Complex a) (Complex b) a b Source #

    each :: (RealFloat a, RealFloat b) => IxTraversal (Either () ())
     (Complex a) (Complex b) a b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal (Either () ()) (Complex a) (Complex b) a b Source #

(a ~ a', b ~ b') => Each (Either () ()) (Either a a') (Either b b') a b Source #

    each :: IxTraversal (Either () ()) (Either a a) (Either b b) a
     b

Instance details Defined in Optics.Each.Core Methods each :: IxTraversal (Either () ()) (Either a a') (Either b b') a b Source #