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

Safe HaskellNone

Darcs.Patch.Patchy

Synopsis

Documentation

class Apply p where

Associated Types

type ApplyState p :: (* -> *) -> *

Methods

apply :: ApplyMonad m (ApplyState p) => p x y -> m ()

Instances

Apply Prim 
Apply Prim 
Apply DummyPatch 
Apply p => Apply (RL p) 
Apply p => Apply (FL p) 
PrimPatch prim => Apply (Patch prim) 
Apply p => Apply (Named p) 
Apply p => Apply (PatchInfoAnd p) 
PrimPatch prim => Apply (RealPatch prim) 

class Commute p where

Things that can commute.

Methods

commute :: (p :> p) x y -> Maybe ((p :> p) x y)

Instances

Commute Prim 
Commute Prim 
Commute DummyPatch 
Commute p => Commute (RL p) 
Commute p => Commute (FL p) 
PrimPatch prim => Commute (Patch prim) 
Commute p => Commute (Named p) 
Commute p => Commute (PatchInfoAnd p) 
Commute p => Commute (PatchChoice p) 
Commute p => Commute (TaggedPatch p) 
PrimPatch prim => Commute (RealPatch prim) 

class Invert p where

Methods

invert :: p x y -> p y x

Instances

Invert Prim 
Invert Prim 
Invert DummyPatch 
(Commute p, Invert p) => Invert (RL p) 
(Invert p, Commute p) => Invert (FL p) 
Invert prim => Invert (Patch prim) 
(Commute p, Invert p) => Invert (Named p) 
(Commute p, Invert p) => Invert (PatchInfoAnd p) 
Invert p => Invert (TaggedPatch p) 
Invert prim => Invert (RealPatch prim) 

showPatch :: ShowPatchBasic p => p x y -> Doc

class ShowPatchBasic p => ShowPatch p where

Methods

showNicely :: p x y -> Doc

showContextPatch :: (Monad m, ApplyMonadTrans m (ApplyState p), ApplyMonad m (ApplyState p)) => p x y -> m Doc

showContextPatch is used to add context to a patch, as diff -u does. Thus, it differs from showPatch only for hunks. It is used for instance before putting it into a bundle. As this unified context is not included in patch representation, this requires access to the tree.

description :: p x y -> Doc

summary :: p x y -> Doc

summaryFL :: FL p x y -> Doc

thing :: p x y -> String

things :: p x y -> String