19#ifndef CPPREALM_BRIDGE_UUID_HPP
20#define CPPREALM_BRIDGE_UUID_HPP
22#include <cpprealm/internal/bridge/utils.hpp>
31namespace realm::internal::bridge {
35 uuid& operator=(
const uuid& other) =
default;
37 uuid& operator=(
uuid&& other) =
default;
40 explicit uuid(
const std::string&);
41 uuid(
const std::array<uint8_t, 16>&);
42 uuid(
const struct ::realm::uuid&);
43 operator UUID()
const;
44 operator ::realm::uuid()
const;
45 [[nodiscard]] std::string to_string()
const;
46 [[nodiscard]] std::string to_base64()
const;
47 [[nodiscard]] std::array<uint8_t, 16> to_bytes()
const;
49 std::array<uint8_t, 16> m_uuid;
50 friend bool operator ==(
const uuid&,
const uuid&);
51 friend bool operator !=(
const uuid&,
const uuid&);
52 friend bool operator >(
const uuid&,
const uuid&);
53 friend bool operator <(
const uuid&,
const uuid&);
54 friend bool operator >=(
const uuid&,
const uuid&);
55 friend bool operator <=(
const uuid&,
const uuid&);
58 bool operator ==(
const uuid&,
const uuid&);
59 bool operator !=(
const uuid&,
const uuid&);
60 bool operator >(
const uuid&,
const uuid&);
61 bool operator <(
const uuid&,
const uuid&);
62 bool operator >=(
const uuid&,
const uuid&);
63 bool operator <=(
const uuid&,
const uuid&);