| 201 | } |
| 202 | |
| 203 | const Header_section_schema::file_description* IfcParse::IfcSpfHeader::file_description() const { |
| 204 | if (file_description_ == nullptr) { |
| 205 | std::visit([this](auto& m) { |
| 206 | if constexpr (std::is_same_v<std::decay_t<decltype(m)>, impl::rocks_db_file_storage>) { |
| 207 | file_description_ = new Header_section_schema::file_description(rocks_db_attribute_storage{}); |
| 208 | } else if constexpr (std::is_same_v<std::decay_t<decltype(m)>, impl::in_memory_file_storage>) { |
| 209 | file_description_ = new Header_section_schema::file_description(in_memory_attribute_storage(Header_section_schema::file_description::Class().attribute_count())); |
| 210 | } |
| 211 | }, file_->storage_); |
| 212 | file_description_->file_ = file_; |
| 213 | } |
| 214 | return file_description_; |
| 215 | } |
| 216 | |
| 217 | const Header_section_schema::file_name* IfcParse::IfcSpfHeader::file_name() const { |
| 218 | if (file_name_ == nullptr) { |
no test coverage detected