Line data Source code
1 : /*------------------------------------------------------------------------- 2 : * 3 : * xid8.h 4 : * Header file for the "xid8" ADT. 5 : * 6 : * Copyright (c) 2020-2024, PostgreSQL Global Development Group 7 : * 8 : * src/include/utils/xid8.h 9 : * 10 : *------------------------------------------------------------------------- 11 : */ 12 : #ifndef XID8_H 13 : #define XID8_H 14 : 15 : #include "access/transam.h" 16 : 17 : static inline FullTransactionId 18 4056 : DatumGetFullTransactionId(Datum X) 19 : { 20 4056 : return FullTransactionIdFromU64(DatumGetUInt64(X)); 21 : } 22 : 23 : static inline Datum 24 7426 : FullTransactionIdGetDatum(FullTransactionId X) 25 : { 26 7426 : return UInt64GetDatum(U64FromFullTransactionId(X)); 27 : } 28 : 29 : #define PG_GETARG_FULLTRANSACTIONID(X) DatumGetFullTransactionId(PG_GETARG_DATUM(X)) 30 : #define PG_RETURN_FULLTRANSACTIONID(X) return FullTransactionIdGetDatum(X) 31 : 32 : #endif /* XID8_H */