3#include <StormByte/crypto/visibility.h>
4#include <StormByte/exception.hxx>
10namespace StormByte::Crypto {
15 class STORMBYTE_CRYPTO_PUBLIC
Exception:
public StormByte::Exception {
22 StormByte::
Exception(
"Crypto", message) {}
30 template <
typename... Args>
31 inline Exception(
const std::string& component, std::format_string<Args...> fmt, Args&&... args):
32 StormByte::
Exception(
"Crypto::" + component, fmt, std::forward<Args>(args)...) {}
55 template <
typename... Args>
57 Exception(
"Compressor: ", fmt, std::forward<Args>(args)...) {}
80 template <
typename... Args>
82 Exception(
"Crypter: ", fmt, std::forward<Args>(args)...) {}
105 template <
typename... Args>
107 Exception(
"Hasher: ", fmt, std::forward<Args>(args)...) {}
130 template <
typename... Args>
132 Exception(
"KeyPair: ", fmt, std::forward<Args>(args)...) {}
155 template <
typename... Args>
157 Exception(
"Secret: ", fmt, std::forward<Args>(args)...) {}
180 template <
typename... Args>
182 Exception(
"Signer: ", fmt, std::forward<Args>(args)...) {}
A class representing an exception in the compressor component of the crypto module.
Definition exception.hxx:41
CompressorException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:56
CompressorException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:47
A class representing an exception in the crypter component of the crypto module.
Definition exception.hxx:66
CrypterException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:72
CrypterException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:81
A class representing an exception in the crypto module.
Definition exception.hxx:15
Exception(const std::string &component, std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:31
Exception(const std::string &message)
Constructor.
Definition exception.hxx:21
A class representing an exception in the hasher component of the crypto module.
Definition exception.hxx:91
HasherException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:106
HasherException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:97
A class representing an exception in the keypair component of the crypto module.
Definition exception.hxx:116
KeyPairException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:131
KeyPairException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:122
A class representing an exception in the secret component of the crypto module.
Definition exception.hxx:141
SecretException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:147
SecretException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:156
A class representing an exception in the signer component of the crypto module.
Definition exception.hxx:166
SignerException(std::format_string< Args... > fmt, Args &&... args)
Constructor.
Definition exception.hxx:181
SignerException(const std::string &message)
Non-templated constructor for plain string messages. This resolves MSVC overload ambiguities when pas...
Definition exception.hxx:172