1 /* 2 * src/pl/plpython/plpy_subxactobject.h 3 */ 4 5 #ifndef PLPY_SUBXACTOBJECT 6 #define PLPY_SUBXACTOBJECT 7 8 #include "nodes/pg_list.h" 9 #include "plpython.h" 10 #include "utils/resowner.h" 11 12 /* a list of nested explicit subtransactions */ 13 extern List *explicit_subtransactions; 14 15 16 typedef struct PLySubtransactionObject 17 { 18 PyObject_HEAD 19 bool started; 20 bool exited; 21 } PLySubtransactionObject; 22 23 /* explicit subtransaction data */ 24 typedef struct PLySubtransactionData 25 { 26 MemoryContext oldcontext; 27 ResourceOwner oldowner; 28 } PLySubtransactionData; 29 30 extern void PLy_subtransaction_init_type(void); 31 extern PyObject *PLy_subtransaction_new(PyObject *self, PyObject *unused); 32 33 #endif /* PLPY_SUBXACTOBJECT */ 34