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

Safe HaskellNone
LanguageHaskell2010

Darcs.Patch.Invert

Synopsis

Documentation

class Invert p where Source #

The invert operation must be self-inverse, i.e. an involution:

invert . invert = id

Methods

invert :: p wX wY -> p wY wX Source #

Instances
Invert FileHunk Source # 
Instance details

Defined in Darcs.Patch.FileHunk

Methods

invert :: FileHunk wX wY -> FileHunk wY wX Source #

Invert DirPatchType Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Core

Methods

invert :: DirPatchType wX wY -> DirPatchType wY wX Source #

Invert FilePatchType Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Core

Methods

invert :: FilePatchType wX wY -> FilePatchType wY wX Source #

Invert Prim Source # 
Instance details

Defined in Darcs.Patch.Prim.V1.Core

Methods

invert :: Prim wX wY -> Prim wY wX Source #

Invert Prim Source # 
Instance details

Defined in Darcs.Patch.Prim.FileUUID.Core

Methods

invert :: Prim wX wY -> Prim wY wX Source #

Invert RebaseName Source # 
Instance details

Defined in Darcs.Patch.Rebase.Name

Methods

invert :: RebaseName wX wY -> RebaseName wY wX Source #

Invert Prim Source # 
Instance details

Defined in Darcs.Patch.V2.Prim

Methods

invert :: Prim wX wY -> Prim wY wX Source #

Invert Prim Source # 
Instance details

Defined in Darcs.Patch.V1.Prim

Methods

invert :: Prim wX wY -> Prim wY wX Source #

Invert p => Invert (RL p) Source # 
Instance details

Defined in Darcs.Patch.Invert

Methods

invert :: RL p wX wY -> RL p wY wX Source #

Invert p => Invert (FL p) Source # 
Instance details

Defined in Darcs.Patch.Invert

Methods

invert :: FL p wX wY -> FL p wY wX Source #

Invert p => Invert (LabelledPatch p) Source # 
Instance details

Defined in Darcs.Patch.Choices

Methods

invert :: LabelledPatch p wX wY -> LabelledPatch p wY wX Source #

Invert prim => Invert (RepoPatchV1 prim) Source # 
Instance details

Defined in Darcs.Patch.V1.Commute

Methods

invert :: RepoPatchV1 prim wX wY -> RepoPatchV1 prim wY wX Source #

Invert prim => Invert (Unwound prim) Source # 
Instance details

Defined in Darcs.Patch.Unwind

Methods

invert :: Unwound prim wX wY -> Unwound prim wY wX Source #

Invert prim => Invert (RepoPatchV2 prim) Source # 
Instance details

Defined in Darcs.Patch.V2.RepoPatch

Methods

invert :: RepoPatchV2 prim wX wY -> RepoPatchV2 prim wY wX Source #

Invert prim => Invert (RebaseFixup prim) Source # 
Instance details

Defined in Darcs.Patch.Rebase.Fixup

Methods

invert :: RebaseFixup prim wX wY -> RebaseFixup prim wY wX Source #

Invert (Invertible p) Source # 
Instance details

Defined in Darcs.Patch.Invertible

Methods

invert :: Invertible p wX wY -> Invertible p wY wX Source #

Invert p => Invert (p :> p) Source # 
Instance details

Defined in Darcs.Patch.Invert

Methods

invert :: (p :> p) wX wY -> (p :> p) wY wX Source #

(Invert p, SignedId name) => Invert (PrimWithName name p) Source # 
Instance details

Defined in Darcs.Patch.Prim.WithName

Methods

invert :: PrimWithName name p wX wY -> PrimWithName name p wY wX Source #

invertFL :: Invert p => FL p wX wY -> RL p wY wX Source #

invertRL :: Invert p => RL p wX wY -> FL p wY wX Source #

dropInverses :: (Invert p, Eq2 p) => FL p wX wY -> Maybe (FL p wX wY) Source #

Delete the first subsequence of patches that is followed by an inverse subsequence, if one exists. If not return Nothing.