packages feed

gitlib-sample 2.2.0.0 → 3.0.0

raw patch · 2 files changed

+47/−77 lines, 2 filesdep +failuredep +mtldep ~gitlib

Dependencies added: failure, mtl

Dependency ranges changed: gitlib

Files

Git/Sample.hs view
@@ -1,5 +1,4 @@ {-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE FlexibleContexts #-}@@ -11,22 +10,15 @@                 -fno-warn-unused-binds                 -fno-warn-orphans #-} -module Git.Sample-       ( SampleRepository(..), Repository(..)-       , Git.Oid, BlobOid(), TreeOid(), CommitOid()-       , Tree(), Commit()-       , sampleFactory-       , sampleGet-       ) where+module Git.Sample ( SampleRepository(..), sampleFactory ) where  import           Control.Applicative-import           Control.Monad.IO.Class-import           Control.Monad.Trans.Class-import           Control.Monad.Trans.Reader+import           Control.Failure+import           Control.Monad.Reader.Class+import           Control.Monad.Trans.Reader (ReaderT, runReaderT) import qualified Git  data Void-data VoidP p  instance Show Void where     show _ = undefined@@ -40,90 +32,66 @@ instance Git.IsOid Void where     renderOid _ = undefined -instance Git.MonadGit m => Git.Repository (SampleRepository m) where-    type Oid (SampleRepository m)         = Void-    data Tree (SampleRepository m)        = Void-    data Options (SampleRepository m)     = Options+data SampleRepository = SampleRepository +class HasSampleRepository env where+    getSampleRepository :: env -> SampleRepository++instance HasSampleRepository SampleRepository where+    getSampleRepository = id++instance HasSampleRepository (e, SampleRepository) where+    getSampleRepository = snd++instance (Applicative m, Failure Git.GitException m,+          MonadReader env m, HasSampleRepository env)+         => Git.MonadGit SampleRepository m where+    type Oid SampleRepository     = Void+    data Tree SampleRepository    = Void+    data Options SampleRepository = Options+     facts = return Git.RepositoryFacts         { Git.hasSymbolicReferences = True } +    getRepository     = getSampleRepository <$> ask+    closeRepository   = undefined+    deleteRepository  = undefined+     parseOid          = undefined+     lookupReference   = undefined     createReference   = undefined     updateReference   = undefined     deleteReference   = undefined-    listReferences    = undefined+    sourceReferences  = undefined++    lookupObject      = undefined+    existsObject      = undefined+    sourceObjects     = undefined+     lookupCommit      = undefined     lookupTree        = undefined     lookupBlob        = undefined     lookupTag         = undefined-    lookupObject      = undefined-    existsObject      = undefined-    sourceObjects     = undefined+     newTreeBuilder    = undefined     treeOid           = undefined     treeEntry         = undefined-    listTreeEntries   = undefined+    sourceTreeEntries = undefined+     hashContents      = undefined     createBlob        = undefined     createCommit      = undefined     createTag         = undefined-    deleteRepository  = undefined-    -- remoteFetch       = undefined      diffContentsWithTree = undefined---- type TreeEntry m = Git.TreeEntry (SampleRepository m) -data Repository = Repository Void--instance Eq Repository where-  _x == _y = undefined--instance Show Repository where-  show _x = undefined--newtype SampleRepository m a = SampleRepository-    { sampleRepositoryReaderT :: ReaderT Repository m a }-    deriving (Functor, Applicative, Monad, MonadIO, MonadTrans)--type BlobOid m   = Git.BlobOid (SampleRepository m)-type TreeOid m   = Git.TreeOid (SampleRepository m)-type CommitOid m = Git.CommitOid (SampleRepository m)-type TagOid m    = Git.TagOid (SampleRepository m)--type Tree m      = Git.Tree (SampleRepository m)-type Commit m    = Git.Commit (SampleRepository m)-type RefTarget m = Git.RefTarget (SampleRepository m)--sampleGet :: Monad m => SampleRepository m Repository-sampleGet = SampleRepository ask--sampleFactory :: Git.MonadGit m-              => Git.RepositoryFactory (SampleRepository m) m Repository+sampleFactory :: (MonadReader env m, HasSampleRepository env)+              => Git.RepositoryFactory (ReaderT SampleRepository m) m+                     SampleRepository sampleFactory = Git.RepositoryFactory-    { Git.openRepository  = openSampleRepository-    , Git.runRepository   = runSampleRepository-    , Git.closeRepository = closeSampleRepository-    , Git.getRepository   = sampleGet-    , Git.defaultOptions  = defaultSampleOptions-    , Git.startupBackend  = return ()-    , Git.shutdownBackend = return ()+    { Git.openRepository = undefined+    , Git.runRepository  = flip runReaderT     }--openSampleRepository :: Git.MonadGit m => Git.RepositoryOptions -> m Repository-openSampleRepository _opts = undefined--runSampleRepository :: Git.MonadGit m-                    => Repository -> SampleRepository m a -> m a-runSampleRepository repo action =-    runReaderT (sampleRepositoryReaderT action) repo--closeSampleRepository :: Git.MonadGit m => Repository -> m ()-closeSampleRepository = const (return ())--defaultSampleOptions :: Git.RepositoryOptions-defaultSampleOptions = Git.RepositoryOptions "" False False  -- Sample.hs
gitlib-sample.cabal view
@@ -1,5 +1,5 @@ Name:                gitlib-sample-Version:             2.2.0.0+Version:             3.0.0 Synopsis:            Sample backend for gitlib showing the basic structure for any backend. License-file:        LICENSE License:             MIT@@ -22,9 +22,9 @@ --     Hs-source-dirs: test --     Build-depends:  --           base >=3---         , gitlib             >= 2.2.0.0---         , gitlib-test        >= 2.2.0.0---         , gitlib-sample      >= 2.2.0.0+--         , gitlib             >= 3.0.0+--         , gitlib-test        >= 3.0.0+--         , gitlib-sample      >= 3.0.0 --         , HUnit              >= 1.2.5 --         , hspec              >= 1.4.4 --         , hspec-expectations >= 0.3@@ -34,7 +34,9 @@     ghc-options: -Wall     build-depends:           base                 >= 3 && < 5-        , gitlib               >= 2.2.0.0+        , failure              >= 0.2.0+        , gitlib               >= 3.0.0+        , mtl                  >= 2.1.2         , transformers         >= 0.3.0.0     exposed-modules:         Git.Sample