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

Safe Haskell | Safe-Inferred
Language | Haskell2010

Darcs.Patch.Bundle

Synopsis

- data Bundle rt p wX wY where
  - Bundle :: (FL (PatchInfoAnd rt p) :> FL (PatchInfoAnd rt p)) wX wY -> Bundle rt p wX wY
- makeBundle :: (ApplyState p ~ Tree, RepoPatch p) => Maybe (Tree IO) -> PatchSet rt p wStart wX -> FL (Named p) wX wY -> IO Doc
- parseBundle :: RepoPatch p => ByteString -> Either String (Sealed (Bundle rt p wX))
- interpretBundle :: Commute p => PatchSet rt p Origin wT -> Bundle rt p wA wB -> Either String (PatchSet rt p Origin wB)
- readContextFile :: Commute p => PatchSet rt p Origin wX -> FilePath -> IO (SealedPatchSet rt p Origin)
- minContext :: RepoPatch p => PatchSet rt p wStart wB -> FL (PatchInfoAnd rt p) wB wC -> Sealed ((PatchSet rt p :> FL (PatchInfoAnd rt p)) wStart)

# Documentation

data Bundle rt p wX wY where #

A `Bundle` is a context together with some patches. The context consists of unavailable patches.

Constructors

Bundle :: (FL (PatchInfoAnd rt p) :> FL (PatchInfoAnd rt p)) wX wY -> Bundle rt p wX wY |

makeBundle :: (ApplyState p ~ Tree, RepoPatch p) => Maybe (Tree IO) -> PatchSet rt p wStart wX -> FL (Named p) wX wY -> IO Doc #

parseBundle :: RepoPatch p => ByteString -> Either String (Sealed (Bundle rt p wX)) #

interpretBundle :: Commute p => PatchSet rt p Origin wT -> Bundle rt p wA wB -> Either String (PatchSet rt p Origin wB) #

Interpret a `Bundle` in the context of a `PatchSet`. This means we match up a possible tag in the context of the `Bundle`. This fails if the tag couldn't be found.

readContextFile :: Commute p => PatchSet rt p Origin wX -> FilePath -> IO (SealedPatchSet rt p Origin) #

minContext :: RepoPatch p => PatchSet rt p wStart wB -> FL (PatchInfoAnd rt p) wB wC -> Sealed ((PatchSet rt p :> FL (PatchInfoAnd rt p)) wStart) #

Minimize the context of an `FL` of patches to be packed into a bundle.