3 #include <launchdarkly/context.hpp>
4 #include <launchdarkly/data/evaluation_detail.hpp>
5 #include <launchdarkly/data_model/flag.hpp>
6 #include <launchdarkly/events/data/events.hpp>
11 namespace launchdarkly::server_side {
14 enum class ReasonPolicy {
23 [[nodiscard]] events::InputEvent UnknownFlag(std::string
const& key,
26 Value default_val)
const;
28 [[nodiscard]] events::InputEvent Eval(
29 std::string
const& key,
31 std::optional<data_model::Flag>
const& flag,
34 std::optional<std::string> prereq_of)
const;
36 [[nodiscard]] events::InputEvent Identify(
Context ctx)
const;
38 [[nodiscard]] events::InputEvent Custom(
40 std::string event_name,
41 std::optional<Value> data,
42 std::optional<double> metric_value)
const;
46 events::InputEvent FeatureRequest(
47 std::string
const& key,
49 std::optional<data_model::Flag>
const& flag,
52 std::optional<std::string> prereq_of)
const;
54 ReasonPolicy
const reason_policy_;
55 std::function<events::Date()> now_;
Definition: context.hpp:29
Definition: evaluation_detail.hpp:18
Definition: event_factory.hpp:13