darcs-beta-2.4.98.5: a distributed, interactive, smart revision control systemSource codeContentsIndex
Darcs.Patch.Commute
Synopsis
fromPrims :: FromPrims p => FL Prim -> p
modernizePatch :: Patch -> Patch
merge :: Commute p => (p :\/: p) -> p :/\: p
elegantMerge :: (Patch :\/: Patch) -> Maybe (Patch :/\: Patch)
merger :: String -> Patch -> Patch -> Sealed Patch
unravel :: Patch -> [Sealed (FL Prim)]
publicUnravel :: Patch -> [Sealed (FL Prim)]
mangleUnravelled :: [Sealed (FL Prim)] -> Sealed (FL Prim)
type CommuteFunction = (Patch :< Patch) -> Perhaps (Patch :< Patch)
data Perhaps a
= Unknown
| Failed
| Succeeded a
toMaybe :: Perhaps a -> Maybe a
Documentation
fromPrims :: FromPrims p => FL Prim -> pSource
modernizePatch :: Patch -> PatchSource

modernizePatch is used during conversion to Darcs 2 format. It does the following:

  • removes mergers by linearising them, thus removing the ability to commute them
  • drops mv a b ; add b which was introduced by an error in earlier versions of darcs (TODO: check this; identify the versions)
merge :: Commute p => (p :\/: p) -> p :/\: pSource
elegantMerge :: (Patch :\/: Patch) -> Maybe (Patch :/\: Patch)Source
merger :: String -> Patch -> Patch -> Sealed PatchSource
unravel :: Patch -> [Sealed (FL Prim)]Source
publicUnravel :: Patch -> [Sealed (FL Prim)]Source
mangleUnravelled :: [Sealed (FL Prim)] -> Sealed (FL Prim)Source
type CommuteFunction = (Patch :< Patch) -> Perhaps (Patch :< Patch)Source
data Perhaps a Source
Constructors
Unknown
Failed
Succeeded a
show/hide Instances
toMaybe :: Perhaps a -> Maybe aSource
Produced by Haddock version 2.6.1