Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data RebaseChange prim wX wY where
- RC :: FL (RebaseFixup prim) wX wY -> Named prim wY wZ -> RebaseChange prim wX wZ
- 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 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
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 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
Effect p => Effect (WithDroppedDeps p) Source # | |
Defined in Darcs.Patch.Rebase.Change effect :: WithDroppedDeps p wX wY -> FL (PrimOf (WithDroppedDeps p)) wX wY Source # | |
PrimPatchBase p => PrimPatchBase (WithDroppedDeps p) Source # | |
Defined in Darcs.Patch.Rebase.Change | |
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 #