libpqxx
The C++ client library for PostgreSQL
transaction-transaction_focus.hxx
Go to the documentation of this file.
1 #ifndef PQXX_INTERNAL_GATES_TRANSACTION_TRANSACTION_FOCUS_HXX
2 #define PQXX_INTERNAL_GATES_TRANSACTION_TRANSACTION_FOCUS_HXX
3 
5 
7 
8 namespace pqxx::internal::gate
9 {
11  : callgate<transaction_base>
12 {
14 
15  explicit constexpr transaction_transaction_focus(reference x) noexcept :
16  super(x)
17  {}
18 
19  void register_focus(transaction_focus *focus)
20  {
21  home().register_focus(focus);
22  }
23  void unregister_focus(transaction_focus *focus) noexcept
24  {
25  home().unregister_focus(focus);
26  }
27  void register_pending_error(zview error, sl loc)
28  {
29  home().register_pending_error(error, loc);
30  }
31  void register_pending_error(std::string &&error, sl loc)
32  {
33  home().register_pending_error(std::move(error), loc);
34  }
35 };
36 } // namespace pqxx::internal::gate
37 #endif
Base class for call gates.
Definition: callgate.hxx:55
Definition: transaction-transaction_focus.hxx:12
Base class for things that monopolise a transaction's attention.
Definition: transaction_focus.hxx:29
Marker-type wrapper: zero-terminated std::string_view.
Definition: zview.hxx:55
Interface definition (and common code) for "transaction" classes.
Definition: transaction_base.hxx:151
#define PQXX_PRIVATE
Definition: header-pre.hxx:207
Definition: connection.hxx:94
std::source_location sl
Convenience alias for std::source_location. It's just too long.
Definition: types.hxx:38