relation_completer progress

This commit is contained in:
Sascha Kühl
2025-07-01 17:13:52 +02:00
parent 5a7ab5d4d0
commit 38cbffc18b
11 changed files with 153 additions and 32 deletions
+2
View File
@@ -1,5 +1,7 @@
#include "matador/object/relation_endpoint.hpp"
#include "matador/object/schema_node.hpp"
namespace matador::object {
relation_endpoint::relation_endpoint(std::string field_name, relation_type type, const std::shared_ptr<schema_node> &node)
: field_name_(std::move(field_name))
+7 -3
View File
@@ -3,11 +3,11 @@
#include "matador/object/schema_node.hpp"
namespace matador::object {
schema_node::schema_node(schema &tree)
schema_node::schema_node(object::schema &tree)
: schema_(tree) {
}
schema_node::schema_node(schema &tree, std::string name)
schema_node::schema_node(object::schema &tree, std::string name)
: schema_(tree)
, first_child_(std::shared_ptr<schema_node>(new schema_node(tree)))
, last_child_(std::shared_ptr<schema_node>(new schema_node(tree)))
@@ -16,7 +16,7 @@ schema_node::schema_node(schema &tree, std::string name)
last_child_->previous_sibling_ = first_child_;
}
std::shared_ptr<schema_node> schema_node::make_null_node(schema &tree) {
std::shared_ptr<schema_node> schema_node::make_null_node(object::schema &tree) {
auto node = std::shared_ptr<schema_node>(new schema_node(tree));
node->info_ = std::make_unique<null_info>(node, std::shared_ptr<attribute_definition>{});
@@ -40,6 +40,10 @@ void schema_node::update_name(const std::string& name) {
info_->reference_column()->name(name);
}
const object::schema& schema_node::schema() const {
return schema_;
}
schema_node::node_ptr schema_node::next() const {
// if we have a child, child is the next iterator to return
// (if we don't do iterate over the siblings)