This data type represents a path-compressed copy of one level of a source data structure. We can safely use path-compression because we know the depth of the tree.
Path compression is performed by viewing a Level as a PATRICIA trie of the
paths into the structure to leaves at a given depth, similar in many ways
to a Data.IntMap.IntMap, but unlike a regular PATRICIA trie we do not need
to store the mask bits merely the depth of the fork.
One invariant of this structure is that underneath a Two node you will not find any Zero nodes, so Zero can only occur at the root.
Instances10FoldableWithIndex, FunctorWithIndex, TraversableWithIndex, Functor, Foldable, Traversable, …
FoldableWithIndex i (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.LevelFunctorWithIndex i (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.LevelTraversableWithIndex i (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.LevelFunctor (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.LevelFoldable (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.LevelTraversable (Level i)Defined in lens-5.3.5 · Control.Lens.Internal.Level(Eq i, Eq a) => Eq (Level i a)Defined in lens-5.3.5 · Control.Lens.Internal.Level(Ord i, Ord a) => Ord (Level i a)Defined in lens-5.3.5 · Control.Lens.Internal.Level(Read i, Read a) => Read (Level i a)Defined in lens-5.3.5 · Control.Lens.Internal.Level(Show i, Show a) => Show (Level i a)Defined in lens-5.3.5 · Control.Lens.Internal.Level