Files
sword_rs/src/main.rs
T
Greg Hellings c8dd1ce0f0 With a little help, we now have VerseKey
Went with a basic wrapper that cxx is able to handle for the bridge
between the languages, along with simple wrapper methods
2025-06-25 02:30:42 -05:00

52 lines
1.6 KiB
Rust

use rand::Rng;
use sword_rs::mgr::{Format, Mgr};
fn main() {
one_chapter();
// iterate();
}
fn one_chapter() {
let mut mgr = Mgr::new_with_format(Format::HTMLHref);
let mut module = mgr.get_module(&String::from("KJV"));
let mut key = module
.get_verse_key()
.expect("This was not a verse based module?!");
key.set_book_name(&String::from("John"));
key.set_chapter(3);
for verse in 1..=key.get_verse_max() {
key.set_verse(verse);
println!("{}: {}", key.get_short_text(), module.render_text());
}
}
fn iterate() {
let mut mgr = Mgr::new_with_format(Format::HTMLHref);
for mod_name in mgr.get_modules() {
let mut module = mgr.get_module(&mod_name);
// module.get_type();
println!(
"Module: {} which is a {}",
module.get_name(),
module.get_type().get_name()
);
if module.get_type() == sword_rs::module::Type::BiblicalTexts {
let random_number: i32 = rand::rng().random_range(1..=20);
let random_number_str = format!("John.3.{}", random_number);
module.set_key_text(&random_number_str);
module.set_skip_consecutive_links(true);
for i in 0..10 {
println!(
"Text John 3:{} is \"{}\"",
random_number + i,
module.render_text()
);
module.increment();
}
} else {
println!("This is not a Bible");
}
println!("==============================");
}
}