| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Data.Vec.Lazy.Inline.Optics
Contents
Synopsis
- ix :: forall n a. InlineInduction n => Fin n -> Lens' (Vec n a) a
- _Cons :: Iso (Vec (S n) a) (Vec (S n) b) (a, Vec n a) (b, Vec n b)
- _head :: Lens' (Vec (S n) a) a
- _tail :: Lens' (Vec (S n) a) (Vec n a)
- _Pull :: InlineInduction n => Iso (Vec n a) (Vec n b) (Vec n a) (Vec n b)
- _Vec :: InlineInduction n => Prism' [a] (Vec n a)
Indexing
ix :: forall n a. InlineInduction n => Fin n -> Lens' (Vec n a) a Source #
Index lens.
>>>view (ix (FS FZ)) ('a' ::: 'b' ::: 'c' ::: VNil)'b'
>>>set (ix (FS FZ)) 'x' ('a' ::: 'b' ::: 'c' ::: VNil)'a' ::: 'x' ::: 'c' ::: VNil
_head :: Lens' (Vec (S n) a) a Source #
Head lens. Note: lens _head is a Traversal'.
>>>view _head ('a' ::: 'b' ::: 'c' ::: VNil)'a'
>>>set _head 'x' ('a' ::: 'b' ::: 'c' ::: VNil)'x' ::: 'b' ::: 'c' ::: VNil