module Biobase.GeneticCodes.Embedded where import Control.Monad.Except import Data.ByteString (ByteString) import Data.FileEmbed import Biobase.GeneticCodes.Import import Biobase.GeneticCodes.Types geneticCodesFile :: ByteString geneticCodesFile :: ByteString geneticCodesFile = $(makeRelativeToProject "sources/translation-tables" >>= embedFile) geneticCodes :: [TranslationTable Char Char] geneticCodes :: [TranslationTable Char Char] geneticCodes = ([Char] -> [TranslationTable Char Char]) -> ([TranslationTable Char Char] -> [TranslationTable Char Char]) -> Either [Char] [TranslationTable Char Char] -> [TranslationTable Char Char] forall a c b. (a -> c) -> (b -> c) -> Either a b -> c either [Char] -> [TranslationTable Char Char] forall a. HasCallStack => [Char] -> a error [TranslationTable Char Char] -> [TranslationTable Char Char] forall a. a -> a id (Either [Char] [TranslationTable Char Char] -> [TranslationTable Char Char]) -> (Except [Char] [TranslationTable Char Char] -> Either [Char] [TranslationTable Char Char]) -> Except [Char] [TranslationTable Char Char] -> [TranslationTable Char Char] forall b c a. (b -> c) -> (a -> b) -> a -> c . Except [Char] [TranslationTable Char Char] -> Either [Char] [TranslationTable Char Char] forall e a. Except e a -> Either e a runExcept (Except [Char] [TranslationTable Char Char] -> [TranslationTable Char Char]) -> Except [Char] [TranslationTable Char Char] -> [TranslationTable Char Char] forall a b. (a -> b) -> a -> b $ ByteString -> Except [Char] [TranslationTable Char Char] forall (m :: * -> *). MonadError [Char] m => ByteString -> m [TranslationTable Char Char] fromByteString ByteString geneticCodesFile