indexed-paths-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

Data.Path.Sequence

Description

A path type based on Data.Sequence.Seq

Documentation

data Path (l :: k -> k -> *) (a :: k) (b :: k) #

Instances

Instances details
IsPath (Path :: (k -> k -> Type) -> k -> k -> Type) # 
Instance details

Defined in Data.Path.Sequence

Methods

cons :: forall l (a :: k0) (b :: k0) (c :: k0). l a b -> Path l b c -> Path l a c #

uncons :: forall (l :: k0 -> k0 -> Type) (a :: k0) (b :: k0). Path l a b -> Uncons Path l a b #

composeR :: forall k0 l r (a :: k1) (b :: k1) (c :: k0). (forall (x :: k1) (y :: k1) (z :: k0). l x y -> r y z -> r x z) -> Path l a b -> r b c -> r a c #

composeL :: forall k0 r l (a :: k0) (b :: k1) (c :: k1). (forall (x :: k0) (y :: k1) (z :: k1). r x y -> l y z -> r x z) -> r a b -> Path l b c -> r a c #

composeMap :: forall c l (a :: k0) (b :: k0). Category c => (forall (x :: k0) (y :: k0). l x y -> c x y) -> Path l a b -> c a b #

singleton :: forall l (a :: k0) (b :: k0). l a b -> Path l a b #

snoc :: forall l (a :: k0) (b :: k0) (c :: k0). Path l a b -> l b c -> Path l a c #

unsnoc :: forall (l :: k0 -> k0 -> Type) (a :: k0) (b :: k0). Path l a b -> Unsnoc Path l a b #

splitAt :: forall (l :: k0 -> k0 -> Type) (a :: k0) (b :: k0). Int -> Path l a b -> SplitAt Path l a b #

Category (Path l :: k -> k -> Type) # 
Instance details

Defined in Data.Path.Sequence

Methods

id :: forall (a :: k0). Path l a a #

(.) :: forall (b :: k0) (c :: k0) (a :: k0). Path l b c -> Path l a b -> Path l a c #