26#ifndef ROUTER_SRC_REST_MRS_SRC_MRS_DATABASE_ENTRY_UNIVERSAL_ID_H_
27#define ROUTER_SRC_REST_MRS_SRC_MRS_DATABASE_ENTRY_UNIVERSAL_ID_H_
46 constexpr static uint64_t
k_size = 16;
47 using Array = std::array<uint8_t, k_size>;
52 assert(v.size() <=
raw.size());
61 for (uint8_t v :
raw) {
62 if (0 != v)
return false;
68 auto end()
const {
return std::end(
raw); }
74 for (
size_t ndx =
raw.size() - 1; ndx > 0; --ndx) {
75 auto cmp_res =
raw[ndx] <=> rhs.raw[ndx];
77 if (cmp_res != 0)
return cmp_res;
80 return raw[0] <=> rhs.raw[0];
94 return reinterpret_cast<const char *
>(
raw.data());
109 const char *binray) {
121 constexpr std::array<char, 16> hex_chars = {
122 '0',
'1',
'2',
'3',
'4',
'5',
'6',
'7',
123 '8',
'9',
'a',
'b',
'c',
'd',
'e',
'f',
127 out.reserve(
raw.size() * 2);
129 for (
auto ch :
raw) {
130 out += hex_chars[ch >> 4];
131 out += hex_chars[ch & 0xf];
Definition: utils_sqlstring.h:67
const char * p
Definition: ctype-mb.cc:1227
Header for compiler-dependent features.
#define MY_COMPILER_GCC_DIAGNOSTIC_IGNORE(X)
Definition: my_compiler.h:242
#define MY_COMPILER_DIAGNOSTIC_PUSH()
save the compiler's diagnostic (enabled warnings, errors, ...) state
Definition: my_compiler.h:277
#define MY_COMPILER_DIAGNOSTIC_POP()
restore the compiler's diagnostic (enabled warnings, errors, ...) state
Definition: my_compiler.h:278
bool length(const dd::Spatial_reference_system *srs, const Geometry *g1, double *length, bool *null) noexcept
Computes the length of linestrings and multilinestrings.
Definition: length.cc:76
mysqlrouter::sqlstring to_sqlstring(const UniversalId &ud)
Definition: universal_id.h:138
helper::json::SerializerToText & operator<<(helper::json::SerializerToText &stt, const UniversalId &id)
Definition: auth_app.h:59
std::string to_string(const AuthApp &entry)
Definition: auth_app.h:66
Definition: authorize_manager.h:48
const char * begin(const char *const c)
Definition: base64.h:44
Definition: gcs_xcom_synode.h:64
struct result result
Definition: result.h:34
MY_COMPILER_CLANG_DIAGNOSTIC_IGNORE("-Winconsistent-missing-destructor-override") static Scope_guard static_guard([]()
Definition: protobuf_plugin.cc:33
Definition: completion_hash.h:35
Definition: universal_id.h:45
const char * to_raw() const
Definition: universal_id.h:93
auto end() const
Definition: universal_id.h:68
UniversalId(std::initializer_list< uint8_t > v)
Definition: universal_id.h:51
static UniversalId from_cstr(const char *p, uint32_t length)
Definition: universal_id.h:86
auto begin() const
Definition: universal_id.h:67
Array raw
Definition: universal_id.h:58
std::array< uint8_t, k_size > Array
Definition: universal_id.h:47
UniversalId(const Array &v)
Definition: universal_id.h:56
static void from_raw_zero_on_null(UniversalId *uid, const char *binray)
Definition: universal_id.h:101
bool empty() const
Definition: universal_id.h:60
std::string to_string() const
Definition: universal_id.h:119
constexpr static uint64_t k_size
Definition: universal_id.h:46
static void from_raw(UniversalId *uid, const char *binray)
Definition: universal_id.h:97
static void from_raw_optional(std::optional< UniversalId > *uid, const char *binray)
Definition: universal_id.h:108