darcs-2.16.1: a distributed, interactive, smart revision control system

Safe HaskellNone
LanguageHaskell2010

Darcs.Patch.Prim.V1.Commute

Contents

Documentation

data Perhaps a Source #

Constructors

Unknown 
Failed 
Succeeded a 
Instances
Monad Perhaps Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Commute

Methods

(>>=) :: Perhaps a -> (a -> Perhaps b) -> Perhaps b #

(>>) :: Perhaps a -> Perhaps b -> Perhaps b #

return :: a -> Perhaps a #

fail :: String -> Perhaps a #

Functor Perhaps Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Commute

Methods

fmap :: (a -> b) -> Perhaps a -> Perhaps b #

(<$) :: a -> Perhaps b -> Perhaps a #

Applicative Perhaps Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Commute

Methods

pure :: a -> Perhaps a #

(<*>) :: Perhaps (a -> b) -> Perhaps a -> Perhaps b #

liftA2 :: (a -> b -> c) -> Perhaps a -> Perhaps b -> Perhaps c #

(*>) :: Perhaps a -> Perhaps b -> Perhaps b #

(<*) :: Perhaps a -> Perhaps b -> Perhaps a #

Alternative Perhaps Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Commute

Methods

empty :: Perhaps a #

(<|>) :: Perhaps a -> Perhaps a -> Perhaps a #

some :: Perhaps a -> Perhaps [a] #

many :: Perhaps a -> Perhaps [a] #

MonadPlus Perhaps Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Commute

Methods

mzero :: Perhaps a #

mplus :: Perhaps a -> Perhaps a -> Perhaps a #

type CommuteFunction = forall wX wY. (Prim :> Prim) wX wY -> Perhaps ((Prim :> Prim) wX wY) Source #

Orphan instances

Commute Prim Source # 
Instance details

Methods

commute :: (Prim :> Prim) wX wY -> Maybe ((Prim :> Prim) wX wY) Source #

CleanMerge Prim Source # 
Instance details

Methods

cleanMerge :: (Prim :\/: Prim) wX wY -> Maybe ((Prim :/\: Prim) wX wY) Source #