2016-04-18 14:31:32 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <DB/Core/Block.h>
|
|
|
|
#include <DB/Core/ColumnNumbers.h>
|
|
|
|
|
|
|
|
namespace DB
|
|
|
|
{
|
|
|
|
|
|
|
|
namespace Conditional
|
|
|
|
{
|
|
|
|
|
2016-08-18 14:25:02 +00:00
|
|
|
class NullMapBuilder;
|
|
|
|
|
2016-04-18 14:31:32 +00:00
|
|
|
struct NumericPerformer
|
|
|
|
{
|
|
|
|
/// Perform a multiIf function for numeric branch (then, else) arguments
|
|
|
|
/// that may have either scalar types or array types.
|
2016-08-18 14:25:02 +00:00
|
|
|
/// For the meaning of the builder parameter, see the FunctionMultiIf::perform() declaration.
|
|
|
|
static bool perform(Block & block, const ColumnNumbers & args, size_t result, NullMapBuilder & builder);
|
2016-04-18 14:31:32 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|