MakerLabs ACM
uuid.h
Go to the documentation of this file.
1 /*
2  * Copyright Paul Reimer, 2018
3  *
4  * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 Unported License.
5  * To view a copy of this license, visit
6  * https://creativecommons.org/licenses/by-nc-sa/4.0/
7  * or send a letter to
8  * Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
9  */
10 
11 #pragma once
12 
13 #include "uuid_generated.h"
14 
15 #include <memory>
16 #include <string>
17 
18 namespace UUID {
19 
20 static UUID NullUUID = UUID(0, 0);
21 
23 {
24  auto operator()(const UUID& uuid) const
25  -> size_t;
26 };
27 
29 {
30  auto operator()(const UUID& lhs, const UUID& rhs) const
31  -> bool;
32 };
33 
34 auto compare_uuids(
35  const UUID* lhs,
36  const UUID* rhs
37 ) -> bool;
38 
39 auto compare_uuids(
40  const UUID& lhs,
41  const UUID& rhs
42 ) -> bool;
43 
44 auto compare_uuids(
45  const std::unique_ptr<UUID>& lhs,
46  const std::unique_ptr<UUID>& rhs
47 ) -> bool;
48 
49 auto uuid_valid(const UUID* uuid)
50  -> bool;
51 
52 auto uuid_valid(const UUID& uuid)
53  -> bool;
54 
55 auto uuidgen()
56  -> UUID;
57 
58 auto uuidgen(std::unique_ptr<UUID>& uuid_ptr)
59  -> void;
60 
61 auto uuidgen(UUID* uuid_ptr)
62  -> void;
63 
64 auto update_uuid(std::unique_ptr<UUID>& to_uuid_ptr, const UUID& from_uuid)
65  -> void;
66 
67 auto update_uuid(UUID* to_uuid_ptr, const UUID& from_uuid)
68  -> void;
69 
70 auto update_uuid(UUID& to_uuid_ptr, const UUID* from_uuid)
71  -> void;
72 
73 auto get_uuid_str(const UUID& uuid)
74  -> std::string;
75 
76 } // namespace UUID
auto operator()(const UUID &lhs, const UUID &rhs) const -> bool
Definition: uuid.cpp:26
Definition: uuid.h:28
auto uuidgen() -> UUID
Definition: uuid.cpp:80
std::string string
Definition: oom_killer_actor_behaviour.cpp:24
auto compare_uuids(const UUID *lhs, const UUID *rhs) -> bool
Definition: uuid.cpp:32
auto uuid_valid(const UUID *uuid) -> bool
Definition: uuid.cpp:68
auto get_uuid_str(const UUID &uuid) -> std::string
Definition: uuid.cpp:139
auto update_uuid(std::unique_ptr< UUID > &to_uuid_ptr, const UUID &from_uuid) -> void
Definition: uuid.cpp:110
Definition: uuid.h:22
auto operator()(const UUID &uuid) const -> size_t
Definition: uuid.cpp:17
Definition: uuid.cpp:15
static UUID NullUUID
Definition: uuid.h:20
UUID::UUID UUID
Definition: firmware_update_actor.cpp:41