rosalind::RosalindResult [] [src]

type RosalindResult<T> = Result<T, RosalindError>;

Unified return type for all modules and methods of rosalind library

Examples

use rosalind::RosalindResult;
use rosalind::RosalindError::UnknownNucleotide;
use rosalind::dna::count_dna_nucleotides;
use rosalind::rna::transcribe_dna_into_rna;

fn wrapper<T, U>(method: &Fn(U) -> RosalindResult<T>, args: U) -> RosalindResult<T> {
  method(args)
}

let result = wrapper(&transcribe_dna_into_rna, "GATGGAACTTGACTACGTAAATT");
assert_eq!(result.unwrap(), "GAUGGAACUUGACUACGUAAAUU");

let result = wrapper(&count_dna_nucleotides, "Z");
assert_eq!(result.unwrap_err(), UnknownNucleotide('Z'));