Iteratee-based importer. Provides a simple fromFile function that produces both maps in one pass.
- iSpeciesMap :: Monad m => Iteratee [Species] m (Map ByteString Species)
- iTaxIdMap :: Monad m => Iteratee [Species] m (Map Int Species)
- eneeSpecies :: Monad m => Enumeratee ByteString [Either String Species] m a
- mkSpecies :: Parser Species
- fromFile :: FilePath -> IO (Map ByteString Species, Map Int Species)
Documentation
iSpeciesMap :: Monad m => Iteratee [Species] m (Map ByteString Species)Source
Provide name-based lookup as the most-common usage scenario.
TODO there are 9 duplicates in the names, let's find them and see what is going on
eneeSpecies :: Monad m => Enumeratee ByteString [Either String Species] m aSource
Imports taxonomy data.
mkSpecies :: Parser SpeciesSource
Given a ByteString
, create a species entry.
NOTE The taxonomy format is, for each species, a line consisting of: taxid - tab - species name - tab - semicolon separated list of classification names - dot - end of line.
fromFile :: FilePath -> IO (Map ByteString Species, Map Int Species)Source
Convenience function: given a taxonomy file, produce both maps simultanously.