pub fn parallel_generate_save_examples<S>(
grammar_string: String,
quantity: u32,
start: String,
path: S,
name_format: String,
config: &GeneratorConfig,
)
Expand description
Generate and save a number of examples with the grammar,start rule and config provided
ⓘ
use std::path::Path;
use mo::config::GeneratorConfig;
use mo::parallel_generate_save_examples;
// Default configuration for the generator
let mut config: GeneratorConfig = Default::default();
// Grammar string
let mut grammar = r#"
language = {"Rust" | "Python" | "Go" | "Java" | "PHP" | "Haskell"}
one = {"1"}
daysNumber = {one ~ " day" | !one ~ ASCII_NONZERO_DIGIT ~ " days"}
sentence = {"I have been programming in " ~ language ~ " for " ~ daysNumber ~ "."}
"#;
// Folder to save the examples
let path = Path::new("./my-examples/");
let template_name = "relevant-example-{}.txt".to_string();
// Generate and save the examples
let results = parallel_generate_save_examples(
grammar.to_string(), // The grammar
5, // Quantity of examples
"sentence".to_string(), // Start rule
path, // The folder to save the examples
template_name, // The name of the files saved
&config, // Config of the generator
);