darcs-2.18.4: a distributed, interactive, smart revision control system
Safe HaskellSafe-Inferred
LanguageHaskell2010

Darcs.Patch.V1.Commute

Synopsis

Documentation

merge :: Merge p => (p :\/: p) wX wY -> (p :/\: p) wX wY Source #

merger :: PrimPatch prim => String -> RepoPatchV1 prim wX wY -> RepoPatchV1 prim wX wZ -> Sealed (RepoPatchV1 prim wY) Source #

merger takes two patches, (which have been determined to conflict) and constructs a Merger patch to represent the conflict. p1 is considered to be conflicting with p2 (p1 is the "first" patch in the repo ordering), the resulting Merger is therefore a representation of p2.

unravel :: PrimPatch prim => RepoPatchV1 prim wX wY -> [Sealed (FL prim wX)] Source #

publicUnravel :: PrimPatch prim => RepoPatchV1 prim wX wY -> [Sealed (FL prim wY)] Source #

Orphan instances

PrimPatch prim => Commute (RepoPatchV1 prim) Source # 
Instance details

Methods

commute :: (RepoPatchV1 prim :> RepoPatchV1 prim) wX wY -> Maybe ((RepoPatchV1 prim :> RepoPatchV1 prim) wX wY) Source #

PrimPatch prim => CommuteNoConflicts (RepoPatchV1 prim) Source # 
Instance details

Methods

commuteNoConflicts :: (RepoPatchV1 prim :> RepoPatchV1 prim) wX wY -> Maybe ((RepoPatchV1 prim :> RepoPatchV1 prim) wX wY) Source #

PrimPatch prim => Conflict (RepoPatchV1 prim) Source # 
Instance details

Methods

isConflicted :: RepoPatchV1 prim wX wY -> Bool Source #

resolveConflicts :: RL (RepoPatchV1 prim) wO wX -> RL (RepoPatchV1 prim) wX wY -> [ConflictDetails (PrimOf (RepoPatchV1 prim)) wY] Source #

PrimPatch prim => Effect (RepoPatchV1 prim) Source # 
Instance details

Methods

effect :: RepoPatchV1 prim wX wY -> FL (PrimOf (RepoPatchV1 prim)) wX wY Source #

(PrimPatch prim, ApplyState prim ~ ApplyState (RepoPatchV1 prim)) => IsHunk (RepoPatchV1 prim) Source # 
Instance details

Methods

isHunk :: RepoPatchV1 prim wX wY -> Maybe (FileHunk (ObjectIdOfPatch (RepoPatchV1 prim)) wX wY) Source #

PrimPatch prim => PatchInspect (RepoPatchV1 prim) Source # 
Instance details

Invert prim => Invert (RepoPatchV1 prim) Source # 
Instance details

Methods

invert :: RepoPatchV1 prim wX wY -> RepoPatchV1 prim wY wX Source #

PrimPatch prim => CleanMerge (RepoPatchV1 prim) Source # 
Instance details

Methods

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

PrimPatch prim => Merge (RepoPatchV1 prim) Source # 
Instance details

Methods

merge :: (RepoPatchV1 prim :\/: RepoPatchV1 prim) wX wY -> (RepoPatchV1 prim :/\: RepoPatchV1 prim) wX wY Source #

PrimPatch prim => Summary (RepoPatchV1 prim) Source # 
Instance details

PrimPatch prim => Unwind (RepoPatchV1 prim) Source # 
Instance details

Methods

fullUnwind :: RepoPatchV1 prim wX wY -> Unwound (PrimOf (RepoPatchV1 prim)) wX wY Source #

Eq2 prim => Eq2 (RepoPatchV1 prim) Source # 
Instance details

Methods

unsafeCompare :: RepoPatchV1 prim wA wB -> RepoPatchV1 prim wC wD -> Bool Source #

(=\/=) :: RepoPatchV1 prim wA wB -> RepoPatchV1 prim wA wC -> EqCheck wB wC Source #

(=/\=) :: RepoPatchV1 prim wA wC -> RepoPatchV1 prim wB wC -> EqCheck wA wB Source #

Eq2 prim => Eq (RepoPatchV1 prim wX wY) Source # 
Instance details

Methods

(==) :: RepoPatchV1 prim wX wY -> RepoPatchV1 prim wX wY -> Bool #

(/=) :: RepoPatchV1 prim wX wY -> RepoPatchV1 prim wX wY -> Bool #