elynx-seq-0.6.0.0: Handle molecular sequences
Copyright(c) Dominik Schrempf 2021
LicenseGPL-3.0-or-later
Maintainerdominik.schrempf@gmail.com
Stabilityunstable
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

ELynx.Data.Sequence.Sequence

Description

Creation date: Thu Oct 4 18:54:51 2018.

This module is to be imported qualified.

Synopsis

Types

type Name = ByteString Source #

For now, Names are just ByteStrings.

type Description = ByteString Source #

The description of a sequence.

type Characters = Vector Character Source #

The vector of characters of a sequence.

data Sequence Source #

Sequences have a name, a possibly empty description, a code and hopefully a lot of data.

Instances

Instances details
Eq Sequence Source # 
Instance details

Defined in ELynx.Data.Sequence.Sequence

Show Sequence Source # 
Instance details

Defined in ELynx.Data.Sequence.Sequence

Input

fromByteString :: ByteString -> Characters Source #

Convert byte string to sequence characters.

Output

toByteString :: Characters -> ByteString Source #

Convert sequence characters to byte string.

header :: [Sequence] -> ByteString Source #

A short description of the sequence.

summarizeSequences :: [Sequence] -> ByteString Source #

Trim and show a list of Sequences.

body :: [Sequence] -> ByteString Source #

Trim and show a list of Sequences.

Analysis

length :: Sequence -> Int Source #

Calculate length of Sequence.

equalLength :: [Sequence] -> Bool Source #

Check if all Sequences have equal length.

longest :: [Sequence] -> Sequence Source #

Find the longest Sequence in a list.

Manipulation

trim :: Int -> Sequence -> Sequence Source #

Trim to given length.

concat :: Sequence -> Sequence -> Sequence Source #

Concatenate two sequences. Names have to match.

concatSequences :: [[Sequence]] -> [Sequence] Source #

Concatenate a list of sequences, see concat.

Filtering

filterShorterThan :: Int -> [Sequence] -> [Sequence] Source #

Only take Sequences that are shorter than a given number.

filterLongerThan :: Int -> [Sequence] -> [Sequence] Source #

Only take Sequences that are longer than a given number.

filterStandard :: [Sequence] -> [Sequence] Source #

Only take Sequences that contain at least on non-IUPAC character.