2 #include "nlohmann/json_fwd.hpp"
3 #include "rule_symbol_checks.hpp"
4 #include "rules/rules.hpp"
5 #include "util/uuid.hpp"
10 class SymbolRules :
public Rules {
14 void load_from_json(
const json &j)
override;
15 RulesCheckResult check(RuleID
id,
const class Symbol &sym)
const;
16 json serialize()
const override;
17 std::set<RuleID> get_rule_ids()
const override;
18 const Rule *get_rule(RuleID
id)
const override;
19 const Rule *get_rule(RuleID
id,
const UUID &uu)
const override;
20 std::map<UUID, const Rule *> get_rules(RuleID
id)
const override;
21 void remove_rule(RuleID
id,
const UUID &uu)
override;
22 Rule *add_rule(RuleID
id)
override;
25 RuleSymbolChecks rule_symbol_checks;
27 RulesCheckResult check_symbol(
const class Symbol &sym)
const;