module Data.Fasta.Text.Lazy.Utility ( getField
, compl
, revCompl
) where
import qualified Data.Text.Lazy as T
import Data.Fasta.Text.Lazy.Types
import Data.Fasta.Utility
getField :: Int -> Char -> FastaSequence -> T.Text
getField field delim = (!! (field 1)) . T.split (== delim) . fastaHeader
compl :: FastaSequence -> FastaSequence
compl fs = fs { fastaSeq = T.map complRules . fastaSeq $ fs }
revCompl :: FastaSequence -> FastaSequence
revCompl fs = fs { fastaSeq = T.reverse . T.map complRules . fastaSeq $ fs }