C++ Server-Side SDK
LaunchDarkly SDK
serialized_item_descriptor.hpp
1 #pragma once
2 
3 #include <cstdint>
4 #include <optional>
5 #include <ostream>
6 #include <string>
7 
8 namespace launchdarkly::server_side::integrations {
13  std::uint64_t version;
14 
21  bool deleted;
22 
23  std::string serializedItem;
24 
32  static SerializedItemDescriptor Present(std::uint64_t const version,
33  std::string data) {
34  return SerializedItemDescriptor{version, false, std::move(data)};
35  }
36 
49  static SerializedItemDescriptor Tombstone(std::uint64_t const version,
50  std::string tombstone_rep) {
51  return SerializedItemDescriptor{version, true,
52  std::move(tombstone_rep)};
53  }
54 };
55 
56 inline bool operator==(SerializedItemDescriptor const& lhs,
57  SerializedItemDescriptor const& rhs) {
58  return lhs.version == rhs.version && lhs.deleted == rhs.deleted &&
59  lhs.serializedItem == rhs.serializedItem;
60 }
61 
62 inline void PrintTo(SerializedItemDescriptor const& item, std::ostream* os) {
63  *os << "{version=" << item.version << ", deleted=" << item.deleted
64  << ", item=" << item.serializedItem << "}";
65 }
66 
67 } // namespace launchdarkly::server_side::integrations
Definition: serialized_item_descriptor.hpp:12
static SerializedItemDescriptor Present(std::uint64_t const version, std::string data)
Constructs a SerializedItemDescriptor from a version and a serialized item.
Definition: serialized_item_descriptor.hpp:32
static SerializedItemDescriptor Tombstone(std::uint64_t const version, std::string tombstone_rep)
Constructs a SerializedItemDescriptor from a version and a tombstone.
Definition: serialized_item_descriptor.hpp:49
bool deleted
Definition: serialized_item_descriptor.hpp:21