Skip to content

Commit 53b4cb6

Browse files
authored
Added new check and fixed files with it (#116)
## This PR Adds new `misc-include-cleaner` check for clang-tidy, and fixes all files that violated it earlier --------- Signed-off-by: Marcin Olko <molko@google.com>
1 parent 8fa8ae8 commit 53b4cb6

17 files changed

Lines changed: 115 additions & 19 deletions

File tree

.clang-tidy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ Checks: "
33
readability-*,
44
modernize-*,
55
performance-*,
6+
misc-include-cleaner,
67
-google-readability-todo,
78
-readability-convert-member-functions-to-static,
89
-readability-function-cognitive-complexity,

providers/flagd/src/configuration.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,25 @@
11
#include "configuration.h"
22

3-
#include <grpcpp/grpcpp.h>
43
#include <grpcpp/security/credentials.h>
4+
#include <grpcpp/support/status.h>
55

66
#include <algorithm>
7+
#include <cctype>
78
#include <cstdlib>
89
#include <fstream>
910
#include <map>
11+
#include <memory>
12+
#include <nlohmann/json_fwd.hpp>
13+
#include <optional>
1014
#include <sstream>
15+
#include <stdexcept>
1116
#include <string>
17+
#include <string_view>
1218
#include <utility>
1319
#include <vector>
1420

1521
#include "absl/log/log.h"
22+
#include "absl/status/status.h"
1623
#include "absl/status/statusor.h"
1724
#include "absl/strings/ascii.h"
1825
#include "absl/strings/str_cat.h"

providers/flagd/src/evaluator/evaluator.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,29 @@
11
#include "evaluator.h"
22

3+
#include <any>
34
#include <chrono>
5+
#include <cstdint>
6+
#include <map>
47
#include <memory>
58
#include <nlohmann/json.hpp>
9+
#include <nlohmann/json_fwd.hpp>
610
#include <optional>
11+
#include <string>
12+
#include <string_view>
13+
#include <utility>
14+
#include <vector>
715

816
#include "absl/log/log.h"
17+
#include "absl/status/statusor.h"
918
#include "absl/strings/str_cat.h"
1019
#include "flagd/sync/sync.h"
1120
#include "flagd_ops.h"
21+
#include "openfeature/error_code.h"
22+
#include "openfeature/evaluation_context.h"
23+
#include "openfeature/flag_metadata.h"
24+
#include "openfeature/reason.h"
25+
#include "openfeature/resolution_details.h"
26+
#include "openfeature/value.h"
1227

1328
namespace flagd {
1429

providers/flagd/src/evaluator/flagd_ops.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,23 @@
11
#include "flagd_ops.h"
22

33
#include <algorithm>
4+
#include <cctype>
5+
#include <cstddef>
46
#include <cstdint>
57
#include <limits>
8+
#include <nlohmann/json_fwd.hpp>
69
#include <string>
710
#include <string_view>
11+
#include <utility>
812
#include <vector>
913

1014
#include "absl/status/status.h"
15+
#include "absl/status/statusor.h"
1116
#include "absl/strings/match.h"
1217
#include "absl/strings/numbers.h"
1318
#include "absl/strings/str_cat.h"
1419
#include "absl/strings/str_split.h"
20+
#include "flagd/evaluator/json_logic/json_logic.h"
1521
#include "flagd/evaluator/murmur_hash/MurmurHash3.h"
1622

1723
namespace flagd {

providers/flagd/src/evaluator/json_logic/array.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11

22
#include "array.h"
33

4+
#include <nlohmann/json_fwd.hpp>
5+
6+
#include "absl/status/statusor.h"
7+
#include "providers/flagd/src/evaluator/json_logic/json_logic.h"
8+
49
namespace json_logic::ops {
510

611
absl::StatusOr<nlohmann::json> Merge(const JsonLogic& eval,

providers/flagd/src/evaluator/json_logic/cli.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
#include <exception>
22
#include <iostream>
3+
#include <nlohmann/json_fwd.hpp>
34
#include <string>
45

56
#include "absl/status/status.h"
7+
#include "absl/status/statusor.h"
68
#include "json_logic.h"
79
#include "nlohmann/json.hpp"
810

providers/flagd/src/evaluator/json_logic/data.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
#include "data.h"
22

33
#include <algorithm>
4+
#include <cstdint>
5+
#include <nlohmann/json_fwd.hpp>
46
#include <optional>
57
#include <string>
68

79
#include "absl/status/status.h"
10+
#include "absl/status/statusor.h"
811
#include "absl/strings/str_cat.h"
912
#include "json_logic.h"
1013

providers/flagd/src/evaluator/json_logic/json_logic.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#include "json_logic.h"
22

3+
#include <nlohmann/json_fwd.hpp>
34
#include <string>
45
#include <utility>
56

67
#include "absl/status/status.h"
8+
#include "absl/status/statusor.h"
79
#include "array.h"
810
#include "data.h"
911
#include "logic.h"

providers/flagd/src/evaluator/json_logic/logic.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
#include "logic.h"
22

3+
#include <cstddef>
4+
#include <nlohmann/json_fwd.hpp>
5+
36
#include "absl/status/status.h"
7+
#include "absl/status/statusor.h"
8+
#include "providers/flagd/src/evaluator/json_logic/json_logic.h"
49
#include "providers/flagd/src/evaluator/json_logic/utils.h"
510

611
namespace json_logic::ops {

providers/flagd/src/evaluator/json_logic/numeric.cpp

Lines changed: 25 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,18 @@
33
#include <algorithm>
44
#include <cmath>
55
#include <cstdint>
6+
#include <limits>
7+
#include <nlohmann/json_fwd.hpp>
68
#include <numeric>
9+
#include <string>
10+
#include <string_view>
711
#include <type_traits>
812
#include <variant>
913
#include <vector>
1014

1115
#include "absl/status/status.h"
16+
#include "absl/status/statusor.h"
17+
#include "providers/flagd/src/evaluator/json_logic/json_logic.h"
1218

1319
namespace json_logic::ops {
1420

@@ -258,8 +264,8 @@ absl::StatusOr<nlohmann::json> Add(const JsonLogic& eval,
258264
if (!nums_res.ok()) return nums_res.status();
259265
if (nums_res->empty()) return 0;
260266

261-
return std::accumulate(nums_res->begin() + 1, nums_res->end(), (*nums_res)[0],
262-
Number::Add)
267+
return std::accumulate(nums_res->begin() + 1, nums_res->end(),
268+
nums_res.value()[0], Number::Add)
263269
.ToJson();
264270
}
265271

@@ -271,10 +277,10 @@ absl::StatusOr<nlohmann::json> Subtract(const JsonLogic& eval,
271277
if (!nums_res.ok()) return nums_res.status();
272278

273279
if (nums_res->size() == 1) {
274-
return Number::Sub(Number(int64_t{0}), (*nums_res)[0]).ToJson();
280+
return Number::Sub(Number(int64_t{0}), nums_res.value()[0]).ToJson();
275281
}
276282
if (nums_res->size() == 2) {
277-
return Number::Sub((*nums_res)[0], (*nums_res)[1]).ToJson();
283+
return Number::Sub(nums_res.value()[0], nums_res.value()[1]).ToJson();
278284
}
279285
return absl::InvalidArgumentError(
280286
"Subtract requires exactly one or two arguments");
@@ -288,8 +294,8 @@ absl::StatusOr<nlohmann::json> Multiply(const JsonLogic& eval,
288294
if (!nums_res.ok()) return nums_res.status();
289295
if (nums_res->empty()) return 1;
290296

291-
return std::accumulate(nums_res->begin() + 1, nums_res->end(), (*nums_res)[0],
292-
Number::Mul)
297+
return std::accumulate(nums_res->begin() + 1, nums_res->end(),
298+
nums_res.value()[0], Number::Mul)
293299
.ToJson();
294300
}
295301

@@ -304,7 +310,7 @@ absl::StatusOr<nlohmann::json> Divide(const JsonLogic& eval,
304310
}
305311

306312
absl::StatusOr<Number> result_res =
307-
Number::Div((*nums_res)[0], (*nums_res)[1]);
313+
Number::Div(nums_res.value()[0], nums_res.value()[1]);
308314
if (!result_res.ok()) return result_res.status();
309315
return result_res->ToJson();
310316
}
@@ -320,7 +326,7 @@ absl::StatusOr<nlohmann::json> Modulo(const JsonLogic& eval,
320326
}
321327

322328
absl::StatusOr<Number> result_res =
323-
Number::Mod((*nums_res)[0], (*nums_res)[1]);
329+
Number::Mod(nums_res.value()[0], nums_res.value()[1]);
324330
if (!result_res.ok()) return result_res.status();
325331
return result_res->ToJson();
326332
}
@@ -332,9 +338,10 @@ absl::StatusOr<nlohmann::json> LessThan(const JsonLogic& eval,
332338
GetNumbers(eval, values, data, "<");
333339
if (!nums_res.ok()) return nums_res.status();
334340

335-
if (nums_res->size() == 2) return (*nums_res)[0] < (*nums_res)[1];
341+
if (nums_res->size() == 2) return nums_res.value()[0] < nums_res.value()[1];
336342
if (nums_res->size() == 3) {
337-
return (*nums_res)[0] < (*nums_res)[1] && (*nums_res)[1] < (*nums_res)[2];
343+
return nums_res.value()[0] < nums_res.value()[1] &&
344+
nums_res.value()[1] < nums_res.value()[2];
338345
}
339346
return absl::InvalidArgumentError("Comparison requires 2 or 3 arguments");
340347
}
@@ -349,10 +356,12 @@ absl::StatusOr<nlohmann::json> LessThanOrEqual(const JsonLogic& eval,
349356
auto is_lte = [](const Number& first, const Number& second) {
350357
return first < second || first == second;
351358
};
352-
if (nums_res->size() == 2) return is_lte((*nums_res)[0], (*nums_res)[1]);
359+
if (nums_res->size() == 2) {
360+
return is_lte(nums_res.value()[0], nums_res.value()[1]);
361+
}
353362
if (nums_res->size() == 3) {
354-
return is_lte((*nums_res)[0], (*nums_res)[1]) &&
355-
is_lte((*nums_res)[1], (*nums_res)[2]);
363+
return is_lte(nums_res.value()[0], nums_res.value()[1]) &&
364+
is_lte(nums_res.value()[1], nums_res.value()[2]);
356365
}
357366
return absl::InvalidArgumentError("Comparison requires 2 or 3 arguments");
358367
}
@@ -364,7 +373,7 @@ absl::StatusOr<nlohmann::json> GreaterThan(const JsonLogic& eval,
364373
GetNumbers(eval, values, data, ">");
365374
if (!nums_res.ok()) return nums_res.status();
366375

367-
if (nums_res->size() == 2) return (*nums_res)[1] < (*nums_res)[0];
376+
if (nums_res->size() == 2) return nums_res.value()[1] < nums_res.value()[0];
368377
return absl::InvalidArgumentError("GreaterThan requires 2 arguments");
369378
}
370379

@@ -376,7 +385,8 @@ absl::StatusOr<nlohmann::json> GreaterThanOrEqual(const JsonLogic& eval,
376385
if (!nums_res.ok()) return nums_res.status();
377386

378387
if (nums_res->size() == 2) {
379-
return (*nums_res)[1] < (*nums_res)[0] || (*nums_res)[0] == (*nums_res)[1];
388+
return nums_res.value()[1] < nums_res.value()[0] ||
389+
nums_res.value()[0] == nums_res.value()[1];
380390
}
381391
return absl::InvalidArgumentError("GreaterThanOrEqual requires 2 arguments");
382392
}

0 commit comments

Comments
 (0)