2010-06-24 19:12:10 +00:00
|
|
|
#ifndef DBMS_PARSERS_ASTFUNCTION_H
|
|
|
|
#define DBMS_PARSERS_ASTFUNCTION_H
|
|
|
|
|
|
|
|
#include <DB/Parsers/IAST.h>
|
2011-08-09 19:19:00 +00:00
|
|
|
#include <DB/Functions/IFunction.h>
|
2010-06-24 19:12:10 +00:00
|
|
|
|
|
|
|
|
|
|
|
namespace DB
|
|
|
|
{
|
|
|
|
|
|
|
|
/** Применение функции или оператора
|
|
|
|
*/
|
|
|
|
class ASTFunction : public IAST
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/// имя функции
|
|
|
|
String name;
|
2011-08-13 21:05:18 +00:00
|
|
|
/// аргументы
|
2010-06-24 19:12:10 +00:00
|
|
|
ASTPtr arguments;
|
|
|
|
|
2011-08-09 19:19:00 +00:00
|
|
|
/// сама функция
|
|
|
|
FunctionPtr function;
|
2011-08-12 18:27:39 +00:00
|
|
|
/// типы возвращаемых значений
|
|
|
|
DataTypes return_types;
|
2011-08-13 21:05:18 +00:00
|
|
|
/// номера столбцов возвращаемых значений
|
|
|
|
ColumnNumbers return_column_numbers;
|
2011-08-09 19:19:00 +00:00
|
|
|
|
2010-06-25 16:36:13 +00:00
|
|
|
ASTFunction() {}
|
2011-08-13 21:05:18 +00:00
|
|
|
ASTFunction(StringRange range_) : IAST(range_) {}
|
2011-08-09 19:19:00 +00:00
|
|
|
|
|
|
|
/** Получить текст, который идентифицирует этот элемент. */
|
|
|
|
String getID() { return "Function_" + name; }
|
2010-06-24 19:12:10 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|