souffle  2.0.2-371-g6315b36
CellInterface.h
Go to the documentation of this file.
1 /*
2  * Souffle - A Datalog Compiler
3  * Copyright (c) 2016, The Souffle Developers. All rights reserved
4  * Licensed under the Universal Permissive License v 1.0 as shown at:
5  * - https://opensource.org/licenses/UPL
6  * - <souffle root>/licenses/SOUFFLE-UPL.txt
7  */
8 
9 #pragma once
10 
11 #include <chrono>
12 #include <string>
13 
14 namespace souffle {
15 namespace profile {
16 
18 public:
19  virtual std::string toString(int precision) const = 0;
20 
21  virtual double getDoubleVal() const = 0;
22 
23  virtual long getLongVal() const = 0;
24 
25  virtual std::string getStringVal() const = 0;
26 
27  virtual std::chrono::microseconds getTimeVal() const = 0;
28 
29  virtual ~CellInterface() = default;
30 };
31 
32 } // namespace profile
33 } // namespace souffle
souffle::profile::CellInterface::getLongVal
virtual long getLongVal() const =0
souffle::profile::CellInterface::getTimeVal
virtual std::chrono::microseconds getTimeVal() const =0
souffle::profile::CellInterface::getStringVal
virtual std::string getStringVal() const =0
souffle::profile::CellInterface::toString
virtual std::string toString(int precision) const =0
souffle::profile::CellInterface
Definition: CellInterface.h:17
souffle::profile::CellInterface::~CellInterface
virtual ~CellInterface()=default
souffle::profile::CellInterface::getDoubleVal
virtual double getDoubleVal() const =0
souffle
Definition: AggregateOp.h:25