1/*
2 * This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 *
6 * Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
7 */
8
9#include "monetdb_config.h"
10#include "sql.h"
11#include "sql_result.h"
12#include "sql_gencode.h"
13#include "sql_storage.h"
14#include "sql_scenario.h"
15#include "store_sequence.h"
16#include "sql_datetime.h"
17#include "rel_optimizer.h"
18#include "rel_distribute.h"
19#include "rel_select.h"
20#include "rel_exp.h"
21#include "rel_dump.h"
22#include "clients.h"
23#include "mal_instruction.h"
24
25#define CONCAT_2(a, b) a##b
26#define CONCAT_3(a, b, c) a##b##c
27
28#define NIL(t) CONCAT_2(t, _nil)
29#define ISNIL(t) CONCAT_3(is_, t, _nil)
30#define TPE(t) CONCAT_2(TYPE_, t)
31#define GDKmin(t) CONCAT_3(GDK_, t, _min)
32#define GDKmax(t) CONCAT_3(GDK_, t, _max)
33#define FUN(a, b) CONCAT_3(a, _, b)
34
35#define STRING(a) #a
36
37#define BIG lng /* a larger type */
38
39#define TYPE bte
40#include "sql_round_impl.h"
41#undef TYPE
42
43#define TYPE sht
44#include "sql_round_impl.h"
45#undef TYPE
46
47#define TYPE int
48#include "sql_round_impl.h"
49#undef TYPE
50
51#define TYPE lng
52#include "sql_round_impl.h"
53#undef TYPE
54
55#ifdef HAVE_HGE
56#undef BIG
57#define BIG hge
58#define TYPE hge
59#include "sql_round_impl.h"
60#undef TYPE
61#endif
62