macro_rules! fails_with {
( parser: $parser:ident, input: $string:expr, rule: $rules:tt :: $rule:tt,
positives: $positives:expr, negatives: $negatives:expr, pos: $pos:expr ) => { ... };
}
Expand description
Testing tool that compares produced errors.
This macro takes several arguments:
parser
- name of the data structure implementingParser
input
- input to be tested againstrule
-Rule
which will be runpositives
- positiveRule
attempts that failednegative
- negativeRule
attempts that failedpos
- byte position of failure
ยงExamples
fails_with! {
parser: AbcParser,
input: Arc::from("abcdf"),
rule: Rule::a,
positives: vec![Rule::c],
negatives: vec![],
pos: 4
};