| Safe Haskell | None |
|---|
Data.Align
- align :: (Vector v a, Num s, Eq s, Ord s) => AlignConfig a s -> v a -> v a -> Trace a s
- data AlignConfig a s
- alignConfig :: (a -> a -> s) -> s -> s -> AlignConfig a s
- type Step a = Either (Either a a) (a, a)
- data Trace a s
- traceScore :: Trace a s -> s
- trace :: Trace a s -> [Step a]
- windowedAlign :: (Num s, Eq s, Ord s) => AlignConfig a s -> Int -> [a] -> [a] -> [Step a]
- debugAlign :: [Step Char] -> String
Documentation
Arguments
| :: (Vector v a, Num s, Eq s, Ord s) | |
| => AlignConfig a s | |
| -> v a | Left sequence. |
| -> v a | Right sequence. |
| -> Trace a s |
Aligns two sequences.
>>>:{let tr = align (alignConfig (\a b -> if a == b then 1 else (-0.25 :: Double)) (-0.5) (-1)) (Data.Vector.fromList "dopple") (Data.Vector.fromList "applied") in do print $ traceScore tr putStrLn . debugAlign . trace $ tr :} 1.25 doppl-e- -applied
data AlignConfig a s Source
Arguments
| :: (a -> a -> s) | Scoring function. |
| -> s | Initial gap penalty. |
| -> s | Gap penalty. |
| -> AlignConfig a s |
traceScore :: Trace a s -> sSource
Arguments
| :: (Num s, Eq s, Ord s) | |
| => AlignConfig a s | |
| -> Int | Window size. |
| -> [a] | Left stream. |
| -> [a] | Right stream. |
| -> [Step a] | Alignment result. |
Aligns long streams by performing alignment on windowed sections.
debugAlign :: [Step Char] -> StringSource
Utility for displaying a Char-based alignment.