pub trait Parser<T> {
type Precedence: Ord;
type Delimiter: Delimiter;
type BinaryOperator;
type UnaryOperator;
type Term;
type Error;
// Required method
fn parse_token(
&self,
kind: T,
) -> Result<ParserElement<Self, T>, Self::Error>;
}