pub trait PpAnn {
// Provided methods
fn nested(&self, _state: &mut State<'_>, _nested: Nested) { ... }
fn pre(&self, _state: &mut State<'_>, _node: AnnNode<'_>) { ... }
fn post(&self, _state: &mut State<'_>, _node: AnnNode<'_>) { ... }
}