miss-0: A Haskell git implimentation

Safe HaskellNone
LanguageHaskell2010

Data.Git.Object

Description

 
Synopsis

Documentation

data ObjectType Source #

Objects can be blobs, trees, commits, or tags.

data Object Source #

An Object can be a Blob, a Tree, a Commit, or a Tag.

Instances
Eq Object Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(==) :: Object -> Object -> Bool #

(/=) :: Object -> Object -> Bool #

Ord Object Source # 
Instance details

Defined in Data.Git.Internal.Object

Show Object Source # 
Instance details

Defined in Data.Git.Internal.Object

HasSha1 Object Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

sha1 :: Object -> Sha1 Source #

newtype Blob Source #

A blob is just some data.

Constructors

Blob 

Fields

Instances
Eq Blob Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(==) :: Blob -> Blob -> Bool #

(/=) :: Blob -> Blob -> Bool #

Ord Blob Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

compare :: Blob -> Blob -> Ordering #

(<) :: Blob -> Blob -> Bool #

(<=) :: Blob -> Blob -> Bool #

(>) :: Blob -> Blob -> Bool #

(>=) :: Blob -> Blob -> Bool #

max :: Blob -> Blob -> Blob #

min :: Blob -> Blob -> Blob #

Show Blob Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

showsPrec :: Int -> Blob -> ShowS #

show :: Blob -> String #

showList :: [Blob] -> ShowS #

IsString Blob Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

fromString :: String -> Blob #

HasSha1 Blob Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

sha1 :: Blob -> Sha1 Source #

newtype Tree Source #

Trees map TreeEntrys to the Sha1s of objects.

Constructors

Tree 
Instances
Eq Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(==) :: Tree -> Tree -> Bool #

(/=) :: Tree -> Tree -> Bool #

Ord Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

compare :: Tree -> Tree -> Ordering #

(<) :: Tree -> Tree -> Bool #

(<=) :: Tree -> Tree -> Bool #

(>) :: Tree -> Tree -> Bool #

(>=) :: Tree -> Tree -> Bool #

max :: Tree -> Tree -> Tree #

min :: Tree -> Tree -> Tree #

Show Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

showsPrec :: Int -> Tree -> ShowS #

show :: Tree -> String #

showList :: [Tree] -> ShowS #

Semigroup Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(<>) :: Tree -> Tree -> Tree #

sconcat :: NonEmpty Tree -> Tree #

stimes :: Integral b => b -> Tree -> Tree #

Monoid Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

mempty :: Tree #

mappend :: Tree -> Tree -> Tree #

mconcat :: [Tree] -> Tree #

HasSha1 Tree Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

sha1 :: Tree -> Sha1 Source #

data Commit Source #

A Commit must point to the Sha1 of a Tree, and can have 0 or more parents (each of which are Commits). 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.

Instances
Eq Commit Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(==) :: Commit -> Commit -> Bool #

(/=) :: Commit -> Commit -> Bool #

Ord Commit Source # 
Instance details

Defined in Data.Git.Internal.Object

Show Commit Source # 
Instance details

Defined in Data.Git.Internal.Object

HasSha1 Commit Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

sha1 :: Commit -> Sha1 Source #

data Tag Source #

A Tag can point to anything, but should probably point to a Commit.

Instances
Eq Tag Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

(==) :: Tag -> Tag -> Bool #

(/=) :: Tag -> Tag -> Bool #

Ord Tag Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

compare :: Tag -> Tag -> Ordering #

(<) :: Tag -> Tag -> Bool #

(<=) :: Tag -> Tag -> Bool #

(>) :: Tag -> Tag -> Bool #

(>=) :: Tag -> Tag -> Bool #

max :: Tag -> Tag -> Tag #

min :: Tag -> Tag -> Tag #

Show Tag Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

showsPrec :: Int -> Tag -> ShowS #

show :: Tag -> String #

showList :: [Tag] -> ShowS #

HasSha1 Tag Source # 
Instance details

Defined in Data.Git.Internal.Object

Methods

sha1 :: Tag -> Sha1 Source #

data TreeEntry Source #

Trees are composed of entries, each of which has a name and a Mode, which determines what kind of thing it is.

Constructors

Entry 

Fields

asBlob :: Object -> Maybe Blob Source #

Try to view an Object as a Blob

asTree :: Object -> Maybe Tree Source #

Try to view an Object as a Tree

asCommit :: Object -> Maybe Commit Source #

Try to view an Object as a Commit

asTag :: Object -> Maybe Tag Source #

Try to view an Object as a Tag

emptyTree :: Tree Source #

The empty Tree

emptyTreeSha :: Sha1 Source #

The Sha1 of the empty Tree