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

Safe HaskellNone

Darcs.Patch.Repair

Synopsis

Documentation

class Repair p where

Repair and RepairToFL deal with repairing old patches that were were written out due to bugs or that we no longer wish to support. Repair is implemented by collections of patches (FL, Named, PatchInfoAnd) that might need repairing.

Methods

applyAndTryToFix :: ApplyMonad (ApplyState p) m => p wX wY -> m (Maybe (String, p wX wY))

Instances

class Apply p => RepairToFL p where

RepairToFL is implemented by single patches that can be repaired (Prim, Patch, RepoPatchV2) There is a default so that patch types with no current legacy problems don't need to have an implementation.

Methods

applyAndTryToFixFL :: ApplyMonad (ApplyState p) m => p wX wY -> m (Maybe (String, FL p wX wY))

mapMaybeSnd :: (a -> b) -> Maybe (c, a) -> Maybe (c, b)

class Check p where

Methods

isInconsistent :: p wX wY -> Maybe Doc

Instances

Check DummyPatch 
Check p => Check (RL p) 
Check p => Check (FL p) 
Check (RepoPatchV1 prim) 
Check p => Check (Named p) 
PrimPatch prim => Check (RepoPatchV2 prim) 
Check p => Check (RebaseItem p) 
Check p => Check (Suspended p) 
Check p => Check (WrappedNamed rt p)