added join_column_index and inverse_join_column_index to object and table classes
This commit is contained in:
@@ -10,8 +10,8 @@ const attribute& object::create_attribute(std::string name, const std::shared_pt
|
||||
return obj->attributes_.emplace_back(std::move(attr));
|
||||
}
|
||||
|
||||
attribute* object::primary_key_attribute() const {
|
||||
return pk_attribute_;
|
||||
const attribute* object::primary_key_attribute() const {
|
||||
return pk_column_index_ != -1 ? &attributes_.at(pk_column_index_) : nullptr;
|
||||
}
|
||||
|
||||
const utils::identifier& object::primary_key() const {
|
||||
@@ -19,7 +19,19 @@ const utils::identifier& object::primary_key() const {
|
||||
}
|
||||
|
||||
bool object::has_primary_key() const {
|
||||
return pk_attribute_ != nullptr;
|
||||
return pk_column_index_ != -1;
|
||||
}
|
||||
|
||||
bool object::is_relation_object() const {
|
||||
return join_column_index_ != -1 && inverse_join_column_index_ != -1;
|
||||
}
|
||||
|
||||
const attribute * object::join_attribute() const {
|
||||
return join_column_index_ != -1 ? &attributes_.at(join_column_index_) : nullptr;
|
||||
}
|
||||
|
||||
const attribute * object::inverse_join_attribute() const {
|
||||
return inverse_join_column_index_ != -1 ? &attributes_.at(inverse_join_column_index_) : nullptr;
|
||||
}
|
||||
|
||||
const std::string& object::name() const {
|
||||
@@ -38,7 +50,7 @@ size_t object::attribute_count() const {
|
||||
return attributes_.size();
|
||||
}
|
||||
|
||||
const std::list<attribute>& object::attributes() const {
|
||||
const std::vector<attribute>& object::attributes() const {
|
||||
return attributes_;
|
||||
}
|
||||
|
||||
@@ -50,7 +62,7 @@ size_t object::constraint_count() const {
|
||||
return constraints_.size();
|
||||
}
|
||||
|
||||
const std::list<restriction>& object::constraints() const {
|
||||
const std::vector<restriction>& object::constraints() const {
|
||||
return constraints_;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user