bioalign 0.0.3 → 0.0.4
raw patch · 2 files changed
+10/−3 lines, 2 files
Files
- bioalign.cabal +1/−1
- src/Bio/Alignment/AlignData.hs +9/−2
bioalign.cabal view
@@ -1,5 +1,5 @@ Name: bioalign-Version: 0.0.3+Version: 0.0.4 Synopsis: Data structures and helper functions for calculating alignments Description: Data structures and helper functions for calculating alignments Homepage: https://patch-tag.com/r/dfornika/biophd/home
src/Bio/Alignment/AlignData.hs view
@@ -36,9 +36,16 @@ -- ---------------------------------------- -data Sequence = Seq SeqData (Maybe QualData) -- ^ header and actual sequence+-- Sequence is a header String, plus SeqData and optional QualData+-- Sequence is an instance of the Bio.Core.Sequence.BioSeq class.++data Sequence = Seq SeqLabel SeqData (Maybe QualData) deriving Eq +instance BioSeq Sequence where+ seqlabel (Seq lab seq mqual) = lab+ seqdata (Seq lab seq mqual) = seq+ seqlength (Seq lab seq mqual) = Offset {unOff = BC.length $ unSD seq} type Gaps = [Offset] type Alignment = [(Offset, Strand, Sequence, Gaps)]@@ -106,7 +113,7 @@ -- This represents the columns of the alignment matrix, but will only require linear space -- for score calculation. columns :: Selector a -> a -> Sequence -> Sequence -> [[a]]-columns f z (Seq s1 _) (Seq s2 _) = columns' f z s1 s2+columns f z (Seq _ s1 _) (Seq _ s2 _) = columns' f z s1 s2 columns' :: Selector a -> a -> SeqData -> SeqData -> [[a]] columns' f zero s1 s2 = let