4#include <sshpp/config.hpp>
6#include <sshpp/export.hpp>
20#define SSHPP_HERE ::sshpp::SourceLocation{__FILE__, __LINE__, __func__}
102SSHPP_API
const std::error_category&
ssh_category() noexcept;
111template <>
struct is_error_code_enum<
sshpp::
errc> : true_type {};
120 std::error_code code{};
122 const char* operation =
"";
125 [[nodiscard]] std::string to_string()
const;
126 explicit operator bool() const noexcept {
return static_cast<bool>(code); }
129class SSHPP_API
Error :
public std::system_error {
134 const char*
operation() const noexcept {
return info_.operation; }
const SourceLocation & where() const noexcept
Definition error.hpp:135
const ErrorInfo & info() const noexcept
Definition error.hpp:133
const char * operation() const noexcept
Definition error.hpp:134
SSHPP_INLINE const std::error_category & ssh_category() noexcept
Definition error.ipp:123
sftp_errc
Definition error.hpp:84
SSHPP_INLINE std::error_code make_error_code(errc e) noexcept
Definition error.ipp:133
SSHPP_INLINE void throw_error(ErrorInfo info)
Definition error.ipp:152
SSHPP_INLINE const std::error_category & sftp_category() noexcept
Definition error.ipp:128
errc
Definition error.hpp:22
@ auth_method_unavailable
std::string message
Definition error.hpp:121
Minimal std::source_location-like shim (this library targets C++17).
Definition error.hpp:14
const char * function
Definition error.hpp:17
const char * file
Definition error.hpp:15
int line
Definition error.hpp:16