implemented reference method
This commit is contained in:
parent
84af642f14
commit
b8df32bdf9
|
|
@ -36,7 +36,15 @@ std::string schema::name() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
utils::result<std::pair<std::string, std::string>, utils::error> schema::reference( const std::type_index& type_index ) const {
|
utils::result<std::pair<std::string, std::string>, utils::error> schema::reference( const std::type_index& type_index ) const {
|
||||||
return utils::ok(std::pair<std::string, std::string>{});
|
const auto result = find_node(type_index);
|
||||||
|
if (!result) {
|
||||||
|
return utils::failure(result.err());
|
||||||
|
}
|
||||||
|
if (!result->get()->basic_info().definition().has_primary_key()) {
|
||||||
|
return utils::failure(make_error( error_code::Failure, "Primary key not found" ));
|
||||||
|
}
|
||||||
|
|
||||||
|
return utils::ok(std::make_pair(result->get()->name(), result->get()->basic_info().definition().primary_key()->name()));
|
||||||
}
|
}
|
||||||
|
|
||||||
utils::result<std::shared_ptr<schema_node>, utils::error> schema::attach_node(const std::shared_ptr<schema_node> &node,
|
utils::result<std::shared_ptr<schema_node>, utils::error> schema::attach_node(const std::shared_ptr<schema_node> &node,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue