Skip to contents

Resolves a ruleset and reports problems without changing any project. This is the conformance kit for ruleset authors: a ruleset that passes here can be installed with bg_use_rules() in a session that registers the same predicates.

Usage

bg_ruleset_check(ruleset)

Arguments

ruleset

A ruleset (see bg_ruleset()) or a reference string such as "lab.review@1".

Value

A list with ok (no errors), errors and warnings (character vectors), and rule_count (resolved rules).

Details

Errors cover invalid rulesets, failed resolution, and unknown predicates or predicate arguments. Warnings cover rules that name checks, utilities, or goal kinds outside the resolved vocabulary and rules that can never apply or never be satisfied.

Examples

bg_ruleset_check(bg_ruleset(
  "lab.review",
  "1.0.0",
  rules = list(bg_rule(
    id = "review-ppc",
    on = "accept",
    require = list(type = "require_review", check = "ppc"),
    message = "Review the predictive check before accepting."
  ))
))
#> $ok
#> [1] TRUE
#> 
#> $errors
#> character(0)
#> 
#> $warnings
#> character(0)
#> 
#> $rule_count
#> [1] 1
#>