class Diagnostics
Defined at line 78 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
dl::Diagnostics can be used with ld::ScopedModuleDiagnostics. It can only
be default-constructed, and then it must be used. It's an ephemeral object
that should just be constructed when needed, at the top of a context where
no module prefix is used. Then it should be used by reference for
operations on the root (relevant) module with ld::ScopedModuleDiagnostics
used to set the module prefix when operating on a dependency module. Before
it goes out of scope, either take_error() or ok(...) must be called.
Public Methods
void Diagnostics ()
Defined at line 82 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
void Diagnostics (Diagnostics && )
Defined at line 84 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
fit::error<Error> take_error ()
If something using the Diagnostics template API has returned false to
propagate a Diagnostics return, then this can be called to close out the
Diagnostics object as in DiagnosticsReport (above).
Defined at line 89 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
template <typename... T>
auto ok (T &&... value)
This is used in lieu of plain fit::ok(...) to indicate the state has been
checked and make it safe to destroy this object, as in DiagnosticsReport.
Defined at line 94 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
template <typename... Args>
std::true_type FormatWarning (Args &&... args)
This overrides elfldltl::Diagnostics
<
...>::FormatWarning. Warnings don't
cause an error. They don't get stored for dlerror() to return. There's
no other means of logging them. So just ignore them.
Defined at line 102 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h
bool OutOfMemory (std::string_view error, size_t bytes)
Defined at line 106 of file ../../sdk/lib/c/dlfcn/dl/diagnostics.h