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