use rustam::SpellCorrector;
fn main() {
let sc = SpellCorrector::new();
println!("=== Known word check ===");
let words = ["کتاب", "مدرسه", "xyz_nonexistent", "ایران"];
for w in &words {
println!(" {:20} known={}", w, sc.known(w));
}
println!("\n=== Probability ===");
let freq_words = ["و", "کتاب", "آتشفشان", "xyz"];
for w in &freq_words {
println!(" {:20} p={:.8}", w, sc.probability(w));
}
println!("\n=== Correction ===");
let misspelled = [
"کتاب", "مدرسه", "کتابها", ];
for w in &misspelled {
println!(" {:20} → {}", w, sc.correction(w));
}
println!("\n=== Candidates for 'کتاب' ===");
let cands = sc.candidates("کتاب");
println!(" {:?}", cands);
println!("\n=== Edits-1 sample for 'در' ===");
let mut edits: Vec<String> = sc.edits1("در").into_iter().collect();
edits.sort();
println!(" {} variants, first 10: {:?}", edits.len(), &edits[..edits.len().min(10)]);
}