///|
pub fn wasm_init() -> String {
"MoonBio WASM module ready"
}
///|
pub fn demo_global_alignment() -> String {
let result = @align.needleman_wunsch("GATTACA", "GCATGCU", 1, -1, -1)
"score=\{result.score};a=\{result.alignment_a};b=\{result.alignment_b}"
}
///|
pub fn demo_msa() -> String {
let result = @align.progressive_msa_result(
["GATTACA", "GCATGCU", "GACTACA"],
1,
-1,
-1,
)
"consensus=\{result.consensus};count=\{result.aligned_sequences.length()}"
}
///|
pub fn demo_fasta_summary() -> String {
match @parser.fasta_summary(">seq1\nGATTACA\n>seq2\nGACTATA\n") {
Ok(stats) => "records=\{stats.record_count};bases=\{stats.total_bases}"
Err(msg) => "error=\{msg}"
}
}
///|
fn main {
ignore(wasm_init())
}