#pragma once #include #include namespace DB { /* numbers(limit), numbers_mt(limit) * - the same as SELECT number FROM system.numbers LIMIT limit. * Used for testing purposes, as a simple example of table function. */ template class TableFunctionNumbers : public ITableFunction { public: static constexpr auto name = multithreaded ? "numbers_mt" : "numbers"; std::string getName() const override { return name; } private: StoragePtr executeImpl(const ASTPtr & ast_function, const Context & context, const std::string & table_name) const override; UInt64 evaluateArgument(const Context & context, ASTPtr & argument) const; }; }