I am running cargo clippy over async-graphql crate which uses pest v2.7.11.
warning: almost complete ascii range
--> parser/src/parse/generated.rs:2312:29
|
2312 | state.match_range('0'..'9')
| ^^^--^^^
| |
| help: use an inclusive range: `..=`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#almost_complete_range
= note: `#[warn(clippy::almost_complete_range)]` on by default
As we can see at vm.rs and generator.rs, range is included in fact.
// vm
"ASCII_DIGIT" => return state.match_range('0'..'9'),
// generated
insert_builtin!(builtins, ASCII_DIGIT, state.match_range('0'..'9'));
pub(crate) fn match_range(&mut self, range: Range<char>) -> bool {
if let Some(c) = self.input[self.pos..].chars().next() {
if range.start <= c && c <= range.end { // <<<<<<<<<<< here
self.pos += c.len_utf8();
return true;
}
}
false
}
As pest uses 0..9 just for expressiveness, I would either mute clippy at the generated code, or switched to 0..=9 (affects MSRV).
I am running
cargo clippyoverasync-graphqlcrate which uses pestv2.7.11.As we can see at vm.rs and generator.rs, range is included in fact.
As pest uses
0..9just for expressiveness, I would either mute clippy at the generated code, or switched to0..=9(affects MSRV).