X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=database-builder.cpp;h=d883451dd669e1b2bae6a444bb2c02987d02e13b;hb=30305b2e29b28107a311850d40db54c6726f726c;hp=42fc186bf3689792f6bd85519303c5134c99a4ed;hpb=72432f2b4b14a144f7d30c2326273f816e0219ae;p=plocate diff --git a/database-builder.cpp b/database-builder.cpp index 42fc186..d883451 100644 --- a/database-builder.cpp +++ b/database-builder.cpp @@ -56,7 +56,7 @@ private: vector pending_deltas; - uint32_t last_block_end, last_docid = -1; + uint32_t last_docid = -1; }; void PostingListBuilder::add_docid(uint32_t docid) @@ -70,7 +70,7 @@ void PostingListBuilder::add_docid(uint32_t docid) // Very first docid. write_header(docid); ++num_docids; - last_block_end = last_docid = docid; + last_docid = docid; return; } @@ -79,7 +79,6 @@ void PostingListBuilder::add_docid(uint32_t docid) if (pending_deltas.size() == 128) { append_block(); pending_deltas.clear(); - last_block_end = docid; } ++num_docids; } @@ -191,7 +190,14 @@ public: return invindex[trgm] != nullptr; } size_t num_files_seen() const override { return num_files; } - PostingListBuilder &get_pl_builder(uint32_t trgm); + PostingListBuilder &get_pl_builder(uint32_t trgm) + { + if (invindex[trgm] == nullptr) { + invindex[trgm] = new PostingListBuilder; + } + return *invindex[trgm]; + } + size_t num_trigrams() const; std::string get_compressed_dir_times(); @@ -229,14 +235,6 @@ EncodingCorpus::~EncodingCorpus() } } -PostingListBuilder &EncodingCorpus::get_pl_builder(uint32_t trgm) -{ - if (invindex[trgm] == nullptr) { - invindex[trgm] = new PostingListBuilder; - } - return *invindex[trgm]; -} - void EncodingCorpus::add_file(string filename, dir_time dt) { ++num_files;