#include #include #include #include namespace DB { struct Settings; namespace ErrorCodes { extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH; } namespace { AggregateFunctionPtr createAggregateFunctionGroupArrayInsertAt( const std::string & name, const DataTypes & argument_types, const Array & parameters, const Settings *) { assertBinary(name, argument_types); if (argument_types.size() != 2) throw Exception("Aggregate function groupArrayInsertAt requires two arguments.", ErrorCodes::NUMBER_OF_ARGUMENTS_DOESNT_MATCH); return std::make_shared(argument_types, parameters); } } void registerAggregateFunctionGroupArrayInsertAt(AggregateFunctionFactory & factory) { factory.registerFunction("groupArrayInsertAt", createAggregateFunctionGroupArrayInsertAt); } }