#include "mkql_builtins_decimal.h" // Y_IGNORE namespace NKikimr { namespace NMiniKQL { namespace { template struct TPlus : public TSimpleArithmeticUnary> { static TOutput Do(TInput val) { return +val; } #ifndef MKQL_DISABLE_CODEGEN static Value* Gen(Value* arg, const TCodegenContext&, BasicBlock*&) { return arg; } #endif }; struct TDecimalPlus { static NUdf::TUnboxedValuePod Execute(const NUdf::TUnboxedValuePod& arg) { return arg; } #ifndef MKQL_DISABLE_CODEGEN static Value* Generate(Value* arg, const TCodegenContext&, BasicBlock*&) { return arg; } #endif }; } void RegisterPlus(IBuiltinFunctionRegistry& registry) { RegisterUnaryNumericFunctionOpt(registry, "Plus"); NDecimal::RegisterUnaryFunction(registry, "Plus"); RegisterFunctionUnOpt, NUdf::TDataType, TPlus, TUnaryArgsOpt>(registry, "Plus"); RegisterFunctionUnOpt, NUdf::TDataType, TPlus, TUnaryArgsOpt>(registry, "Plus"); } } // namespace NMiniKQL } // namespace NKikimr