Loading...
Searching...
No Matches
L4::Ipc_svr::Dbg_dispatch< R, Exc, Printer > Struct Template Reference

Dispatch helper that, in addition to what Exc_dispatch does, prints exception messages. More...

`#include <ipc_server_loop>`

Inheritance diagram for L4::Ipc_svr::Dbg_dispatch< R, Exc, Printer >:
Collaboration diagram for L4::Ipc_svr::Dbg_dispatch< R, Exc, Printer >:

## Public Member Functions

| Dbg_dispatch (R r, Printer p)
| Make an exception handling dispatcher.
l4_msgtag_t | operator() (l4_msgtag_t tag, l4_umword_t obj, l4_utcb_t *utcb)
| Dispatch the call via Direct_dispatch<R>(), handle exceptions, and print the exception message.

## Detailed Description

template<typename R, typename Exc, typename Printer>
struct L4::Ipc_svr::Dbg_dispatch< R, Exc, Printer >

Dispatch helper that, in addition to what Exc_dispatch does, prints exception messages.

Template Parameters

  R | Data type of the registry used for dispatching to objects.
  Exc | Data type of the exceptions that shall be caught. This data type must provide a member err_no() that returns the negative integer (int) error code for the exception. In addition, methods str() and extra_str() are required that return a c-string describing the error.
  Printer | A type that provides a printf() member that is used (with the usual format string syntax) to print error messages.

This dispatcher wraps Direct_dispatch<R> with a try-catch (Exc).

Definition at line 184 of file ipc_server_loop.

The documentation for this struct was generated from the following file:

- l4/sys/cxx/ipc_server_loop