alpaqa
1.0.0a10
Nonconvex constrained optimization
Loading...
Searching...
No Matches
src
interop
cutest
include
alpaqa
cutest
cutest-errors.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <stdexcept>
4
5
namespace
alpaqa::cutest
{
6
7
struct
function_load_error
: std::runtime_error {
8
using
std::runtime_error::runtime_error;
9
};
10
11
enum class
Status
{
12
Success
= 0,
///< Successful call.
13
AllocErr
= 1,
///< Array allocation/deallocation error.
14
BoundErr
= 2,
///< Array bound error.
15
EvalErr
= 3,
///< Evaluation error.
16
};
17
18
inline
constexpr
const
char
*
enum_name
(
Status
s) {
19
switch
(s) {
20
case
Status::Success
:
return
"Success"
;
21
case
Status::AllocErr
:
return
"AllocErr"
;
22
case
Status::BoundErr
:
return
"BoundErr"
;
23
case
Status::EvalErr
:
return
"EvalErr"
;
24
default
:;
25
}
26
return
"<unknown>"
;
27
}
28
29
struct
function_call_error
: std::runtime_error {
30
function_call_error
(std::string message,
Status
status
)
31
: runtime_error{std::move(message) +
": "
+
enum_name
(
status
) +
" ("
+
32
std::to_string(static_cast<int>(
status
)) +
')'
},
33
status
{
status
} {}
34
Status
status
;
35
};
36
37
}
// namespace alpaqa::cutest
alpaqa::cutest
Definition:
cutest-errors.hpp:5
alpaqa::cutest::Status
Status
Definition:
cutest-errors.hpp:11
alpaqa::cutest::Status::AllocErr
@ AllocErr
Array allocation/deallocation error.
alpaqa::cutest::Status::BoundErr
@ BoundErr
Array bound error.
alpaqa::cutest::Status::Success
@ Success
Successful call.
alpaqa::cutest::Status::EvalErr
@ EvalErr
Evaluation error.
alpaqa::cutest::enum_name
constexpr const char * enum_name(Status s)
Definition:
cutest-errors.hpp:18
alpaqa::cutest::function_call_error
Definition:
cutest-errors.hpp:29
alpaqa::cutest::function_call_error::function_call_error
function_call_error(std::string message, Status status)
Definition:
cutest-errors.hpp:30
alpaqa::cutest::function_call_error::status
Status status
Definition:
cutest-errors.hpp:34
alpaqa::cutest::function_load_error
Definition:
cutest-errors.hpp:7
Generated by
1.9.6