Make Base::data() private, file::add(..., id)

This commit is contained in:
Thomas Krijnen
2026-01-08 10:35:46 +01:00
parent f9c791de1b
commit f5b2358c2e
25 changed files with 1929 additions and 1957 deletions
-18
View File
@@ -404,12 +404,6 @@ public:
template<typename T>
IFC_PARSE_API bool has(void* storage, const IfcParse::declaration* decl, std::size_t identity, std::size_t index) const;
template<typename Visitor>
auto apply_visitor(void* storage, const IfcParse::declaration* decl, std::size_t identity, std::size_t index, Visitor&& visitor) const {
// @todo do we need visitation on all data/storage/attribute levels?
AttributeValue((IfcParse::impl::rocks_db_file_storage*)storage, identity, decl, (uint8_t) index).apply_visitor(std::forward<Visitor>(visitor));
}
#endif
};
@@ -508,18 +502,6 @@ class IFC_PARSE_API InstanceData {
#endif
}
template<typename Visitor>
auto apply_visitor(Visitor&& visitor, std::size_t index) const {
if (storage_) {
return storage_->apply_visitor(std::forward<Visitor>(visitor), index);
}
#ifdef IFOPSH_WITH_ROCKSDB
else {
return rocks_db_attribute_storage{}.apply_visitor(get_storage_of_type<IfcParse::impl::rocks_db_file_storage>(), declaration_, identity_, index, std::forward<Visitor>(visitor));
}
#endif
}
void toString(std::ostream&, bool upper = false) const;
};