MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / BitmapTableScan

Class BitmapTableScan

src/jrd/recsrc/RecordSource.h:215–242  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

213 };
214
215 class BitmapTableScan final : public RecordStream
216 {
217 struct Impure : public RecordSource::Impure
218 {
219 RecordBitmap** irsb_bitmap;
220 };
221
222 public:
223 BitmapTableScan(CompilerScratch* csb, const Firebird::string& alias,
224 StreamType stream, jrd_rel* relation,
225 InversionNode* inversion, double selectivity);
226
227 void close(thread_db* tdbb) const override;
228
229 void getChildren(Firebird::Array<const RecordSource*>& children) const override;
230
231 void print(thread_db* tdbb, Firebird::string& plan,
232 bool detailed, unsigned level, bool recurse) const override;
233
234 protected:
235 void internalOpen(thread_db* tdbb) const override;
236 bool internalGetRecord(thread_db* tdbb) const override;
237
238 private:
239 const Firebird::string m_alias;
240 jrd_rel* const m_relation;
241 NestConst<InversionNode> const m_inversion;
242 };
243
244 class IndexTableScan final : public RecordStream
245 {

Callers 1

generateRetrievalMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected