inline bool operator<(const name& lhs, const name& rhs) { return lhs.id() < rhs.id(); }
prune::result_type prune::operator()(const name& n) { m_used.insert(n.id()); return n.ptr(); }
void repr_printer::operator()(const name &n) { print_name("Name", n.id()); }