2 #include "nlohmann/json_fwd.hpp"
3 #include "rule_package_checks.hpp"
4 #include "rule_clearance_package.hpp"
5 #include "rules/rules.hpp"
6 #include "util/uuid.hpp"
11 class PackageRules :
public Rules {
15 void load_from_json(
const json &j)
override;
16 RulesCheckResult check(RuleID
id,
const class Package &pkg)
const;
17 json serialize()
const override;
18 std::set<RuleID> get_rule_ids()
const override;
19 const Rule *get_rule(RuleID
id)
const override;
20 const Rule *get_rule(RuleID
id,
const UUID &uu)
const override;
21 std::map<UUID, const Rule *> get_rules(RuleID
id)
const override;
22 void remove_rule(RuleID
id,
const UUID &uu)
override;
23 Rule *add_rule(RuleID
id)
override;
26 RulePackageChecks rule_package_checks;
27 RuleClearancePackage rule_clearance_package;
29 RulesCheckResult check_package(
const class Package &pkg)
const;
30 RulesCheckResult check_clearance(
const class Package &pkg)
const;