Validator type doesn't allow capture of external variables
Opened this issue · 0 comments
wellcaffeinated commented
Since type Validator<T> = fn(&T) -> bool;
, i can't do something like:
let existing_filenames = read_dir(...);
Readline::default()
.title("Name new file:")
.validator(|name| !existing_filenames.contains(name.to_string()), |name| format!("File {} already exists", name))
.prompt()?
.run()?;
Suggest swapping this to something like type Validator<T> = Box<dyn Fn(&T) -> bool>;