some improvements to dump schema

This commit is contained in:
2026-01-07 09:32:57 +01:00
parent c6747074f5
commit 0bf945cd13
3 changed files with 9 additions and 10 deletions
+4 -2
View File
@@ -101,6 +101,7 @@ utils::result<attribute*, utils::error> basic_repository::primary_key_attribute(
}
void basic_repository::dump(std::ostream &os) const {
os << name_ << std::endl;
for (const auto &node : *this) {
dump(os, node);
}
@@ -108,15 +109,16 @@ void basic_repository::dump(std::ostream &os) const {
}
void basic_repository::dump( std::ostream& os, const repository_node& node ) {
os << "node [" << node.name() << "] (" << node.type_index().name() << ")\n";
os << "node [" << node.name() << "]\n";
for (auto it = node.info().endpoint_begin(); it != node.info().endpoint_end(); ++it) {
os << " " << node.name() << "::" << it->second->field_name() << " (" << it->second->type_name() << ")";
if (it->second->foreign_endpoint()) {
os << " <---> " << it->second->node().name() << "::" << it->second->foreign_endpoint()->field_name() << " (" << it->second->foreign_endpoint()->type_name() << ")\n";
} else {
os << " -> " << it->second->node().name() << " (type: " << it->second->node().type_index().name() << ")\n";
os << " -> " << it->second->node().name() << " (type: " << it->second->node().name() << ")\n";
}
}
os << "\n";
}
utils::result<repository_node*, utils::error> basic_repository::attach_node(repository_node *node, const std::string &parent) {