License | BSD-style |
---|---|
Maintainer | Vincent Hanquez <vincent@snarc.org> |
Stability | experimental |
Portability | unix |
Safe Haskell | None |
Language | Haskell98 |
- data ObjectLocation
- data ObjectType
- type ObjectHeader = (ObjectType, Word64, Maybe ObjectPtr)
- type ObjectData = ByteString
- data ObjectPtr
- data Object
- data ObjectInfo = ObjectInfo {
- oiHeader :: ObjectHeader
- oiData :: ObjectData
- oiChains :: [ObjectPtr]
- class Objectable a where
- getType :: a -> ObjectType
- getRaw :: a -> ByteString
- isDelta :: a -> Bool
- toObject :: a -> Object
- objectToType :: Object -> ObjectType
- objectTypeMarshall :: ObjectType -> String
- objectTypeUnmarshall :: String -> ObjectType
- objectTypeIsDelta :: ObjectType -> Bool
- objectIsDelta :: Object -> Bool
- objectToTree :: Object -> Maybe Tree
- objectToCommit :: Object -> Maybe Commit
- objectToTag :: Object -> Maybe Tag
- objectToBlob :: Object -> Maybe Blob
- treeParse :: Parser ByteString Tree
- commitParse :: Parser ByteString Commit
- tagParse :: Parser ByteString Tag
- blobParse :: Parser ByteString Blob
- objectParseTree :: Parser ByteString Object
- objectParseCommit :: Parser ByteString Object
- objectParseTag :: Parser ByteString Object
- objectParseBlob :: Parser ByteString Object
- objectWriteHeader :: ObjectType -> Word64 -> ByteString
- objectWrite :: Object -> ByteString
- objectHash :: ObjectType -> Word64 -> ByteString -> Ref
Documentation
data ObjectLocation Source
location of an object in the database
data ObjectType Source
type of a git object.
Enum ObjectType | the enum instance is useful when marshalling to pack file. |
Eq ObjectType | |
Data ObjectType | |
Show ObjectType | |
Typeable * ObjectType |
type ObjectHeader = (ObjectType, Word64, Maybe ObjectPtr) Source
type ObjectData = ByteString Source
Delta objects points to some others objects in the database either as offset in the pack or as a direct reference.
describe a git object, that could of 6 differents types: tree, blob, commit, tag and deltas (offset or ref). the deltas one are only available in packs.
data ObjectInfo Source
Raw objects infos have an header (type, size, ptr), the data and a pointers chains to parents for resolved objects.
ObjectInfo | |
|
class Objectable a where Source
getType :: a -> ObjectType Source
getRaw :: a -> ByteString Source
objectToType :: Object -> ObjectType Source
objectIsDelta :: Object -> Bool Source
objectToTree :: Object -> Maybe Tree Source
objectToCommit :: Object -> Maybe Commit Source
objectToTag :: Object -> Maybe Tag Source
objectToBlob :: Object -> Maybe Blob Source
parsing function
treeParse :: Parser ByteString Tree Source
parse a tree content
commitParse :: Parser ByteString Commit Source
parse a commit content
tagParse :: Parser ByteString Tag Source
parse a tag content
blobParse :: Parser ByteString Blob Source
parse a blob content
writing function
objectWriteHeader :: ObjectType -> Word64 -> ByteString Source
objectWrite :: Object -> ByteString Source
objectHash :: ObjectType -> Word64 -> ByteString -> Ref Source