1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
use super::{
evaluate,
reorder,
tokenize,
ElesOption
};
use anyhow::Result;
pub fn solve_with<F>(input: &str, literal_to_bool: F, eles_option: ElesOption) -> Result<bool>
where
F: Fn(&str) -> Result<bool>
{
let tokens = tokenize(input, eles_option)?;
let tokens = reorder(tokens)?;
let r = evaluate(tokens, literal_to_bool)?;
Ok(r)
}