pub type Span<T, E> = Result<(usize, T, usize), E>;
A result type wrapping a token with start and end locations.