| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Optics.At
Description
This module provides optics for Map and Set-like
containers, including an AffineTraversal to traverse a key in a map or an
element of a sequence:
>>>preview (ix 1) ['a','b','c']Just 'b'
a Lens to get, set or delete a key in a map:
>>>set (at 0) (Just 'b') (Map.fromList [(0, 'a')])fromList [(0,'b')]
and a Lens to insert or remove an element of a set:
>>>IntSet.fromList [1,2,3,4] & contains 3 .~ FalsefromList [1,2,4]
This module includes the core definitions from Optics.At.Core along with extra (orphan) instances.
Type families
Instances
| type Index Text Source # | |
| type Index ByteString Source # | |
| type Index ByteString Source # | |
| type Index Text Source # | |
| type Index IntSet | |
Defined in Optics.At.Core type Index IntSet = Int | |
| type Index [a] | |
Defined in Optics.At.Core type Index [a] = Int | |
| type Index (Maybe a) | |
Defined in Optics.At.Core type Index (Maybe a) = () | |
| type Index (NonEmpty a) | |
Defined in Optics.At.Core type Index (NonEmpty a) = Int | |
| type Index (Complex a) | |
Defined in Optics.At.Core type Index (Complex a) = Int | |
| type Index (Identity a) | |
Defined in Optics.At.Core type Index (Identity a) = () | |
| type Index (IntMap a) | |
Defined in Optics.At.Core type Index (IntMap a) = Int | |
| type Index (Seq a) | |
Defined in Optics.At.Core type Index (Seq a) = Int | |
| type Index (Set a) | |
Defined in Optics.At.Core type Index (Set a) = a | |
| type Index (Tree a) | |
Defined in Optics.At.Core type Index (Tree a) = [Int] | |
| type Index (HashSet a) Source # | |
| type Index (Vector a) Source # | |
| type Index (Vector a) Source # | |
| type Index (Vector a) Source # | |
| type Index (Vector a) Source # | |
| type Index (e -> a) | |
Defined in Optics.At.Core type Index (e -> a) = e | |
| type Index (a, b) | |
Defined in Optics.At.Core type Index (a, b) = Int | |
| type Index (HashMap k a) Source # | |
| type Index (Array i e) | |
Defined in Optics.At.Core type Index (Array i e) = i | |
| type Index (Map k a) | |
Defined in Optics.At.Core type Index (Map k a) = k | |
| type Index (UArray i e) | |
Defined in Optics.At.Core type Index (UArray i e) = i | |
| type Index (a, b, c) | |
Defined in Optics.At.Core type Index (a, b, c) = Int | |
| type Index (a, b, c, d) | |
Defined in Optics.At.Core type Index (a, b, c, d) = Int | |
| type Index (a, b, c, d, e) | |
Defined in Optics.At.Core type Index (a, b, c, d, e) = Int | |
| type Index (a, b, c, d, e, f) | |
Defined in Optics.At.Core type Index (a, b, c, d, e, f) = Int | |
| type Index (a, b, c, d, e, f, g) | |
Defined in Optics.At.Core type Index (a, b, c, d, e, f, g) = Int | |
| type Index (a, b, c, d, e, f, g, h) | |
Defined in Optics.At.Core type Index (a, b, c, d, e, f, g, h) = Int | |
| type Index (a, b, c, d, e, f, g, h, i) | |
Defined in Optics.At.Core type Index (a, b, c, d, e, f, g, h, i) = Int | |
Instances
| type IxValue Text Source # | |
| type IxValue ByteString Source # | |
| type IxValue ByteString Source # | |
| type IxValue Text Source # | |
| type IxValue IntSet | |
Defined in Optics.At.Core type IxValue IntSet = () | |
| type IxValue [a] | |
Defined in Optics.At.Core type IxValue [a] = a | |
| type IxValue (Maybe a) | |
Defined in Optics.At.Core type IxValue (Maybe a) = a | |
| type IxValue (NonEmpty a) | |
Defined in Optics.At.Core type IxValue (NonEmpty a) = a | |
| type IxValue (Identity a) | |
Defined in Optics.At.Core type IxValue (Identity a) = a | |
| type IxValue (IntMap a) | |
Defined in Optics.At.Core type IxValue (IntMap a) = a | |
| type IxValue (Seq a) | |
Defined in Optics.At.Core type IxValue (Seq a) = a | |
| type IxValue (Set k) | |
Defined in Optics.At.Core type IxValue (Set k) = () | |
| type IxValue (Tree a) | |
Defined in Optics.At.Core type IxValue (Tree a) = a | |
| type IxValue (HashSet k) Source # | |
| type IxValue (Vector a) Source # | |
| type IxValue (Vector a) Source # | |
| type IxValue (Vector a) Source # | |
| type IxValue (Vector a) Source # | |
| type IxValue (e -> a) | |
Defined in Optics.At.Core type IxValue (e -> a) = a | |
| type IxValue (a0, a2) | |
Defined in Optics.At.Core type IxValue (a0, a2) = a0 | |
| type IxValue (HashMap k a) Source # | |
| type IxValue (Array i e) | |
Defined in Optics.At.Core type IxValue (Array i e) = e | |
| type IxValue (Map k a) | |
Defined in Optics.At.Core type IxValue (Map k a) = a | |
| type IxValue (UArray i e) | |
Defined in Optics.At.Core type IxValue (UArray i e) = e | |
| type IxValue (a0, a1, a2) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2) = a0 | |
| type IxValue (a0, a1, a2, a3) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3) = a0 | |
| type IxValue (a0, a1, a2, a3, a4) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3, a4) = a0 | |
| type IxValue (a0, a1, a2, a3, a4, a5) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3, a4, a5) = a0 | |
| type IxValue (a0, a1, a2, a3, a4, a5, a6) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3, a4, a5, a6) = a0 | |
| type IxValue (a0, a1, a2, a3, a4, a5, a6, a7) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3, a4, a5, a6, a7) = a0 | |
| type IxValue (a0, a1, a2, a3, a4, a5, a6, a7, a8) | |
Defined in Optics.At.Core type IxValue (a0, a1, a2, a3, a4, a5, a6, a7, a8) = a0 | |
Ixed
Minimal complete definition
Nothing
Instances
| Ixed Text Source # | |
| Ixed ByteString Source # | |
| Ixed ByteString Source # | |
| Ixed Text Source # | |
| Ixed IntSet | |
| Ixed [a] | |
| Ixed (Maybe a) | |
| Ixed (NonEmpty a) | |
| Ixed (Identity a) | |
| Ixed (IntMap a) | |
| Ixed (Seq a) | |
| Ord k => Ixed (Set k) | |
| Ixed (Tree a) | |
| (Eq k, Hashable k) => Ixed (HashSet k) Source # | |
| Ixed (Vector a) Source # | |
| Prim a => Ixed (Vector a) Source # | |
| Storable a => Ixed (Vector a) Source # | |
| Unbox a => Ixed (Vector a) Source # | |
| Eq e => Ixed (e -> a) | |
| a0 ~ a1 => Ixed (a0, a1) | |
| (Eq k, Hashable k) => Ixed (HashMap k a) Source # | |
| Ix i => Ixed (Array i e) | |
| Ord k => Ixed (Map k a) | |
| (IArray UArray e, Ix i) => Ixed (UArray i e) | |
| (a0 ~ a1, a0 ~ a2) => Ixed (a0, a1, a2) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3) => Ixed (a0, a1, a2, a3) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3, a0 ~ a4) => Ixed (a0, a1, a2, a3, a4) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3, a0 ~ a4, a0 ~ a5) => Ixed (a0, a1, a2, a3, a4, a5) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3, a0 ~ a4, a0 ~ a5, a0 ~ a6) => Ixed (a0, a1, a2, a3, a4, a5, a6) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3, a0 ~ a4, a0 ~ a5, a0 ~ a6, a0 ~ a7) => Ixed (a0, a1, a2, a3, a4, a5, a6, a7) | |
| (a0 ~ a1, a0 ~ a2, a0 ~ a3, a0 ~ a4, a0 ~ a5, a0 ~ a6, a0 ~ a7, a0 ~ a8) => Ixed (a0, a1, a2, a3, a4, a5, a6, a7, a8) | |
At
class (Ixed m, IxKind m ~ An_AffineTraversal) => At m where #
Instances
| At IntSet | |
Defined in Optics.At.Core | |
| At (Maybe a) | |
Defined in Optics.At.Core | |
| At (IntMap a) | |
Defined in Optics.At.Core | |
| Ord k => At (Set k) | |
Defined in Optics.At.Core | |
| (Eq k, Hashable k) => At (HashSet k) Source # | |
| (Eq k, Hashable k) => At (HashMap k a) Source # | |
| Ord k => At (Map k a) | |
Defined in Optics.At.Core | |
Contains
Instances
| Contains IntSet | |
Defined in Optics.At.Core | |
| Ord a => Contains (Set a) | |
Defined in Optics.At.Core | |
| (Eq a, Hashable a) => Contains (HashSet a) Source # | |
Orphan instances
| Ixed Text Source # | |
| Ixed ByteString Source # | |
| Ixed ByteString Source # | |
| Ixed Text Source # | |
| (Eq k, Hashable k) => At (HashSet k) Source # | |
| (Eq a, Hashable a) => Contains (HashSet a) Source # | |
| (Eq k, Hashable k) => Ixed (HashSet k) Source # | |
| Ixed (Vector a) Source # | |
| Prim a => Ixed (Vector a) Source # | |
| Storable a => Ixed (Vector a) Source # | |
| Unbox a => Ixed (Vector a) Source # | |
| (Eq k, Hashable k) => At (HashMap k a) Source # | |
| (Eq k, Hashable k) => Ixed (HashMap k a) Source # | |