| souffle
    2.0.2-371-g6315b36
    | 
Operator that represents an extrinsic (user-defined) functor. More...
#include <UserDefinedOperator.h>


| Public Member Functions | |
| UserDefinedOperator * | clone () const override | 
| Create a clone (i.e.  More... | |
| const std::vector< TypeAttribute > & | getArgsTypes () const | 
| Get types of arguments.  More... | |
| const std::string & | getName () const | 
| Get operator name.  More... | |
| TypeAttribute | getReturnType () const | 
| Get return type.  More... | |
| bool | isStateful () const | 
| Is functor stateful?  More... | |
| UserDefinedOperator (std::string n, std::vector< TypeAttribute > argsTypes, TypeAttribute returnType, bool stateful, VecOwn< Expression > args) | |
|  Public Member Functions inherited from souffle::ram::AbstractOperator | |
| AbstractOperator (VecOwn< Expression > args) | |
| void | apply (const NodeMapper &map) override | 
| Apply the mapper to all child nodes.  More... | |
| std::vector< Expression * > | getArguments () const | 
| Get argument values.  More... | |
| std::vector< const Node * > | getChildNodes () const override | 
| Obtain list of all embedded child nodes.  More... | |
|  Public Member Functions inherited from souffle::ram::Node | |
| bool | operator!= (const Node &other) const | 
| Inequality check for two RAM nodes.  More... | |
| bool | operator== (const Node &other) const | 
| Equivalence check for two RAM nodes.  More... | |
| virtual void | rewrite (const Node *oldNode, Own< Node > newNode) | 
| Rewrite a child node.  More... | |
| virtual | ~Node ()=default | 
| Protected Member Functions | |
| bool | equal (const Node &node) const override | 
| Equality check for two RAM nodes.  More... | |
| void | print (std::ostream &os) const override | 
| Print RAM node.  More... | |
| Protected Attributes | |
| const std::vector< TypeAttribute > | argsTypes | 
| Argument types.  More... | |
| const std::string | name | 
| Name of user-defined operator.  More... | |
| const TypeAttribute | returnType | 
| Return type.  More... | |
| const bool | stateful | 
| Stateful.  More... | |
|  Protected Attributes inherited from souffle::ram::AbstractOperator | |
| VecOwn< Expression > | arguments | 
| Arguments of user defined operator.  More... | |
Operator that represents an extrinsic (user-defined) functor.
Definition at line 43 of file UserDefinedOperator.h.
| 
 | inline | 
| 
 | inlineoverridevirtual | 
Create a clone (i.e.
deep copy) of this node
Implements souffle::ram::Expression.
Definition at line 72 of file UserDefinedOperator.h.
| 
 | inlineoverrideprotectedvirtual | 
Equality check for two RAM nodes.
Default action is that nothing needs to be checked.
Reimplemented from souffle::ram::AbstractOperator.
Definition at line 92 of file UserDefinedOperator.h.
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
Is functor stateful?
Definition at line 68 of file UserDefinedOperator.h.
References souffle::ram::Expression::clone().

| 
 | inlineoverrideprotectedvirtual | 
| 
 | protected | 
Argument types.
Definition at line 102 of file UserDefinedOperator.h.
| 
 | protected | 
Name of user-defined operator.
Definition at line 99 of file UserDefinedOperator.h.
Referenced by UserDefinedOperator().
| 
 | protected | 
Return type.
Definition at line 105 of file UserDefinedOperator.h.
| 
 | protected | 
Stateful.
Definition at line 108 of file UserDefinedOperator.h.
 1.8.17
 1.8.17