darcs

Safe HaskellSafe-Infered

Darcs.Patch.Conflict

Documentation

class CommuteNoConflicts p where

Methods

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

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 -> IsConflictedPrim prim