C++ Server-Side SDK
LaunchDarkly SDK
evaluation_error.hpp
1 #pragma once
2 
3 #include <cstdint>
4 #include <optional>
5 #include <ostream>
6 
7 namespace launchdarkly::server_side::evaluation {
8 
9 class Error {
10  public:
11  static Error CyclicSegmentReference(std::string segment_key);
12  static Error CyclicPrerequisiteReference(std::string prereq_key);
13  static Error InvalidAttributeReference(std::string ref);
14  static Error RolloutMissingVariations();
15  static Error NonexistentVariationIndex(std::int64_t index);
16  static Error MissingSalt(std::string item_key);
17 
18  friend std::ostream& operator<<(std::ostream& out, Error const& arr);
19  friend bool operator==(Error const& lhs, Error const& rhs);
20 
21  private:
22  Error(char const* format, std::string arg);
23  Error(char const* format, std::int64_t arg);
24  Error(char const* msg);
25 
26  char const* format_;
27  std::optional<std::string> arg_;
28 };
29 
30 } // namespace launchdarkly::server_side::evaluation
Definition: evaluation_error.hpp:9