1//===----------------------------------------------------------------------===//
2// DuckDB
3//
4// duckdb/function/scalar/operators.hpp
5//
6//
7//===----------------------------------------------------------------------===//
8
9#pragma once
10
11#include "duckdb/function/function_set.hpp"
12#include "duckdb/function/scalar_function.hpp"
13#include "duckdb/function/built_in_functions.hpp"
14
15namespace duckdb {
16
17struct AddFun {
18 static ScalarFunction GetFunction(const LogicalType &type);
19 static ScalarFunction GetFunction(const LogicalType &left_type, const LogicalType &right_type);
20 static void RegisterFunction(BuiltinFunctions &set);
21};
22
23struct SubtractFun {
24 static ScalarFunction GetFunction(const LogicalType &type);
25 static ScalarFunction GetFunction(const LogicalType &left_type, const LogicalType &right_type);
26 static void RegisterFunction(BuiltinFunctions &set);
27};
28
29struct MultiplyFun {
30 static void RegisterFunction(BuiltinFunctions &set);
31};
32
33struct DivideFun {
34 static void RegisterFunction(BuiltinFunctions &set);
35};
36
37struct ModFun {
38 static void RegisterFunction(BuiltinFunctions &set);
39};
40
41} // namespace duckdb
42