8 namespace launchdarkly {
29 kPrerequisiteFailed = 4,
34 friend std::ostream& operator<<(std::ostream& out,
Kind const& kind);
44 kUserNotSpecified = 1,
56 friend std::ostream& operator<<(std::ostream& out,
ErrorKind const& kind);
61 [[nodiscard]]
enum Kind const&
Kind()
const;
67 [[nodiscard]] std::optional<ErrorKind>
ErrorKind()
const;
73 [[nodiscard]] std::optional<std::size_t>
RuleIndex()
const;
79 [[nodiscard]] std::optional<std::string>
RuleId()
const;
113 std::optional<enum ErrorKind> error_kind,
114 std::optional<std::size_t> rule_index,
115 std::optional<std::string> rule_id,
116 std::optional<std::string> prerequisite_key,
118 std::optional<std::string> big_segment_status);
150 std::optional<std::string> rule_id,
158 friend std::ostream& operator<<(std::ostream& out,
163 std::optional<enum ErrorKind> error_kind_;
164 std::optional<std::size_t> rule_index_;
165 std::optional<std::string> rule_id_;
166 std::optional<std::string> prerequisite_key_;
168 std::optional<std::string> big_segment_status_;
171 bool operator==(EvaluationReason
const& lhs, EvaluationReason
const& rhs);
172 bool operator!=(EvaluationReason
const& lhs, EvaluationReason
const& rhs);
Definition: evaluation_reason.hpp:13
static EvaluationReason MalformedFlag()
Definition: evaluation_reason.cpp:88
static EvaluationReason TargetMatch()
Definition: evaluation_reason.cpp:71
static EvaluationReason Fallthrough(bool in_experiment)
Definition: evaluation_reason.cpp:76
static EvaluationReason RuleMatch(std::size_t rule_index, std::optional< std::string > rule_id, bool in_experiment)
Definition: evaluation_reason.cpp:81
Kind
Definition: evaluation_reason.hpp:18
ErrorKind
Definition: evaluation_reason.hpp:39
bool InExperiment() const
Definition: evaluation_reason.cpp:26
std::optional< std::string > PrerequisiteKey() const
Definition: evaluation_reason.cpp:22
static EvaluationReason PrerequisiteFailed(std::string prerequisite_key)
Definition: evaluation_reason.cpp:64
static EvaluationReason Off()
Definition: evaluation_reason.cpp:59
std::optional< std::string > RuleId() const
Definition: evaluation_reason.cpp:18
std::optional< std::string > BigSegmentStatus() const
Definition: evaluation_reason.cpp:30
std::optional< std::size_t > RuleIndex() const
Definition: evaluation_reason.cpp:14