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