pub trait Spanner {
fn next(&mut self, v: char) -> bool;
fn valid(&mut self) -> bool;
fn span<'b>(&mut self, reader: &mut &'b str) -> Option<&'b str> { ... }
}
pub trait Spanner {
fn next(&mut self, v: char) -> bool;
fn valid(&mut self) -> bool;
fn span<'b>(&mut self, reader: &mut &'b str) -> Option<&'b str> { ... }
}