-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Tools for entity indexation -- -- A set of tools for indexing entities @package indexation @version 0.4 module Indexation.Potoki.Transform data Transform input output newtype Index entity Index :: Int -> Index entity data Indexer entity data EntityTable entity index :: (Eq entity, Hashable entity) => Indexer entity -> Transform entity (Index entity) lookup :: EntityTable entity -> Transform (Index entity) (Maybe entity) module Indexation.IO data Indexer entity data EntityTable entity createIndexer :: IO (Indexer entity) getIndexerSize :: Indexer entity -> IO Int freezeIndexerAsEntityTable :: Indexer entity -> IO (EntityTable entity) serializeEntityTableToFile :: Serialize entity => EntityTable entity -> FilePath -> IO (Either IOException ()) serializeIndexerToFile :: Serialize a => (Text -> IO ()) -> FilePath -> Indexer a -> IO (Either IOException ()) readEntitiesAmountFromEntityTableFile :: FilePath -> IO (Either IOException Int) readEntityTableFromFile :: Serialize entity => FilePath -> IO (Either IOException (Either Text (EntityTable entity))) module Indexation.Data newtype Index entity Index :: Int -> Index entity data EntityTable entity data Indexer entity lookupEntity :: Index entity -> EntityTable entity -> Maybe entity