BiobaseTypes-0.1.4.0: Collection of types for bioinformatics

Safe HaskellNone
LanguageHaskell2010

Biobase.Types.NucleotideSequence

Description

Wrappers around biosequences.

Synopsis

Documentation

newtype SequenceID Source #

A sequence identifier. Just a newtype wrapped text field. Because we can never know what people are up to, this is utf8-encoded.

TODO Provide Iso' for Text, too?

TODO move into Biobase.Types.SequenceID

Constructors

SequenceID 
Instances
Eq SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Data SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SequenceID -> c SequenceID #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SequenceID #

toConstr :: SequenceID -> Constr #

dataTypeOf :: SequenceID -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SequenceID) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SequenceID) #

gmapT :: (forall b. Data b => b -> b) -> SequenceID -> SequenceID #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SequenceID -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SequenceID -> r #

gmapQ :: (forall d. Data d => d -> u) -> SequenceID -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SequenceID -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SequenceID -> m SequenceID #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SequenceID -> m SequenceID #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SequenceID -> m SequenceID #

Ord SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Read SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Show SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

IsString SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Generic SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type Rep SequenceID :: Type -> Type #

NFData SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

rnf :: SequenceID -> () #

type Rep SequenceID Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type Rep SequenceID = D1 (MetaData "SequenceID" "Biobase.Types.NucleotideSequence" "BiobaseTypes-0.1.4.0-2SJmLmHyrafG90Dl3d2I5j" True) (C1 (MetaCons "SequenceID" PrefixI True) (S1 (MetaSel (Just "_sequenceID") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ByteString)))

sequenceIDstring :: Iso' SequenceID String Source #

Convert to a string in a unicode-aware manner.

newtype RNAseq Source #

A short RNA sequence.

It is an instance of Ixed to allow RNAseq (BS.pack "cag") ^? ix 2 == Just g.

Constructors

RNAseq 

Fields

Instances
Eq RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

(==) :: RNAseq -> RNAseq -> Bool #

(/=) :: RNAseq -> RNAseq -> Bool #

Data RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RNAseq -> c RNAseq #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RNAseq #

toConstr :: RNAseq -> Constr #

dataTypeOf :: RNAseq -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RNAseq) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RNAseq) #

gmapT :: (forall b. Data b => b -> b) -> RNAseq -> RNAseq #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RNAseq -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RNAseq -> r #

gmapQ :: (forall d. Data d => d -> u) -> RNAseq -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RNAseq -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RNAseq -> m RNAseq #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RNAseq -> m RNAseq #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RNAseq -> m RNAseq #

Ord RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Read RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Show RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

IsString RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

fromString :: String -> RNAseq #

Generic RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type Rep RNAseq :: Type -> Type #

Methods

from :: RNAseq -> Rep RNAseq x #

to :: Rep RNAseq x -> RNAseq #

Arbitrary RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

NFData RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

rnf :: RNAseq -> () #

Ixed RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Reversing RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

reversing :: RNAseq -> RNAseq #

Complement RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Transcribe RNAseq Source #

Transcribe a RNA sequence into an DNA sequence. This does not reverse the sequence!

Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type TranscribeTo RNAseq :: Type Source #

type Rep RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type Rep RNAseq = D1 (MetaData "RNAseq" "Biobase.Types.NucleotideSequence" "BiobaseTypes-0.1.4.0-2SJmLmHyrafG90Dl3d2I5j" True) (C1 (MetaCons "RNAseq" PrefixI True) (S1 (MetaSel (Just "_rnaseq") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ByteString)))
type Index RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type IxValue RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type TranscribeTo RNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

newtype DNAseq Source #

A short DNA sequence.

Note everything really long should be handled by specialized libraries with streaming capabilities.

Constructors

DNAseq 

Fields

Instances
Eq DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

(==) :: DNAseq -> DNAseq -> Bool #

(/=) :: DNAseq -> DNAseq -> Bool #

Data DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DNAseq -> c DNAseq #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DNAseq #

toConstr :: DNAseq -> Constr #

dataTypeOf :: DNAseq -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DNAseq) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DNAseq) #

gmapT :: (forall b. Data b => b -> b) -> DNAseq -> DNAseq #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DNAseq -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DNAseq -> r #

gmapQ :: (forall d. Data d => d -> u) -> DNAseq -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DNAseq -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DNAseq -> m DNAseq #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DNAseq -> m DNAseq #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DNAseq -> m DNAseq #

Ord DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Read DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Show DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

IsString DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

fromString :: String -> DNAseq #

Generic DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type Rep DNAseq :: Type -> Type #

Methods

from :: DNAseq -> Rep DNAseq x #

to :: Rep DNAseq x -> DNAseq #

Arbitrary DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

NFData DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

rnf :: DNAseq -> () #

Ixed DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Reversing DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Methods

reversing :: DNAseq -> DNAseq #

Complement DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

Transcribe DNAseq Source #

Transcribe a DNA sequence into an RNA sequence. This does not reverse the sequence!

Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type TranscribeTo DNAseq :: Type Source #

type Rep DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type Rep DNAseq = D1 (MetaData "DNAseq" "Biobase.Types.NucleotideSequence" "BiobaseTypes-0.1.4.0-2SJmLmHyrafG90Dl3d2I5j" True) (C1 (MetaCons "DNAseq" PrefixI True) (S1 (MetaSel (Just "_dnaseq") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ByteString)))
type Index DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type IxValue DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

type TranscribeTo DNAseq Source # 
Instance details

Defined in Biobase.Types.NucleotideSequence

rna2dna :: Char -> Char Source #

Simple case translation from U to T. with upper and lower-case awareness.

rnaComplement :: Char -> Char Source #

Single character RNA complement.

dna2rna :: Char -> Char Source #

Simple case translation from T to U with upper- and lower-case awareness.

dnaComplement :: Char -> Char Source #

Single character DNA complement.

class Transcribe f where Source #

Transcribes a DNA sequence into an RNA sequence. Note that transcribe is actually very generic. We just define its semantics to be that of biomolecular transcription.

transcribe makes the assumption that, given DNA -> RNA, we transcribe the coding strand. http://hyperphysics.phy-astr.gsu.edu/hbase/Organic/transcription.html

@ DNAseq ACGT ^. transcribe == RNAseq ACGU RNAseq ACGU ^. transcribe == DNAseq ACGT RNAseq ACGU ^. from transcribe :: DNAseq == DNAseq ACGT @

Associated Types

type TranscribeTo f :: * Source #

Instances
Transcribe RNAseq Source #

Transcribe a RNA sequence into an DNA sequence. This does not reverse the sequence!

Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type TranscribeTo RNAseq :: Type Source #

Transcribe DNAseq Source #

Transcribe a DNA sequence into an RNA sequence. This does not reverse the sequence!

Instance details

Defined in Biobase.Types.NucleotideSequence

Associated Types

type TranscribeTo DNAseq :: Type Source #

class Complement f where Source #

The complement of a biosequence.

Methods

complement :: Iso' f f Source #