MADARA
3.4.1
SystemCallEval.h
Go to the documentation of this file.
1
/* -*- C++ -*- */
2
#ifndef _MADARA_SYSTEM_CALL_EVAL_H_
3
#define _MADARA_SYSTEM_CALL_EVAL_H_
4
5
#ifndef _MADARA_NO_KARL_
6
15
#include <string>
16
#include <stdexcept>
17
#include "
madara/utility/StdInt.h
"
18
#include "
madara/expression/SystemCallNode.h
"
19
20
namespace
madara
21
{
22
namespace
expression
23
{
24
// Forward declaration.
25
class
Visitor;
26
32
class
SystemCallEval
:
public
SystemCallNode
33
{
34
public
:
38
SystemCallEval
(
madara::knowledge::ThreadSafeContext
& context,
39
const
ComponentNodes
& nodes);
40
44
virtual
~SystemCallEval
(
void
);
45
50
virtual
madara::knowledge::KnowledgeRecord
item
(
void
)
const
;
51
57
virtual
madara::knowledge::KnowledgeRecord
prune
(
bool
& can_change);
58
63
virtual
madara::knowledge::KnowledgeRecord
evaluate
(
64
const
madara::knowledge::KnowledgeUpdateSettings
& settings);
65
70
virtual
void
accept
(
Visitor
& visitor)
const
;
71
};
72
}
73
}
74
75
#endif
// _MADARA_NO_KARL_
76
77
#endif
/* _MADARA_SYSTEM_CALL_EVAL_H_ */
StdInt.h
SystemCallNode.h
madara::expression::SystemCallEval
Evaluates a knowledge::KnowledgeRecord and returns the evaluation result.
Definition:
SystemCallEval.h:33
madara::expression::SystemCallEval::~SystemCallEval
virtual ~SystemCallEval(void)
Destructor.
Definition:
SystemCallEval.cpp:17
madara::expression::SystemCallEval::item
virtual madara::knowledge::KnowledgeRecord item(void) const
Returns the value of the node.
Definition:
SystemCallEval.cpp:19
madara::expression::SystemCallEval::evaluate
virtual madara::knowledge::KnowledgeRecord evaluate(const madara::knowledge::KnowledgeUpdateSettings &settings)
Evaluates the expression tree.
Definition:
SystemCallEval.cpp:66
madara::expression::SystemCallEval::accept
virtual void accept(Visitor &visitor) const
Accepts a visitor subclassed from the Visitor class.
Definition:
SystemCallEval.cpp:98
madara::expression::SystemCallEval::SystemCallEval
SystemCallEval(madara::knowledge::ThreadSafeContext &context, const ComponentNodes &nodes)
Constructor.
Definition:
SystemCallEval.cpp:10
madara::expression::SystemCallEval::prune
virtual madara::knowledge::KnowledgeRecord prune(bool &can_change)
Prunes the expression tree of unnecessary nodes.
Definition:
SystemCallEval.cpp:28
madara::expression::SystemCallNode
Interface for a MADARA system call.
Definition:
SystemCallNode.h:25
madara::expression::Visitor
Abstract base class for all visitors to all classes that derive from ComponentNode.
Definition:
Visitor.h:93
madara::knowledge::KnowledgeRecord
This class encapsulates an entry in a KnowledgeBase.
Definition:
KnowledgeRecord.h:88
madara::knowledge::KnowledgeUpdateSettings
Settings for applying knowledge updates.
Definition:
KnowledgeUpdateSettings.h:24
madara::knowledge::ThreadSafeContext
This class stores variables and their values for use by any entity needing state information in a thr...
Definition:
ThreadSafeContext.h:76
madara::expression::ComponentNodes
std::deque< ComponentNode * > ComponentNodes
a vector of Component Nodes
Definition:
ComponentNode.h:100
madara
Copyright(c) 2020 Galois.
Definition:
AggregateFilter.h:31
include
madara
expression
SystemCallEval.h
Generated on Sat Jan 20 2024 00:40:26 for MADARA by
1.9.1