Copyright | (c) Dominik Schrempf 2021 |
---|---|
License | GPL-3.0-or-later |
Maintainer | dominik.schrempf@gmail.com |
Stability | unstable |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Creation date: Fri May 10 11:10:32 2019.
Hierarchy:
Character
type.- Sets of
Character
s formAlphabet
s; eachAlphabet
has a specificationAlphabetSpec
.
New alphabets have to be added manually to this module.
This way of handling characters and alphabets IS NOT TYPE SAFE, but much, much
faster. A second layer of modules such as Nucleotide
depend on a Character
type class. Hence, they
provide a type safe way of handling alphabets. Conversion is possible, for
instance, with fromCVec
, and
toCVec
.
Synopsis
- data Alphabet
- data AlphabetSpec = AlphabetSpec {}
- alphabetSpec :: Alphabet -> AlphabetSpec
- alphabetDescription :: Alphabet -> String
- isStd :: Alphabet -> Character -> Bool
- isGap :: Alphabet -> Character -> Bool
- isUnknown :: Alphabet -> Character -> Bool
- isIUPAC :: Alphabet -> Character -> Bool
- isMember :: Alphabet -> Character -> Bool
Documentation
Available alphabets; for details see alphabetSpec
.
Instances
Bounded Alphabet Source # | |
Enum Alphabet Source # | |
Defined in ELynx.Data.Alphabet.Alphabet | |
Eq Alphabet Source # | |
Ord Alphabet Source # | |
Defined in ELynx.Data.Alphabet.Alphabet | |
Read Alphabet Source # | |
Show Alphabet Source # | |
Generic Alphabet Source # | |
ToJSON Alphabet Source # | |
Defined in ELynx.Data.Alphabet.Alphabet | |
FromJSON Alphabet Source # | |
type Rep Alphabet Source # | |
Defined in ELynx.Data.Alphabet.Alphabet type Rep Alphabet = D1 ('MetaData "Alphabet" "ELynx.Data.Alphabet.Alphabet" "elynx-seq-0.6.0.0-LtTbvishThEEtvOIpTEQaG" 'False) ((C1 ('MetaCons "DNA" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DNAX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DNAI" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Protein" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ProteinX" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ProteinS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ProteinI" 'PrefixI 'False) (U1 :: Type -> Type)))) |
data AlphabetSpec Source #
Alphabet specification. Set
is used because it provides fast lookups.
AlphabetSpec | |
|
alphabetSpec :: Alphabet -> AlphabetSpec Source #
Get the alphabet specification for a given alphabet.
alphabetDescription :: Alphabet -> String Source #
Verbose alphabet name.