Safe Haskell | None |
---|---|
Language | Haskell2010 |
- 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 RebaseItem
s.
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.
Items :: FL (RebaseItem p) wX wY -> Suspended p wX wX |
(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 #