///|
/// Prosite Demo - Demonstrates protein motif database search.
fn main {
println("=== Prosite Demo ===")
let patterns = @bio.prosite_create_example_patterns()
println("Loaded \{patterns.length()} Prosite patterns")
let pattern = @bio.prosite_get_pattern("PS00001")
match pattern {
Some(p) => println("Pattern PS00001: \{p.name} - \{p.pattern}")
None => println("Pattern PS00001 not found")
}
println("")
println("Searching for PKC phosphorylation site ([ST]-X-[RK]):")
let matches = @bio.prosite_search("[ST]-X-[RK]", "AASTKKST")
println(" Found \{matches.length()} matches")
println("")
println("Scanning sequence with all patterns:")
let seq = "AASTKKSTGXXGKKST"
let scan_results = @bio.prosite_scan(seq, patterns)
println(" Sequence: \{seq}")
println(" Found \{scan_results.length()} motif matches")
println("")
println("Prosite entry:")
let entry = @bio.prosite_create_example_entry()
println(" Accession: \{entry.accession}")
println(" Name: \{entry.name}")
println(" Pattern: \{entry.pattern}")
}