pub trait IsState<T: IsResolvedToken, O: IsOrdering> {
type Error;
// Required methods
fn update(&mut self, token: &StackEntry<T, O>);
fn proccess_closed(&mut self, token: &mut Spanned<T>);
fn delete_closed_ordering(&mut self, ordering: Spanned<O>);
fn no_ordering_found(&self) -> Spanned<Self::Error>;
}