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

Safe Haskell | None
Language | Haskell2010

Darcs.Patch.Invert

Synopsis

- class Invert (p :: Type -> Type -> Type) where
  - invert :: p wX wY -> p wY wX
- invertFL :: forall (p :: Type -> Type -> Type) wX wY. Invert p => FL p wX wY -> RL p wY wX
- invertRL :: forall (p :: Type -> Type -> Type) wX wY. Invert p => RL p wX wY -> FL p wY wX

# Documentation

class Invert (p :: Type -> Type -> Type) where #

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

    invert . invert = id

Methods

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

#### Instances

Instances details

Invert Prim # |
Instance details Defined in Darcs.Patch.Prim.FileUUID.Core Methods invert :: Prim wX wY -> Prim wY wX #
Invert DirPatchType # |
Instance details Defined in Darcs.Patch.Prim.V1.Core Methods invert :: DirPatchType wX wY -> DirPatchType wY wX #
Invert FilePatchType # |
Instance details Defined in Darcs.Patch.Prim.V1.Core Methods invert :: FilePatchType wX wY -> FilePatchType wY wX #
Invert Prim # |
Instance details Defined in Darcs.Patch.Prim.V1.Core Methods invert :: Prim wX wY -> Prim wY wX #
Invert RebaseName # |
Instance details Defined in Darcs.Patch.Rebase.Name Methods invert :: RebaseName wX wY -> RebaseName wY wX #
Invert Prim # |
Instance details Defined in Darcs.Patch.V1.Prim Methods invert :: Prim wX wY -> Prim wY wX #
Invert Prim # |
Instance details Defined in Darcs.Patch.V2.Prim Methods invert :: Prim wX wY -> Prim wY wX #
Invert p => Invert (LabelledPatch p) # |
Instance details Defined in Darcs.Patch.Choices Methods invert :: LabelledPatch p wX wY -> LabelledPatch p wY wX #
Invert (FileHunk oid) # |
Instance details Defined in Darcs.Patch.FileHunk Methods invert :: FileHunk oid wX wY -> FileHunk oid wY wX #
Invert (Invertible p) # |
Instance details Defined in Darcs.Patch.Invertible Methods invert :: Invertible p wX wY -> Invertible p wY wX #
Invert prim => Invert (RebaseFixup prim) # |
Instance details Defined in Darcs.Patch.Rebase.Fixup Methods invert :: RebaseFixup prim wX wY -> RebaseFixup prim wY wX #
Invert prim => Invert (Unwound prim) # |
Instance details Defined in Darcs.Patch.Unwind Methods invert :: Unwound prim wX wY -> Unwound prim wY wX #
Invert prim => Invert (RepoPatchV1 prim) # |
Instance details Defined in Darcs.Patch.V1.Commute Methods invert :: RepoPatchV1 prim wX wY -> RepoPatchV1 prim wY wX #
Invert prim => Invert (RepoPatchV2 prim) # |
Instance details Defined in Darcs.Patch.V2.RepoPatch Methods invert :: RepoPatchV2 prim wX wY -> RepoPatchV2 prim wY wX #
Invert p => Invert (FL p) # |
Instance details Defined in Darcs.Patch.Invert Methods invert :: FL p wX wY -> FL p wY wX #
Invert p => Invert (RL p) # |
Instance details Defined in Darcs.Patch.Invert Methods invert :: RL p wX wY -> RL p wY wX #
(Invert p, SignedId name) => Invert (PrimWithName name p) # |
Instance details Defined in Darcs.Patch.Prim.WithName Methods invert :: PrimWithName name p wX wY -> PrimWithName name p wY wX #
Invert p => Invert (p :> p) # |
Instance details Defined in Darcs.Patch.Invert Methods invert :: (p :> p) wX wY -> (p :> p) wY wX #

invertFL :: forall (p :: Type -> Type -> Type) wX wY. Invert p => FL p wX wY -> RL p wY wX #

invertRL :: forall (p :: Type -> Type -> Type) wX wY. Invert p => RL p wX wY -> FL p wY wX #