| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Darcs.Patch.Rebase.Container
- data Suspended p wX wY where
- Items :: FL (RebaseItem p) wX wY -> Suspended p wX wX
- countToEdit :: Suspended p wX wY -> Int
- simplifyPush :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => DiffAlgorithm -> RebaseFixup p wX wY -> Suspended p wY wY -> Suspended p wX wX
- simplifyPushes :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => DiffAlgorithm -> FL (RebaseFixup p) wX wY -> Suspended p wY wY -> Suspended p wX wX
- addFixupsToSuspended :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => Named p wX wY -> Suspended p wY wY -> Suspended p wX wX
- removeFixupsFromSuspended :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => Named p wX wY -> Suspended p wX wX -> Suspended p wY wY
Documentation
data Suspended p wX wY where Source #
A patch that lives in a repository where a rebase is in
progress. Such a repository will consist of Normal patches
along with exactly one Suspended patch.
Most rebase operations will require the Suspended patch
to be at the end of the repository.
Normal represents a normal patch within a respository where a
rebase is in progress. Normal p is given the same on-disk
representation as p, so a repository can be switched into
and out of rebasing mode simply by adding or removing a
Suspended patch and setting the appropriate format flag.
The single Suspended patch contains the entire rebase
state, in the form of RebaseItems.
Note that the witnesses are such that the Suspended
patch has no effect on the context of the rest of the
repository; in a sense the patches within it are
dangling off to one side from the main repository.
See Note [Rebase representation] in the Rebase for
a discussion of the design choice to embed the rebase state in a
single patch.
Constructors
| Items :: FL (RebaseItem p) wX wY -> Suspended p wX wX |
Instances
| (Show2 p, Show2 (PrimOf p)) => Show2 (Suspended p) Source # | |
| (PrimPatchBase p, PatchInspect p) => PatchInspect (Suspended p) Source # | |
| (PrimPatchBase p, PatchListFormat p, ReadPatch p) => ReadPatch (Suspended p) Source # | |
| Apply p => Apply (Suspended p) Source # | |
| Apply p => RepairToFL (Suspended p) Source # | |
| Apply p => Repair (Suspended p) Source # | |
| Check p => Check (Suspended p) Source # | |
| (PrimPatchBase p, PatchListFormat p, Apply p, CommuteNoConflicts p, Conflict p, IsHunk p, ShowPatch p) => ShowPatch (Suspended p) Source # | |
| (PrimPatchBase p, PatchListFormat p, ShowPatchBasic p) => ShowPatchBasic (Suspended p) Source # | |
| PrimPatchBase p => PrimPatchBase (Suspended p) Source # | |
| Effect (Suspended p) Source # | |
| Conflict p => Conflict (Suspended p) Source # | |
| (Show2 p, Show2 (PrimOf p)) => Show1 (Suspended p wX) Source # | |
| (Show2 p, Show2 (PrimOf p)) => Show (Suspended p wX wY) Source # | |
| type ApplyState (Suspended p) Source # | |
| type PrimOf (Suspended p) Source # | |
countToEdit :: Suspended p wX wY -> Int Source #
simplifyPush :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => DiffAlgorithm -> RebaseFixup p wX wY -> Suspended p wY wY -> Suspended p wX wX Source #
simplifyPushes :: (PrimPatchBase p, Commute p, FromPrim p, Effect p) => DiffAlgorithm -> FL (RebaseFixup p) wX wY -> Suspended p wY wY -> Suspended p wX wX Source #