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

Safe HaskellNone

Darcs.Patch.Conflict

Documentation

class (Effect p, PatchInspect (PrimOf p)) => Conflict p where

Methods

listConflictedFiles :: p x y -> [FilePath]

resolveConflicts :: p x y -> [[Sealed (FL (PrimOf p) y)]]

conflictedEffect :: p x y -> [IsConflictedPrim (PrimOf p)]

class CommuteNoConflicts p where

Methods

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

If commuteNoConflicts x :> y succeeds, we know that that x commutes past y without any conflicts. This function is useful for patch types for which commute is defined to always succeed; so we need some way to pick out the specific cases where commutation succeeds without any conflicts.

data IsConflictedPrim prim where

Constructors

IsC :: !ConflictState -> !(prim x y) -> IsConflictedPrim prim