Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data RebaseChange prim wX wY where
- RC :: FL (RebaseFixup prim) wX wY -> Named prim wY wZ -> RebaseChange prim wX wZ
- toRebaseChanges :: FL (RebaseChange prim) wX wY -> FL (PatchInfoAndG ('RepoType 'IsRebase) (RebaseChange prim)) wX wY
- extractRebaseChange :: forall p wX wY. RepoPatch p => DiffAlgorithm -> FL (RebaseChange (PrimOf p)) wX wY -> (FL (WDDNamed p) :> FL (RebaseFixup (PrimOf p))) wX wY
- reifyRebaseChange :: FromPrim p => String -> FL (RebaseChange (PrimOf p)) wX wY -> IO ((FL (WDDNamed p) :> FL (RebaseFixup (PrimOf p))) wX wY)
- partitionUnconflicted :: Commute prim => FL (RebaseChange prim) wX wY -> (FL (RebaseChange prim) :> RL (RebaseChange prim)) wX wY
- rcToPia :: RebaseChange prim wX wY -> Sealed2 (PatchInfoAnd ('RepoType 'NoRebase) prim)
- data WithDroppedDeps p wX wY = WithDroppedDeps {
- wddPatch :: p wX wY
- wddDependedOn :: [PatchInfo]
- type WDDNamed p = WithDroppedDeps (Named p)
- commuterIdWDD :: CommuteFn p q -> CommuteFn p (WithDroppedDeps q)
- simplifyPush :: PrimPatch prim => DiffAlgorithm -> RebaseFixup prim wX wY -> FL (RebaseChange prim) wY wZ -> Sealed (FL (RebaseChange prim) wX)
- simplifyPushes :: PrimPatch prim => DiffAlgorithm -> FL (RebaseFixup prim) wX wY -> FL (RebaseChange prim) wY wZ -> Sealed (FL (RebaseChange prim) wX)
- addNamedToRebase :: RepoPatch p => DiffAlgorithm -> Named p wX wY -> FL (RebaseChange (PrimOf p)) wY wZ -> Sealed (FL (RebaseChange (PrimOf p)) wX)
Documentation
data RebaseChange prim wX wY where Source #
RC :: FL (RebaseFixup prim) wX wY -> Named prim wY wZ -> RebaseChange prim wX wZ |
Instances
toRebaseChanges :: FL (RebaseChange prim) wX wY -> FL (PatchInfoAndG ('RepoType 'IsRebase) (RebaseChange prim)) wX wY Source #
extractRebaseChange :: forall p wX wY. RepoPatch p => DiffAlgorithm -> FL (RebaseChange (PrimOf p)) wX wY -> (FL (WDDNamed p) :> FL (RebaseFixup (PrimOf p))) wX wY Source #
Turn a selected rebase patch back into a patch we can apply to the main repository, together with residual fixups that need to go back into the rebase state (unless the rebase is now finished). Any fixups associated with the patch will turn into conflicts.
reifyRebaseChange :: FromPrim p => String -> FL (RebaseChange (PrimOf p)) wX wY -> IO ((FL (WDDNamed p) :> FL (RebaseFixup (PrimOf p))) wX wY) Source #
Like extractRebaseChange
, but any fixups are "reified" into a separate patch.
partitionUnconflicted :: Commute prim => FL (RebaseChange prim) wX wY -> (FL (RebaseChange prim) :> RL (RebaseChange prim)) wX wY Source #
Split a list of rebase patches into those that will have conflicts if unsuspended and those that won't.
rcToPia :: RebaseChange prim wX wY -> Sealed2 (PatchInfoAnd ('RepoType 'NoRebase) prim) Source #
Get hold of the Named
patch inside a RebaseChange
and wrap it in a
PatchInfoAnd
.
data WithDroppedDeps p wX wY Source #
A patch, together with a list of patch names that it used to depend on, but were lost during the rebasing process. The UI can use this information to report them to the user.
WithDroppedDeps | |
|
Instances
PrimPatchBase p => PrimPatchBase (WithDroppedDeps p) Source # | |
Defined in Darcs.Patch.Rebase.Change | |
Effect p => Effect (WithDroppedDeps p) Source # | |
Defined in Darcs.Patch.Rebase.Change effect :: WithDroppedDeps p wX wY -> FL (PrimOf (WithDroppedDeps p)) wX wY Source # | |
type PrimOf (WithDroppedDeps p) Source # | |
Defined in Darcs.Patch.Rebase.Change |
type WDDNamed p = WithDroppedDeps (Named p) Source #
commuterIdWDD :: CommuteFn p q -> CommuteFn p (WithDroppedDeps q) Source #
simplifyPush :: PrimPatch prim => DiffAlgorithm -> RebaseFixup prim wX wY -> FL (RebaseChange prim) wY wZ -> Sealed (FL (RebaseChange prim) wX) Source #
Given a list of rebase items, try to push a new fixup as far as possible into
the list as possible, using both commutation and coalescing. If the fixup
commutes past all the ToEdit
patches then it is dropped entirely.
simplifyPushes :: PrimPatch prim => DiffAlgorithm -> FL (RebaseFixup prim) wX wY -> FL (RebaseChange prim) wY wZ -> Sealed (FL (RebaseChange prim) wX) Source #
Like simplifyPush
but for a list of fixups.
addNamedToRebase :: RepoPatch p => DiffAlgorithm -> Named p wX wY -> FL (RebaseChange (PrimOf p)) wY wZ -> Sealed (FL (RebaseChange (PrimOf p)) wX) Source #