Safe Haskell | None |
---|---|
Language | Haskell2010 |
Internal object stuff.
Synopsis
- data ObjectType
- newtype Blob = Blob {}
- data TreeEntry = Entry {}
- newtype Tree = Tree {}
- data Commit = Commit {
- commitTree :: Sha1
- commitParents :: [Sha1]
- commitAuthor :: (Contact, Date)
- commitCommitter :: (Contact, Date)
- commitMessage :: ByteString
- data Object
- data Tag = Tag {
- tagObject :: Sha1
- tagType :: ObjectType
- tagName :: LfFree
- tagTagger :: (Contact, Date)
- tagMessage :: ByteString
- buildBlob :: Blob -> Builder
- buildTree :: Tree -> Builder
- emptyTree :: Tree
- emptyTreeSha :: Sha1
- buildCommit :: Commit -> Builder
- buildTag :: Tag -> Builder
- buildObjType :: ObjectType -> Builder
- buildTreeEntry :: (TreeEntry, Sha1) -> Builder
- buildMode :: Mode -> Builder
- buildSha1 :: Sha1 -> Builder
- buildSha1Hex :: Sha1Hex -> Builder
- buildHexSha1 :: Sha1 -> Builder
- lfB :: Builder
- buildDate :: Date -> Builder
- buildContactAndDate :: (Contact, Date) -> Builder
- buildObject :: Object -> Builder
- suck :: Builder -> Builder -> Builder
- buildLooseObject :: Object -> Builder
- parseBlob :: Parser Blob
- parseTreeEntry :: Parser (TreeEntry, Sha1)
- parseTree :: Parser Tree
- parseCommit :: Parser Commit
- parseTag :: Parser Tag
- parseObjectType :: Parser ObjectType
- skipRestOfHeader :: Parser ()
- looseHeader :: ObjectType -> Parser ()
- parseMode :: Parser Mode
- parseContactAndDate :: Parser (Contact, Date)
- parseObject :: Parser Object
Documentation
data ObjectType Source #
Objects can be blobs, trees, commits, or tags.
Instances
Eq ObjectType Source # | |
Defined in Data.Git.Internal.Object (==) :: ObjectType -> ObjectType -> Bool # (/=) :: ObjectType -> ObjectType -> Bool # | |
Ord ObjectType Source # | |
Defined in Data.Git.Internal.Object compare :: ObjectType -> ObjectType -> Ordering # (<) :: ObjectType -> ObjectType -> Bool # (<=) :: ObjectType -> ObjectType -> Bool # (>) :: ObjectType -> ObjectType -> Bool # (>=) :: ObjectType -> ObjectType -> Bool # max :: ObjectType -> ObjectType -> ObjectType # min :: ObjectType -> ObjectType -> ObjectType # | |
Show ObjectType Source # | |
Defined in Data.Git.Internal.Object showsPrec :: Int -> ObjectType -> ShowS # show :: ObjectType -> String # showList :: [ObjectType] -> ShowS # |
A blob is just some data.
Tree
s are composed of entries, each of which has a name and a Mode
, which determines what
kind of thing it is.
A Commit
must point to the Sha1
of a Tree
, and can have 0 or more parents (each of which
are Commit
s). A commit with 0 parents is the initial commit in a repo, a commit with 1
parent is a normal commit, and a commit with more than 1 parent is a merge commit.
Commit | |
|
Tag | |
|
buildObjType :: ObjectType -> Builder Source #
buildSha1Hex :: Sha1Hex -> Builder Source #
buildHexSha1 :: Sha1 -> Builder Source #
parseTreeEntry :: Parser (TreeEntry, Sha1) Source #
parseCommit :: Parser Commit Source #
parseObjectType :: Parser ObjectType Source #
skipRestOfHeader :: Parser () Source #
looseHeader :: ObjectType -> Parser () Source #
parseContactAndDate :: Parser (Contact, Date) Source #
parseObject :: Parser Object Source #