1 /*-------------------------------------------------------------------------
2  *
3  * pg_lsn.h
4  *		Declarations for operations on log sequence numbers (LSNs) of
5  *		PostgreSQL.
6  *
7  *
8  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
9  * Portions Copyright (c) 1994, Regents of the University of California
10  *
11  * src/include/utils/pg_lsn.h
12  *
13  *-------------------------------------------------------------------------
14  */
15 #ifndef PG_LSN_H
16 #define PG_LSN_H
17 
18 #include "fmgr.h"
19 #include "access/xlogdefs.h"
20 
21 #define DatumGetLSN(X) ((XLogRecPtr) DatumGetInt64(X))
22 #define LSNGetDatum(X) (Int64GetDatum((int64) (X)))
23 
24 #define PG_GETARG_LSN(n)	 DatumGetLSN(PG_GETARG_DATUM(n))
25 #define PG_RETURN_LSN(x)	 return LSNGetDatum(x)
26 
27 #endif							/* PG_LSN_H */
28