| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
Darcs.Patch.Rebase.Recontext
- class RecontextRebase p where- recontextRebase :: Maybe (RecontextRebase1 p)
 
- newtype RecontextRebase1 p = RecontextRebase1 {- recontextFunc1 :: forall wY wZ. Named p wY wZ -> (EqCheck wY wZ, RecontextRebase2 p wY wZ)
 
- newtype RecontextRebase2 p wY wZ = RecontextRebase2 {- recontextFunc2 :: forall wX. FL (RebaseFixup p) wX wY -> IO (Named p wX wX)
 
Documentation
class RecontextRebase p where Source
Some non-rebase code needs to manipulate the rebase state if one exists.
 This class provides the hook for them to do so without needing to explicitly
 detect that there is a rebase state: recontextRebase abstracts out that
 information.
The hook is used in amend-record - look there for an explanation of how.
There is a default so that other patch types only need to declare the instance.
Minimal complete definition
Nothing
Methods
Instances
| RecontextRebase DummyPatch Source | |
| RecontextRebase (Patch prim) Source | |
| RecontextRebase (RealPatch prim) Source | |
| (Commute p, PrimPatchBase p, FromPrim p, Effect p) => RecontextRebase (Rebasing p) Source | 
newtype RecontextRebase1 p Source
Check whether a given patch is a suspended rebase patch, and if so provide evidence that the start and end contexts are the same (from the point of view of the containing repo), and return a function that produces a new version with some fixups added.
Nested in a type to avoid needing an impredicative argument to Maybe.
Constructors
| RecontextRebase1 | |
| Fields 
 | |
newtype RecontextRebase2 p wY wZ Source
Return a suspended patch with the given fixups added.
Nested in a type to avoid needing an impredicative argument to a tuple.
Constructors
| RecontextRebase2 | |
| Fields 
 | |