/// This implements [`ToTokensState`] for [`Expression`](`wagon_parser::parser::expression::Expression`).
///
/// For most use-cases, calling this method will output rust code that properly evaluates
/// to whatever final value the expression represents.
///
/// If any new attributes occur in the
/// expression, the provided `attr_fun` function (see [`ToTokensState`]) should register them with the state object.
use crateToTokensState;
use Rc;