MCPcopy Create free account
hub / github.com/IfcOpenShell/IfcOpenShell / pushPage

Method pushPage

src/ifcparse/IfcParse.cpp:1401–1418  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1399}
1400
1401void IfcParse::InstanceStreamer::pushPage(const std::string& page)
1402{
1403 stream_->pushNextPage(page);
1404 if (good_ == file_open_status::NO_HEADER) {
1405 header_ = new IfcParse::IfcSpfHeader(lexer_);
1406 if (header_->tryRead() && header_->file_schema()->schema_identifiers().size() == 1) {
1407 try {
1408 schema_ = IfcParse::schema_by_name(header_->file_schema()->schema_identifiers().front());
1409 good_ = file_open_status::SUCCESS;
1410 } catch (const IfcParse::IfcException&) {
1411 }
1412 }
1413 storage_.file = nullptr;
1414 storage_.schema = schema_;
1415 storage_.tokens = lexer_;
1416 storage_.references_to_resolve = &references_to_resolve_;
1417 }
1418}
1419
1420IfcParse::InstanceStreamer::InstanceStreamer()
1421 : stream_(new FileReader(FileReader::caller_fed_tag{}))

Callers 2

stream2Function · 0.95
feedMethod · 0.80

Calls 6

schema_by_nameFunction · 0.85
tryReadMethod · 0.80
schema_identifiersMethod · 0.80
pushNextPageMethod · 0.45
sizeMethod · 0.45
file_schemaMethod · 0.45

Tested by

no test coverage detected