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

Safe HaskellSafe
LanguageHaskell2010

Darcs.Patch.Format

Synopsis

Documentation

class PatchListFormat p where Source #

Showing and reading lists of patches. This class allows us to control how lists of patches are formatted on disk. For legacy reasons V1 patches have their own special treatment (see ListFormat). Other patch types use the default format which just puts them in a sequence without separators or any prelude/epilogue.

This means that 'FL (FL p)' etc would be ambiguous, so there are no instances for 'FL p' or other list types.

data ListFormat (p :: * -> * -> *) Source #

This type is used to tweak the way that lists of p are shown for a given Patch type p. It is needed to maintain backwards compatibility for V1 and V2 patches.

Constructors

ListFormatDefault

Show and read lists without braces.

ListFormatV1

Show lists with a single layer of braces around the outside, except for singletons which have no braces. Read with arbitrary nested braces and parens and flatten them out.

ListFormatV2

Show lists without braces. Read with arbitrary nested parens and flatten them out.

data FileNameFormat Source #

Constructors

OldFormat

on-disk format for V1 patches

NewFormat

on-disk format for V2 patches

UserFormat

display format