bio 1.3.1

A bioinformatics library for Rust. This library provides implementations of many algorithms and data structures that are useful for bioinformatics, but also in other fields.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
WHITESPACE = _{ " " | "\t" | NEWLINE }

Tree = _{ SOI ~ (SubTree ~ Length? | Branch ) ~ ";" ~ EOI }
SubTree = { Leaf | Internal }
Leaf = { name }
Internal = { "(" ~ BranchSet ~ ")" ~ name? }
BranchSet = { Branch? ~ ("," ~ Branch?)* }
Length = _{ ":" ~ float }
Branch = { SubTree? ~ Length? }

safe = _{ !( ":" | "," | ";" | "(" | ")" | "[" | "]" | WHITESPACE ) ~ ANY }
name = { safe+ }
float = @{
    "-"?
    ~ ("0" | ASCII_NONZERO_DIGIT ~ ASCII_DIGIT*)
    ~ ("." ~ ASCII_DIGIT*)?
    ~ (^"e" ~ ("+" | "-")? ~ ASCII_DIGIT+)?
}