accepts method

bool accepts(
  1. String text, {
  2. String? rule,
})

Whether rule (default: root) derives exactly text.

Implementation

bool accepts(String text, {String? rule}) {
  final start = rule ?? root;
  if (!_rules.containsKey(start)) throw ArgumentError.value(start, 'rule', 'is not defined');
  final run = _Run(_rules, text.runes.toList());
  return run.rule(start, 0).contains(run.input.length);
}