A set of traits implemented for various AST nodes, typically those used in AST fragments during macro expansion. The traits are not implemented exhaustively, only when actually necessary.
A newtype around an AST node that implements the traits above if the node implements them.
A utility trait to reduce boilerplate. Standard
Deref(Mut)cannot be reused due to coherence.
A trait for AST nodes having (or not having) attributes.
A trait for AST nodes having an ID.
A trait for AST nodes having a span.
A trait for AST nodes having (or not having) collected tokens.