- unsigned delta_indent = static_cast<const print_tree &>(c).delta_indent;
- exvector::const_iterator i = children.begin(), end = children.end();
- while (i != end) {
- i->print(c, level + delta_indent);
- ++i;
- }
+void symmetry::do_print_tree(const print_tree & c, unsigned level) const
+{
+ c.s << std::string(level, ' ') << class_name() << " @" << this
+ << std::hex << ", hash=0x" << hashvalue << ", flags=0x" << flags << std::dec
+ << ", type=";
+
+ switch (type) {
+ case none: c.s << "none"; break;
+ case symmetric: c.s << "symm"; break;
+ case antisymmetric: c.s << "anti"; break;
+ case cyclic: c.s << "cycl"; break;
+ default: c.s << "<unknown>"; break;
+ }