Skip to content

Commit cf3750d

Browse files
committed
feat: add EvaluationResult::Prerequisites()
1 parent e330018 commit cf3750d

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

libs/common/include/launchdarkly/data/evaluation_result.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ class EvaluationResult {
4848
*/
4949
[[nodiscard]] EvaluationDetailInternal const& Detail() const;
5050

51+
[[nodiscard]] std::vector<std::string> const& Prerequisites() const;
52+
5153
EvaluationResult(
5254
uint64_t version,
5355
std::optional<uint64_t> flag_version,
@@ -65,6 +67,7 @@ class EvaluationResult {
6567
std::optional<std::chrono::time_point<std::chrono::system_clock>>
6668
debug_events_until_date_;
6769
EvaluationDetailInternal detail_;
70+
std::vector<std::string> prerequisites_;
6871
};
6972

7073
std::ostream& operator<<(std::ostream& out, EvaluationResult const& result);

libs/common/src/data/evaluation_result.cpp

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ EvaluationDetailInternal const& EvaluationResult::Detail() const {
3131
return detail_;
3232
}
3333

34+
std::vector<std::string> const& EvaluationResult::Prerequisites() const {
35+
return prerequisites_;
36+
}
37+
3438
EvaluationResult::EvaluationResult(
3539
uint64_t version,
3640
std::optional<uint64_t> flag_version,
@@ -59,6 +63,14 @@ std::ostream& operator<<(std::ostream& out, EvaluationResult const& result) {
5963
<< std::put_time(std::gmtime(&as_time_t), "%Y-%m-%d %H:%M:%S");
6064
}
6165
out << " detail: " << result.Detail();
66+
if (result.Prerequisites().size() > 0) {
67+
out << " prerequisites: [";
68+
for (std::size_t i = 0; i < result.Prerequisites().size(); i++) {
69+
out << result.Prerequisites()[i]
70+
<< (i == result.Prerequisites().size() - 1 ? "" : ", ");
71+
}
72+
out << "]";
73+
}
6274
out << "}";
6375
return out;
6476
}
@@ -69,7 +81,8 @@ bool operator==(EvaluationResult const& lhs, EvaluationResult const& rhs) {
6981
lhs.TrackEvents() == rhs.TrackEvents() &&
7082
lhs.Detail() == rhs.Detail() &&
7183
lhs.DebugEventsUntilDate() == rhs.DebugEventsUntilDate() &&
72-
lhs.FlagVersion() == rhs.FlagVersion();
84+
lhs.FlagVersion() == rhs.FlagVersion() &&
85+
lhs.Prerequisites() == rhs.Prerequisites();
7386
}
7487

7588
bool operator!=(EvaluationResult const& lhs, EvaluationResult const& rhs) {

0 commit comments

Comments
 (0)