rippled
Loading...
Searching...
No Matches
include
xrpl
protocol
detail
token_errors.h
1
#pragma once
2
3
#include <
system_error
>
4
5
namespace
xrpl
{
6
enum class
TokenCodecErrc
{
7
success
= 0,
8
inputTooLarge
,
9
inputTooSmall
,
10
badB58Character
,
11
outputTooSmall
,
12
mismatchedTokenType
,
13
mismatchedChecksum
,
14
invalidEncodingChar
,
15
overflowAdd
,
16
unknown
,
17
};
18
}
19
20
namespace
std
{
21
template
<>
22
struct
is_error_code_enum
<
xrpl
::TokenCodecErrc> :
true_type
23
{
24
};
25
}
// namespace std
26
27
namespace
xrpl
{
28
namespace
detail {
29
class
TokenCodecErrcCategory
:
public
std::error_category
30
{
31
public
:
32
// Return a short descriptive name for the category
33
virtual
char
const
*
34
name
() const noexcept override
final
35
{
36
return
"TokenCodecError"
;
37
}
38
// Return what each enum means in text
39
virtual
std::string
40
message
(
int
c)
const
override
final
41
{
42
switch
(
static_cast<
TokenCodecErrc
>
(c))
43
{
44
case
TokenCodecErrc::success
:
45
return
"conversion successful"
;
46
case
TokenCodecErrc::inputTooLarge
:
47
return
"input too large"
;
48
case
TokenCodecErrc::inputTooSmall
:
49
return
"input too small"
;
50
case
TokenCodecErrc::badB58Character
:
51
return
"bad base 58 character"
;
52
case
TokenCodecErrc::outputTooSmall
:
53
return
"output too small"
;
54
case
TokenCodecErrc::mismatchedTokenType
:
55
return
"mismatched token type"
;
56
case
TokenCodecErrc::mismatchedChecksum
:
57
return
"mismatched checksum"
;
58
case
TokenCodecErrc::invalidEncodingChar
:
59
return
"invalid encoding char"
;
60
case
TokenCodecErrc::unknown
:
61
return
"unknown"
;
62
default
:
63
return
"unknown"
;
64
}
65
}
66
};
67
}
// namespace detail
68
69
inline
xrpl::detail::TokenCodecErrcCategory
const
&
70
TokenCodecErrcCategory
()
71
{
72
static
xrpl::detail::TokenCodecErrcCategory
c;
73
return
c;
74
}
75
76
inline
std::error_code
77
make_error_code
(
xrpl::TokenCodecErrc
e)
78
{
79
return
{
static_cast<
int
>
(e),
TokenCodecErrcCategory
()};
80
}
81
}
// namespace xrpl
std::string
xrpl::detail::TokenCodecErrcCategory
Definition
token_errors.h:30
xrpl::detail::TokenCodecErrcCategory::name
virtual char const * name() const noexcept override final
Definition
token_errors.h:34
xrpl::detail::TokenCodecErrcCategory::message
virtual std::string message(int c) const override final
Definition
token_errors.h:40
std::error_category
std::error_code
std::true_type
std::is_error_code_enum
std
STL namespace.
xrpl::detail::PaymentSpecialCase::final
@ final
xrpl
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition
algorithm.h:5
xrpl::make_error_code
std::error_code make_error_code(xrpl::TokenCodecErrc e)
Definition
token_errors.h:77
xrpl::TokenCodecErrcCategory
xrpl::detail::TokenCodecErrcCategory const & TokenCodecErrcCategory()
Definition
token_errors.h:70
xrpl::TokenCodecErrc
TokenCodecErrc
Definition
token_errors.h:6
xrpl::TokenCodecErrc::inputTooSmall
@ inputTooSmall
xrpl::TokenCodecErrc::overflowAdd
@ overflowAdd
xrpl::TokenCodecErrc::mismatchedTokenType
@ mismatchedTokenType
xrpl::TokenCodecErrc::mismatchedChecksum
@ mismatchedChecksum
xrpl::TokenCodecErrc::success
@ success
xrpl::TokenCodecErrc::badB58Character
@ badB58Character
xrpl::TokenCodecErrc::invalidEncodingChar
@ invalidEncodingChar
xrpl::TokenCodecErrc::inputTooLarge
@ inputTooLarge
xrpl::TokenCodecErrc::unknown
@ unknown
xrpl::TokenCodecErrc::outputTooSmall
@ outputTooSmall
system_error
Generated by
1.9.8