MADARA
3.4.1
CompiledExpression.h
Go to the documentation of this file.
1
#ifndef _MADARA_COMPILED_EXPRESSION_H_
2
#define _MADARA_COMPILED_EXPRESSION_H_
3
4
#ifndef _MADARA_NO_KARL_
5
14
#include <string>
15
#include "madara/MadaraExport.h"
16
#include "
madara/expression/ExpressionTree.h
"
17
18
namespace
madara
19
{
20
namespace
expression
21
{
22
class
SystemCallEval
;
23
}
24
namespace
knowledge
25
{
26
class
ThreadSafeContext;
27
class
KnolwedgeBaseImpl;
28
class
Variables;
29
class
KnowledgeBase;
30
class
Function;
31
36
class
MADARA_EXPORT
CompiledExpression
37
{
38
public
:
39
// class KnowledgeBaseImpl;
40
friend
class
ThreadSafeContext
;
41
friend
class
KnowledgeBaseImpl
;
42
friend
class
Variables
;
43
friend
class
KnowledgeBase
;
44
friend
class
expression::SystemCallEval
;
45
friend
class
Function
;
46
50
CompiledExpression
();
51
56
CompiledExpression
(
const
CompiledExpression
& ce);
57
61
~
CompiledExpression
();
62
67
void
operator=(
const
CompiledExpression
& ce);
68
72
expression::ComponentNode
* get_root(
void
);
73
74
private
:
76
std::string
logic
;
77
79
madara::expression::ExpressionTree
expression
;
80
};
81
}
82
}
83
84
#endif
// _MADARA_NO_KARL_
85
86
#endif
// _MADARA_COMPILED_EXPRESSION_H_
ExpressionTree.h
madara::expression::ComponentNode
An abstract base class defines a simple abstract implementation of an expression tree node.
Definition:
ComponentNode.h:37
madara::expression::ExpressionTree
Encapsulates a MADARA KaRL expression into an evaluatable tree.
Definition:
ExpressionTree.h:29
madara::expression::SystemCallEval
Evaluates a knowledge::KnowledgeRecord and returns the evaluation result.
Definition:
SystemCallEval.h:33
madara::knowledge::CompiledExpression
Compiled, optimized KaRL logic.
Definition:
CompiledExpression.h:37
madara::knowledge::CompiledExpression::logic
std::string logic
the logic that was compiled
Definition:
CompiledExpression.h:76
madara::knowledge::CompiledExpression::expression
madara::expression::ExpressionTree expression
the expression tree
Definition:
CompiledExpression.h:79
madara::knowledge::Function
This class stores a function definition.
Definition:
Functions.h:46
madara::knowledge::KnowledgeBaseImpl
This class provides a distributed knowledge base implementation.
Definition:
KnowledgeBaseImpl.h:38
madara::knowledge::KnowledgeBase
This class provides a distributed knowledge base to users.
Definition:
KnowledgeBase.h:45
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::knowledge::Variables
Provides an interface for external functions into the MADARA KaRL variable settings.
Definition:
Variables.h:53
madara::knowledge::tags::string
constexpr string_t string
Definition:
KnowledgeRecord.h:56
madara::knowledge
Provides functions and classes for the distributed knowledge base.
Definition:
AggregateFilter.h:33
madara
Copyright(c) 2020 Galois.
Definition:
AggregateFilter.h:31
include
madara
knowledge
CompiledExpression.h
Generated on Sat Jan 20 2024 00:40:26 for MADARA by
1.9.1