37 #ifndef VIRGIL_PYTHIA_ERROR_H 38 #define VIRGIL_PYTHIA_ERROR_H 40 #include <system_error> 42 #include "../VirgilCryptoError.h" 59 const char*
name()
const noexcept
override;
66 std::string
message(
int ev)
const noexcept
override;
125 template <
typename CatchHandler>
133 catch_handler(result);
152 template <
typename CatchHandler>
154 (void)pythia_handler_get_result<CatchHandler>(result, catch_handler);
161 #endif // VIRGIL_PYTHIA_ERROR_H int pythia_handler_get_result(int result, CatchHandler catch_handler)
Handle value returned by underling system crypto library.
Definition: VirgilPythiaError.h:126
std::string message(int ev) const noexceptoverride
Return description for the given error code.
const char * name() const noexceptoverride
Return name of the system crypto category.
Root namespace for all Virgil Security libraries.
Definition: VirgilAsn1Compatible.h:46
void pythia_handler(int result, CatchHandler catch_handler)
Handle value returned by underling system crypto library.
Definition: VirgilPythiaError.h:153
const VirgilPythiaErrorCategory & pythia_error_category() noexcept
Return singleton instance of the system crypto error category.
This only exception that crypto library can produce.
Definition: VirgilCryptoException.h:54
Error category that handles error codes from the system crypto library.
Definition: VirgilPythiaError.h:53