souffle  2.0.2-371-g6315b36
Public Member Functions
souffle::profile::NonRecursiveRelationTimingProcessor Class Reference

Non-Recursive Relation Number Profile Event Processor. More...

#include <EventProcessor.h>

Inheritance diagram for souffle::profile::NonRecursiveRelationTimingProcessor:
Inheritance graph
Collaboration diagram for souffle::profile::NonRecursiveRelationTimingProcessor:
Collaboration graph

Public Member Functions

 NonRecursiveRelationTimingProcessor ()
 
void process (ProfileDatabase &db, const std::vector< std::string > &signature, va_list &args) override
 process event input More...
 
- Public Member Functions inherited from souffle::profile::EventProcessor
virtual ~EventProcessor ()=default
 

Detailed Description

Non-Recursive Relation Number Profile Event Processor.

Definition at line 304 of file EventProcessor.h.

Constructor & Destructor Documentation

◆ NonRecursiveRelationTimingProcessor()

souffle::profile::NonRecursiveRelationTimingProcessor::NonRecursiveRelationTimingProcessor ( )
inline

Definition at line 306 of file EventProcessor.h.

306  {"program", "relation", relation, "num-tuples"}, size);
307  db.addTextEntry({"program", "relation", relation, "source-locator"}, srcLocator);
308  db.addDurationEntry({"program", "relation", relation, "runtime"}, start, end);

References relation.

Member Function Documentation

◆ process()

void souffle::profile::NonRecursiveRelationTimingProcessor::process ( ProfileDatabase &  db,
const std::vector< std::string > &  signature,
va_list &  args 
)
inlineoverridevirtual

process event input

Reimplemented from souffle::profile::EventProcessor.

Definition at line 310 of file EventProcessor.h.

315  : public EventProcessor {
316 public:
317  NonRecursiveRelationNumberProcessor() {
318  EventProcessorSingleton::instance().registerEventProcessor("@n-nonrecursive-relation", this);
319  }
320  /** process event input */
321  void process(ProfileDatabase& db, const std::vector<std::string>& signature, va_list& args) override {
322  const std::string& relation = signature[1];
323  const std::string& srcLocator = signature[2];

The documentation for this class was generated from the following file:
TCB_SPAN_NAMESPACE_NAME::detail::size
constexpr auto size(const C &c) -> decltype(c.size())
Definition: span.h:198
relation
Relation & relation
Definition: Reader.h:130
souffle::profile::NonRecursiveRelationTimingProcessor::process
void process(ProfileDatabase &db, const std::vector< std::string > &signature, va_list &args) override
process event input
Definition: EventProcessor.h:310
souffle::profile::EventProcessorSingleton::registerEventProcessor
void registerEventProcessor(const std::string &keyword, EventProcessor *processor)
register an event processor with its keyword
Definition: EventProcessor.h:76
souffle::profile::EventProcessorSingleton::instance
static EventProcessorSingleton & instance()
get instance
Definition: EventProcessor.h:70