1 | /* |
2 | * src/include/utils/cash.h |
3 | * |
4 | * |
5 | * cash.h |
6 | * Written by D'Arcy J.M. Cain |
7 | * |
8 | * Functions to allow input and output of money normally but store |
9 | * and handle it as 64 bit integer. |
10 | */ |
11 | |
12 | #ifndef CASH_H |
13 | #define CASH_H |
14 | |
15 | #include "fmgr.h" |
16 | |
17 | typedef int64 Cash; |
18 | |
19 | /* Cash is pass-by-reference if and only if int64 is */ |
20 | #define DatumGetCash(X) ((Cash) DatumGetInt64(X)) |
21 | #define CashGetDatum(X) Int64GetDatum(X) |
22 | #define PG_GETARG_CASH(n) DatumGetCash(PG_GETARG_DATUM(n)) |
23 | #define PG_RETURN_CASH(x) return CashGetDatum(x) |
24 | |
25 | #endif /* CASH_H */ |
26 | |