Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Documentation
newtype NodeIndexTree l p Source #
Instances
class HasNodeIndexTree c l p | c -> l p where Source #
nodeIndexTree :: Lens' c (NodeIndexTree l p) Source #
Instances
HasNodeIndexTree (NodeIndexTree l p) l p Source # | |
Defined in Chiasma.Lens.Tree nodeIndexTree :: Lens' (NodeIndexTree l p) (NodeIndexTree l p) Source # |
newtype LeafIndexTree l p Source #
Instances
class HasLeafIndexTree c l p | c -> l p where Source #
leafIndexTree :: Lens' c (LeafIndexTree l p) Source #
Instances
HasLeafIndexTree (LeafIndexTree l p) l p Source # | |
Defined in Chiasma.Lens.Tree leafIndexTree :: Lens' (LeafIndexTree l p) (LeafIndexTree l p) Source # |
plateWrap :: (Data l, Data p) => (Tree l p -> t l p) -> (t l p -> Tree l p) -> Traversal' (t l p) (t l p) Source #
nodeTraversal :: Traversal' (Tree l p) l Source #
nodeByIdentTraversal :: Identifiable l => Ident -> Traversal' (Tree l p) l Source #
leafDataTraversal :: Traversal' (Tree l p) p Source #
leafByIdentTraversal :: Identifiable p => Ident -> Traversal' (Tree l p) p Source #
nodesByIdentRecursive :: (Identifiable l, Data l, Data p) => Ident -> Fold (NodeIndexTree l p) l Source #
nodesIdent :: forall l p. Identifiable l => Data l => Data p => Ident -> Fold (Tree l p) l Source #
nodeByIdent :: forall l p. Identifiable l => Data l => Data p => Ident -> Tree l p -> Maybe l Source #
nodesByIdent :: forall l p. Identifiable l => Data l => Data p => Ident -> Tree l p -> [l] Source #
leavesByIdentRecursive :: forall l p. Identifiable p => Data l => Data p => Ident -> Fold (LeafIndexTree l p) p Source #
leavesIdent :: forall l p. Identifiable p => Data l => Data p => Ident -> Fold (Tree l p) p Source #
leafByIdent :: forall l p. Identifiable p => Data l => Data p => Ident -> Tree l p -> Maybe p Source #
leavesByIdent :: forall l p. Identifiable p => Data l => Data p => Ident -> Tree l p -> [p] Source #
modifyLeafByIdent :: (Identifiable p, Data l, Data p) => Ident -> (p -> p) -> Tree l p -> Tree l p Source #
subtreesWithLayout :: forall l p m. Monad m => ((l, TreeSub l p) -> m (l, TreeSub l p)) -> Tree l p -> m (Tree l p) Source #