, getPage
, putPage
+ , deletePage
, getPageA
, putPageA
+ , deletePageA
, searchPages
return st
+deletePage :: MonadIO m => Storage -> PageName -> m StatusCode
+deletePage sto name
+ = liftIO $ do st <- deletePage' (stoRepository sto) name
+ syncIndex sto
+ return st
+
+
getPageA :: ArrowIO a => Storage -> a (PageName, Maybe RevNum) (Maybe Page)
getPageA = arrIO2 . getPage
putPageA = arrIO . putPage
+deletePageA :: ArrowIO a => Storage -> a PageName StatusCode
+deletePageA = arrIO . deletePage
+
+
searchPages :: MonadIO m => Storage -> Condition -> m [(PageName, RevNum)]
searchPages sto cond
= liftIO $