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

Class ExternalTableScan

src/jrd/recsrc/RecordSource.h:310–338  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

308 };
309
310 class ExternalTableScan final : public RecordStream
311 {
312 struct Impure : public RecordSource::Impure
313 {
314 FB_UINT64 irsb_position;
315 };
316
317 public:
318 ExternalTableScan(CompilerScratch* csb, const Firebird::string& alias,
319 StreamType stream, jrd_rel* relation);
320
321 void close(thread_db* tdbb) const override;
322
323 bool refetchRecord(thread_db* tdbb) const override;
324 WriteLockResult lockRecord(thread_db* tdbb) const override;
325
326 void getChildren(Firebird::Array<const RecordSource*>& children) const override;
327
328 void print(thread_db* tdbb, Firebird::string& plan,
329 bool detailed, unsigned level, bool recurse) const override;
330
331 protected:
332 void internalOpen(thread_db* tdbb) const override;
333 bool internalGetRecord(thread_db* tdbb) const override;
334
335 private:
336 jrd_rel* const m_relation;
337 const Firebird::string m_alias;
338 };
339
340 class VirtualTableScan : public RecordStream
341 {

Callers 1

generateRetrievalMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected