11#include <cusolverDn.h>
13#include <source_location>
21[[nodiscard]] std::string_view
status_name(cusolverStatus_t status)
noexcept;
28 [[nodiscard]] cusolverStatus_t
status() const noexcept {
return status_; }
29 [[nodiscard]] std::string
const&
operation() const noexcept {
return operation_; }
31 [[nodiscard]]
int device() const noexcept {
return device_; }
34 cusolverStatus_t status_;
35 std::string operation_;
40[[noreturn]]
void raise_error(cusolverStatus_t status, std::string_view operation,
int device,
41 std::source_location where = std::source_location::current());
44void check(cusolverStatus_t status, std::string_view operation,
int device,
45 std::source_location where = std::source_location::current());
Exception carrying a failed cuSOLVER operation and device identity.
Definition cusolver_error.hpp:24
std::string_view error_name() const noexcept
Definition cusolver_error.hpp:30
int device() const noexcept
Definition cusolver_error.hpp:31
cusolverStatus_t status() const noexcept
Definition cusolver_error.hpp:28
std::string const & operation() const noexcept
Definition cusolver_error.hpp:29
Base class for exceptions raised through Uni20's diagnostic boundary.
Definition diagnostic_error.hpp:25
Structured exception base carrying diagnostic source context.
Definition cusolver_error.cpp:10
void raise_error(cusolverStatus_t status, std::string_view operation, int device, std::source_location where)
Raise a structured cuSOLVER provider failure.
Definition cusolver_error.cpp:53
std::string_view status_name(cusolverStatus_t status) noexcept
Return a stable symbolic name for a cuSOLVER status value.
Definition cusolver_error.cpp:12