26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_FUNCTION_H
27 #define __TERRALIB_DATAACCESS_INTERNAL_FUNCTION_H
60 Function(
const std::string& name) : m_name(name) {}
79 const std::string&
getName()
const {
return m_name; };
#define TE_DEFINE_VISITABLE
This is an abstract class that models a query expression.
A class that models a Function expression.
void add(Expression *arg)
It adds the argument to the function list of arguments.
Function(const Function &rhs)
Copy constructor.
Function & operator=(const Function &rhs)
virtual ~Function()
Virtual Destructor.
const std::string & getName() const
It returns the function name.
Expression * getArg(std::size_t i) const
It returns the i-th function argument.
std::string m_name
The function name. May be an operator symbol or just a regular name like ST_Intersects.
Expression * clone() const
It creates a new copy of this expression.
std::vector< Expression * > m_args
The list of arguments.
std::size_t getNumArgs() const
It returns the number of arguments informed to the function.
TE_DEFINE_VISITABLE Function(const std::string &name)
Constructor.
Expression * operator[](std::size_t i) const
It returns the i-th function argument.
Auxiliary classes and functions to serialize filter expressions from a XML document.
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.