darcs-2.14.4: a distributed, interactive, smart revision control system
Safe HaskellNone
LanguageHaskell2010

Darcs.Patch.Rebase

Synopsis

Documentation

takeHeadRebase :: PatchSet ('RepoType 'IsRebase) p wA wB -> (PatchInfoAnd ('RepoType 'IsRebase) p wB wB, Suspended p wB wB, PatchSet ('RepoType 'IsRebase) p wA wB) Source #

Given the repository contents, get the rebase container patch, its contents, and the rest of the repository contents. The rebase patch must be at the head of the repository.

takeHeadRebaseFL :: FL (PatchInfoAnd ('RepoType 'IsRebase) p) wA wB -> (PatchInfoAnd ('RepoType 'IsRebase) p wB wB, Suspended p wB wB, FL (PatchInfoAnd ('RepoType 'IsRebase) p) wA wB) Source #

Same as takeHeadRebase but for an FL of patches.

takeAnyRebase :: PatchSet ('RepoType 'IsRebase) p wA wB -> (Sealed2 (PatchInfoAnd ('RepoType 'IsRebase) p), Sealed2 (Suspended p)) Source #

Given the repository contents, get the rebase container patch, and its contents. The rebase patch can be anywhere in the repository and is returned without being commuted to the end.

takeAnyRebaseAndTrailingPatches :: PatchSet ('RepoType 'IsRebase) p wA wB -> FlippedSeal (PatchInfoAnd ('RepoType 'IsRebase) p :> RL (PatchInfoAnd ('RepoType 'IsRebase) p)) wB Source #

Given the repository contents, get the rebase container patch, its contents, and the rest of the repository contents. The rebase patch can be anywhere in the repository and is returned without being commuted to the end.

dropAnyRebase :: forall rt p wA wB. IsRepoType rt => PatchSet rt p wA wB -> PatchSet rt p wA wB Source #

Remove the rebase patch from a PatchSet.