ral-lens-0.1: Length-indexed random access lists: lens utilities.

Safe HaskellNone
LanguageHaskell2010

Data.RAVec.Lens

Contents

Synopsis

Indexing

ix :: Pos b -> Lens' (RAVec b a) a Source #

Index lens.

>>> let Just ral = fromList "xyz" :: Maybe (RAVec B.Bin3 Char)
>>> ral & ix maxBound .~ 'Z'
NonEmpty (NE (Cons1 (Leaf 'x') (Last (Node (Leaf 'y') (Leaf 'Z')))))

Orphan instances

FunctorWithIndex (Pos b) (RAVec b) Source # 
Instance details

Methods

imap :: (Pos b -> a -> b0) -> RAVec b a -> RAVec b b0 #

imapped :: IndexedSetter (Pos b) (RAVec b a) (RAVec b b0) a b0 #

FoldableWithIndex (Pos b) (RAVec b) Source # 
Instance details

Methods

ifoldMap :: Monoid m => (Pos b -> a -> m) -> RAVec b a -> m #

ifolded :: IndexedFold (Pos b) (RAVec b a) a #

ifoldr :: (Pos b -> a -> b0 -> b0) -> b0 -> RAVec b a -> b0 #

ifoldl :: (Pos b -> b0 -> a -> b0) -> b0 -> RAVec b a -> b0 #

ifoldr' :: (Pos b -> a -> b0 -> b0) -> b0 -> RAVec b a -> b0 #

ifoldl' :: (Pos b -> b0 -> a -> b0) -> b0 -> RAVec b a -> b0 #

TraversableWithIndex (Pos b) (RAVec b) Source # 
Instance details

Methods

itraverse :: Applicative f => (Pos b -> a -> f b0) -> RAVec b a -> f (RAVec b b0) #

itraversed :: IndexedTraversal (Pos b) (RAVec b a) (RAVec b b0) a b0 #

Ixed (RAVec b a) Source # 
Instance details

Methods

ix :: Index (RAVec b a) -> Traversal' (RAVec b a) (IxValue (RAVec b a)) #

Each (RAVec n a) (RAVec n b) a b Source # 
Instance details

Methods

each :: Traversal (RAVec n a) (RAVec n b) a b #