darcs-2.10.1: a distributed, interactive, smart revision control system

Safe HaskellNone
LanguageHaskell2010

Darcs.Patch.Rebase.Recontext

Synopsis

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

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

recontextFunc1 :: forall wY wZ. Named p wY wZ -> (EqCheck wY wZ, RecontextRebase2 p wY wZ)
 

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

recontextFunc2 :: forall wX. FL (RebaseFixup p) wX wY -> IO (Named p wX wX)