27 #include "../../common/STLUtils.h" 
   69   assert(i < m_args.size());
 
   75   assert(i < m_args.size());
 
   81   m_args.push_back(arg);
 
Expression * clone() const 
It creates a new copy of this expression. 
 
void FreeContents(boost::unordered_map< K, V * > &m)
This function can be applied to a map of pointers. It will delete each pointer in the map...
 
void Clone(const std::vector< T * > &src, std::vector< T * > &dst)
This function can be applied to a vector of pointers. 
 
virtual ~Function()
Virtual Destructor. 
 
Function & operator=(const Function &rhs)
 
std::string m_name
The function name. May be an operator symbol or just a regular name like ST_Intersects. 
 
std::size_t getNumArgs() const 
It returns the number of arguments informed to the function. 
 
Expression * getArg(std::size_t i) const 
It returns the i-th function argument. 
 
std::vector< Expression * > m_args
The list of arguments. 
 
A class that models a Function expression. 
 
TE_DEFINE_VISITABLE Function(const std::string &name)
Constructor. 
 
This is an abstract class that models a query expression. 
 
Expression * operator[](std::size_t i) const 
It returns the i-th function argument. 
 
A class that models a Function expression. 
 
void add(Expression *arg)
It adds the argument to the function list of arguments.