chiasma-0.10.0.0: A tmux client for Polysemy
Safe HaskellSafe-Inferred
LanguageHaskell2010

Chiasma.Ui.Data.Tree

Documentation

data Tree f l p Source #

Constructors

Tree 

Fields

Instances

Instances details
(Show l, Show (Node NonEmpty l p)) => Show (Tree NonEmpty l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

showsPrec :: Int -> Tree NonEmpty l p -> ShowS #

show :: Tree NonEmpty l p -> String #

showList :: [Tree NonEmpty l p] -> ShowS #

(Show l, Show (Node [] l p)) => Show (Tree [] l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

showsPrec :: Int -> Tree [] l p -> ShowS #

show :: Tree [] l p -> String #

showList :: [Tree [] l p] -> ShowS #

(Eq l, Eq (Node NonEmpty l p)) => Eq (Tree NonEmpty l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

(==) :: Tree NonEmpty l p -> Tree NonEmpty l p -> Bool #

(/=) :: Tree NonEmpty l p -> Tree NonEmpty l p -> Bool #

(Eq l, Eq (Node [] l p)) => Eq (Tree [] l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

(==) :: Tree [] l p -> Tree [] l p -> Bool #

(/=) :: Tree [] l p -> Tree [] l p -> Bool #

(Foldable f, Pretty l, Pretty p) => Pretty (Tree f l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

pretty :: Tree f l p -> Doc ann #

prettyList :: [Tree f l p] -> Doc ann #

HasTree (Tree f l p) f l p Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

tree :: Lens' (Tree f l p) (Tree f l p) Source #

forest :: Lens' (Tree f l p) (f (Node f l p)) Source #

treeData :: Lens' (Tree f l p) l Source #

data Node f l p Source #

Constructors

Sub 

Fields

Leaf 

Fields

Instances

Instances details
(Show l, Show p) => Show (Node NonEmpty l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

showsPrec :: Int -> Node NonEmpty l p -> ShowS #

show :: Node NonEmpty l p -> String #

showList :: [Node NonEmpty l p] -> ShowS #

(Show l, Show p) => Show (Node [] l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

showsPrec :: Int -> Node [] l p -> ShowS #

show :: Node [] l p -> String #

showList :: [Node [] l p] -> ShowS #

(Eq l, Eq p) => Eq (Node NonEmpty l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

(==) :: Node NonEmpty l p -> Node NonEmpty l p -> Bool #

(/=) :: Node NonEmpty l p -> Node NonEmpty l p -> Bool #

(Eq l, Eq p) => Eq (Node [] l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

(==) :: Node [] l p -> Node [] l p -> Bool #

(/=) :: Node [] l p -> Node [] l p -> Bool #

(Foldable f, Pretty l, Pretty p) => Pretty (Node f l p) Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

pretty :: Node f l p -> Doc ann #

prettyList :: [Node f l p] -> Doc ann #

HasNode (Node f l p) f l p Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

node :: Lens' (Node f l p) (Node f l p) Source #

leafData :: Traversal' (Node f l p) p Source #

subTree :: Traversal' (Node f l p) (Tree f l p) Source #

class HasTree c f l p | c -> f l p where Source #

Minimal complete definition

tree

Methods

tree :: Lens' c (Tree f l p) Source #

forest :: Lens' c (f (Node f l p)) Source #

treeData :: Lens' c l Source #

Instances

Instances details
HasTree (Tree f l p) f l p Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

tree :: Lens' (Tree f l p) (Tree f l p) Source #

forest :: Lens' (Tree f l p) (f (Node f l p)) Source #

treeData :: Lens' (Tree f l p) l Source #

class HasNode c f l p | c -> f l p where Source #

Minimal complete definition

node

Methods

node :: Lens' c (Node f l p) Source #

leafData :: Traversal' c p Source #

subTree :: Traversal' c (Tree f l p) Source #

Instances

Instances details
HasNode (Node f l p) f l p Source # 
Instance details

Defined in Chiasma.Ui.Data.Tree

Methods

node :: Lens' (Node f l p) (Node f l p) Source #

leafData :: Traversal' (Node f l p) p Source #

subTree :: Traversal' (Node f l p) (Tree f l p) Source #

type LTree l p = Tree [] l p Source #

type LNode l p = Node [] l p Source #

type NTree l p = Tree NonEmpty l p Source #

type NNode l p = Node NonEmpty l p Source #