- data PatchInfo = PatchInfo {
- _piDate :: !ByteString
- _piName :: !ByteString
- _piAuthor :: !ByteString
- _piLog :: ![ByteString]
- isInverted :: !Bool
- patchinfo :: String -> String -> String -> [String] -> IO PatchInfo
- invertName :: PatchInfo -> PatchInfo
- idpatchinfo :: PatchInfo
- addJunk :: PatchInfo -> IO PatchInfo
- makeFilename :: PatchInfo -> String
- makeAltFilename :: PatchInfo -> String
- readPatchInfo :: ByteString -> Maybe (PatchInfo, ByteString)
- justName :: PatchInfo -> String
- justAuthor :: PatchInfo -> String
- justLog :: PatchInfo -> String
- repopatchinfo :: String -> PatchInfo -> RepoPatchInfo
- data RepoPatchInfo
- humanFriendly :: PatchInfo -> Doc
- toXml :: PatchInfo -> Doc
- piDate :: PatchInfo -> CalendarTime
- setPiDate :: String -> PatchInfo -> PatchInfo
- piDateString :: PatchInfo -> String
- piDateBytestring :: PatchInfo -> ByteString
- piName :: PatchInfo -> String
- piRename :: PatchInfo -> String -> PatchInfo
- piAuthor :: PatchInfo -> String
- piTag :: PatchInfo -> Maybe String
- piLog :: PatchInfo -> [String]
- showPatchInfo :: PatchInfo -> Doc
- isTag :: PatchInfo -> Bool
Documentation
A PatchInfo value contains the metadata of a patch. The date, name, author and log fields are UTF-8 encoded text in darcs 2.4 and later, and just sequences of bytes (decoded with whatever is the locale when displayed) in earlier darcs.
The members with names that start with '_' are not supposed to be used directly in code that does not care how the patch info is stored.
PatchInfo | |
|
addJunk :: PatchInfo -> IO PatchInfoSource
addJunk adds a line that contains a random number to make the patch unique.
justName :: PatchInfo -> StringSource
Get the name, including an UNDO: prefix if the patch is inverted.
justAuthor :: PatchInfo -> StringSource
Returns the author of a patch.
repopatchinfo :: String -> PatchInfo -> RepoPatchInfoSource
humanFriendly :: PatchInfo -> DocSource
showPatchInfo :: PatchInfo -> DocSource
Patch is stored between square brackets.
[ <patch name> <patch author>*<patch date> <patch log (may be empty)> (indented one) <can have multiple lines in patch log,> <as long as they're preceded by a space> <and don't end with a square bracket.> ]
note that below I assume the name has no newline in it.