jmespath.cpp
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
|
The AbstractNode class is the common interface class for all AST node types. More...
#include <abstractnode.h>
Public Member Functions | |
AbstractNode ()=default | |
Constructs an AbstractNode object. More... | |
AbstractNode (const AbstractNode &)=default | |
Copy-constructs an AbstractNode object. More... | |
virtual | ~AbstractNode () |
Destroys the AbstractNode object. More... | |
AbstractNode & | operator= (const AbstractNode &)=default |
Copy-assigns the other object to this object. More... | |
virtual void | accept (interpreter::AbstractVisitor *visitor) const =0 |
Accepts the given visitor object. More... | |
The AbstractNode class is the common interface class for all AST node types.
|
default |
Constructs an AbstractNode object.
|
default |
Copy-constructs an AbstractNode object.
|
virtual |
Destroys the AbstractNode object.
|
pure virtual |
Accepts the given visitor object.
Subclasses should implement this function by calling the visit method of the visitor with a pointer to the node object itself and the accept method of the node's member nodes with the visitor as the parameter.
[in] | visitor | An interpreter::AbstractVisitor object |
Implemented in jmespath::ast::VariantNode< VariantT >, jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >, jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >, jmespath::ast::ComparatorExpressionNode, jmespath::ast::IndexExpressionNode, jmespath::ast::AndExpressionNode, jmespath::ast::HashWildcardNode, jmespath::ast::OrExpressionNode, jmespath::ast::PipeExpressionNode, jmespath::ast::MultiselectHashNode, jmespath::ast::FunctionExpressionNode, jmespath::ast::MultiselectListNode, jmespath::ast::BinaryExpressionNode, jmespath::ast::SliceExpressionNode, jmespath::ast::ArrayItemNode, jmespath::ast::ExpressionArgumentNode, jmespath::ast::FilterExpressionNode, jmespath::ast::IdentifierNode, jmespath::ast::NotExpressionNode, jmespath::ast::RawStringNode, jmespath::ast::LiteralNode, jmespath::ast::ParenExpressionNode, jmespath::ast::FlattenOperatorNode, jmespath::ast::CurrentNode, and jmespath::ast::ListWildcardNode.
|
default |
Copy-assigns the other object to this object.