JODA  0.13.1 (59b41972)
JSON On-Demand Analysis
CacheExecutor.h
Go to the documentation of this file.
1 //
2 // Created by Nico Schäfer on 9/27/17.
3 //
4 
5 #ifndef JODA_CACHEEXECUTOR_H
6 #define JODA_CACHEEXECUTOR_H
7 
8 #include "IQueryExecutor.h"
9 
10 class CacheExecutor : public IQueryExecutor {
11  public:
12  explicit CacheExecutor(const joda::query::Query &q);
13  unsigned long estimatedWork(const joda::query::Query &q,
14  JSONContainer &cont) override;
15  std::shared_ptr<const DocIndex> execute(const joda::query::Query &q,
16  JSONContainer &cont) override;
17  std::string getName() const override;
19  std::shared_ptr<const DocIndex> &sel,
20  JSONContainer &cont) override;
21  std::unique_ptr<IQueryExecutor> duplicate() override;
22 
23  protected:
24  CacheExecutor(std::string predStr);
25  std::string predStr;
26 };
27 
28 #endif // JODA_CACHEEXECUTOR_H
Definition: CacheExecutor.h:10
unsigned long estimatedWork(const joda::query::Query &q, JSONContainer &cont) override
Definition: CacheExecutor.cpp:18
std::shared_ptr< const DocIndex > execute(const joda::query::Query &q, JSONContainer &cont) override
Definition: CacheExecutor.cpp:49
void alwaysAfterSelect(const joda::query::Query &q, std::shared_ptr< const DocIndex > &sel, JSONContainer &cont) override
Definition: CacheExecutor.cpp:86
std::unique_ptr< IQueryExecutor > duplicate() override
Definition: CacheExecutor.cpp:96
std::string predStr
Definition: CacheExecutor.h:25
CacheExecutor(const joda::query::Query &q)
Definition: CacheExecutor.cpp:12
std::string getName() const override
Definition: CacheExecutor.cpp:84
Definition: IQueryExecutor.h:15
Definition: JSONContainer.h:37
Definition: Query.h:24