C++ Client-Side SDK
LaunchDarkly SDK
Loading...
Searching...
No Matches
evaluation_detail_internal.hpp
1#pragma once
2
3#include <cstddef>
4#include <functional>
5#include <optional>
6#include <ostream>
7#include <utility>
8
9#include <launchdarkly/data/evaluation_reason.hpp>
10#include <launchdarkly/value.hpp>
11
12namespace launchdarkly {
13
30 public:
36 [[nodiscard]] launchdarkly::Value const& Value() const;
37
43 [[nodiscard]] std::optional<std::size_t> VariationIndex() const;
44
49 [[nodiscard]] std::optional<std::reference_wrapper<EvaluationReason const>>
50 Reason() const;
51
53 std::optional<std::size_t> variation_index,
54 std::optional<EvaluationReason> reason);
55
56 friend std::ostream& operator<<(std::ostream& out,
57 EvaluationDetailInternal const& detail);
58
59 private:
61 std::optional<std::size_t> variation_index_;
62 std::optional<EvaluationReason> reason_;
63};
64
65bool operator==(EvaluationDetailInternal const& lhs,
66 EvaluationDetailInternal const& rhs);
67bool operator!=(EvaluationDetailInternal const& lhs,
68 EvaluationDetailInternal const& rhs);
69
70} // namespace launchdarkly
Definition evaluation_detail_internal.hpp:29
std::optional< std::reference_wrapper< EvaluationReason const > > Reason() const
Definition evaluation_detail_internal.cpp:14
launchdarkly::Value const & Value() const
Definition evaluation_detail_internal.cpp:5
std::optional< std::size_t > VariationIndex() const
Definition evaluation_detail_internal.cpp:9
Definition value.hpp:42