casacore
|
#include <TableParseFunc.h>
Static Public Member Functions | |
static TableExprNode | makeFuncNode (TableParseQuery *, const String &name, const TableExprNodeSet &arguments, const Vector< int > &ignoreFuncs, const TableExprInfo &tabInfo, const TaQLStyle &) |
Make a function node. | |
static TableExprNode | makeUDFNode (TableParseQuery *, const String &name, const TableExprNodeSet &arguments, const TableExprInfo &tabInfo, const TaQLStyle &) |
Try to make a UDF function node for the given function name and arguments. | |
static TableExprFuncNode::FunctionType | findFunc (const String &name, uInt narguments, const Vector< Int > &ignoreFuncs) |
Find the function code belonging to a function name. | |
Class containing static functions to handle TaQL functions.
Internal
This class contains a few functions to recognize TaQL functions. A function name can be preceded by "shorthand.udflib." telling the table to operate on and the UDF shared library containing the function. Note that most functions are table agnostic, but a few (such as rowid()) are not. Also User Defined Functions (UDFs) can be table aware. Both shorthand and udflib are optional. If a single part is given, it is first tried as a shorthand.
It looks up the function name and creates a TableExprFuncNode object for it. If the function name is not standard, it is tried to create a TableExprUDFNode object. Otherwise an exception is thrown.
Definition at line 65 of file TableParseFunc.h.
|
static |
Find the function code belonging to a function name.
Functions to be ignored can be given (as function type values). If the function name is unknown, NRFUNC is returned.
|
static |
Make a function node.
The name is split into shorthand, udflib and function as explained in the synopsis.
|
static |
Try to make a UDF function node for the given function name and arguments.
The function name can contain "shorthand." and must contain "udflib.".