Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data WrappedNamed (rt :: RepoType) p wX wY where
- NormalP :: !(Named p wX wY) -> WrappedNamed rt p wX wY
- RebaseP :: (PrimPatchBase p, FromPrim p, Effect p) => !PatchInfo -> !(Suspended p wX wX) -> WrappedNamed ('RepoType 'IsRebase) p wX wX
- fromRebasing :: WrappedNamed rt p wX wY -> Named p wX wY
Documentation
data WrappedNamed (rt :: RepoType) p wX wY where Source #
A patch that lives in a repository where an old-style rebase is in
progress. Such a repository will consist of Normal
patches
along with exactly one Suspended
patch.
It is here only so that we can upgrade an old-style rebase.
NormalP
represents a normal patch within a respository where a
rebase is in progress. NormalP 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
RebaseP
patch and setting the appropriate format flag.
Note that the witnesses are such that the RebaseP
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.
NormalP :: !(Named p wX wY) -> WrappedNamed rt p wX wY | |
RebaseP :: (PrimPatchBase p, FromPrim p, Effect p) => !PatchInfo -> !(Suspended p wX wX) -> WrappedNamed ('RepoType 'IsRebase) p wX wX |
Instances
fromRebasing :: WrappedNamed rt p wX wY -> Named p wX wY Source #