14 import Control.Arrow.ArrowIO
15 import Control.Monad.Trans
17 import Rakka.Storage.DefaultPage
18 import Subversion.Types
21 data Storage = Storage -- FIXME
24 mkStorage :: Storage -- FIXME
28 getPage :: MonadIO m => Storage -> PageName -> m (Maybe Page)
30 = liftIO $ loadDefaultPage name -- FIXME
33 putPage :: MonadIO m => Storage -> Maybe RevNum -> Page -> m ()
34 putPage sto oldRev page
35 = error "FIXME: not implemented"
38 getPageA :: ArrowIO a => Storage -> a PageName (Maybe Page)
39 getPageA = arrIO . getPage
42 putPageA :: ArrowIO a => Storage -> a (Maybe RevNum, Page) ()
43 putPageA = arrIO2 . putPage