moddefault;pubusedefault::DefaultValidator;/// The syntax validation trait. Implementers of this trait will check to see if the current input
/// is incomplete and spans multiple lines
pubtraitValidator: Send {/// The action that will handle the current buffer as a line and return the corresponding validation
fnvalidate(&self, line:&str)-> ValidationResult;}#[derive(Clone, Copy)]/// Whether or not the validation shows the input was complete
pubenumValidationResult{/// An incomplete input which may need to span multiple lines to be complete
Incomplete,/// An input that is complete as-is
Complete,}