elynx-tree-0.0.1: Handle phylogenetic trees

Copyright(c) Dominik Schrempf 2019
LicenseGPL-3
Maintainerdominik.schrempf@gmail.com
Stabilityunstable
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

ELynx.Data.Tree.PhyloTree

Description

Creation date: Thu Jan 17 16:08:54 2019.

Phylogenetic nodes have a branch length and a label.

The easiest label type is Int: PhyloIntLabel.

Also, the ByteString label is needed often: PhyloByteStringLabel.

XXX: This is all too complicated. Maybe I should just define a standard tree object like > data PhyloTree a = Tree (PhyloLabel a) and that's it. Forget about type classes like Measurable, Named and so on.

Synopsis

Documentation

data PhyloLabel a Source #

A primitive label type for phylogenetic trees with a name, possibly a branch support value, and a Double branch length.

Constructors

PhyloLabel 

Fields

Instances
Named PhyloByteStringLabel Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Named PhyloIntLabel Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Eq a => Eq (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Methods

(==) :: PhyloLabel a -> PhyloLabel a -> Bool #

(/=) :: PhyloLabel a -> PhyloLabel a -> Bool #

Ord a => Ord (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Read a => Read (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Show a => Show (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Arbitrary a => Arbitrary (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

BranchSupportLabel (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

Measurable (PhyloLabel a) Source # 
Instance details

Defined in ELynx.Data.Tree.PhyloTree

type PhyloIntLabel = PhyloLabel Int Source #

Tree node with Int label.

type PhyloByteStringLabel = PhyloLabel ByteString Source #

Tree node with ByteString label. Important for parsing Newick files.

removeBrLen :: Tree (PhyloLabel a) -> Tree a Source #

Remove branch lengths from tree.