Skip to content

Commit 94be915

Browse files
refactor(parser): prune more dead code
1 parent 57a41d7 commit 94be915

File tree

3 files changed

+8
-60
lines changed

3 files changed

+8
-60
lines changed

keyvalues-parser/src/text/parse/escaped.rs

Lines changed: 3 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
use super::*;
22

3-
use pest::Parser as _;
4-
53
pub type PestError = pest::error::Error<Rule>;
64
type BoxedState<'a> = Box<pest::ParserState<'a, Rule>>;
75
type ParseResult<'a> = pest::ParseResult<BoxedState<'a>>;
86

9-
struct Parser;
10-
11-
common_parsing!(Parser, Rule, true);
7+
common_parsing!(pest_parse, Rule, true);
128

139
#[expect(non_camel_case_types, clippy::upper_case_acronyms)]
1410
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
@@ -192,29 +188,6 @@ mod rules {
192188
}
193189
}
194190

195-
impl pest::Parser<Rule> for Parser {
196-
fn parse<'i>(
197-
rule: Rule,
198-
input: &'i str,
199-
) -> std::result::Result<pest::iterators::Pairs<'i, Rule>, PestError> {
200-
pest::state(input, |s| match rule {
201-
Rule::WHITESPACE => super::whitespace(s),
202-
Rule::COMMENT => super::comment(s),
203-
Rule::vdf => rules::vdf(s),
204-
Rule::base_macro => rules::base_macro(s),
205-
Rule::quoted_raw_string => rules::quoted_raw_string(s),
206-
Rule::quoted_raw_inner => rules::quoted_raw_inner(s),
207-
Rule::pairs => rules::pairs(s),
208-
Rule::pair => rules::pair(s),
209-
Rule::key => rules::key(s),
210-
Rule::value => rules::value(s),
211-
Rule::obj => rules::obj(s),
212-
Rule::quoted_string => rules::quoted_string(s),
213-
Rule::quoted_inner => rules::quoted_inner(s),
214-
Rule::char => rules::char(s),
215-
Rule::unquoted_string => rules::unquoted_string(s),
216-
Rule::unquoted_char => rules::unquoted_char(s),
217-
Rule::EOI => rules::EOI(s),
218-
})
219-
}
191+
pub fn pest_parse(input: &str) -> std::result::Result<pest::iterators::Pairs<'_, Rule>, PestError> {
192+
pest::state(input, rules::vdf)
220193
}

keyvalues-parser/src/text/parse/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ fn skip<R: RuleType>(s: BoxedState<'_, R>) -> ParseResult<'_, R> {
6363
// unfortunate hack to re-use most of the code that consumes the pest parser produced by our two
6464
// separate grammars :/
6565
macro_rules! common_parsing {
66-
($parser:ty, $rule:ty, $parse_escaped:expr) => {
66+
($parse_fn:ident, $rule:ty, $parse_escaped:expr) => {
6767
/// Attempts to parse VDF text to a [`Vdf`]
6868
pub fn parse(s: &str) -> Result<PartialVdf<'_>> {
69-
let mut full_grammar = <$parser>::parse(<$rule>::vdf, s)?;
69+
let mut full_grammar = $parse_fn(s)?;
7070

7171
// There can be multiple base macros before the initial pair
7272
let mut bases = Vec::new();

keyvalues-parser/src/text/parse/raw.rs

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
use super::*;
22

3-
use pest::Parser as _;
4-
53
pub type PestError = pest::error::Error<Rule>;
64
type BoxedState<'a> = Box<pest::ParserState<'a, Rule>>;
75
type ParseResult<'a> = pest::ParseResult<BoxedState<'a>>;
86

9-
struct Parser;
10-
11-
common_parsing!(Parser, Rule, false);
7+
common_parsing!(pest_parse, Rule, false);
128

139
#[expect(non_camel_case_types, clippy::upper_case_acronyms)]
1410
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
@@ -161,27 +157,6 @@ mod rules {
161157
}
162158
}
163159

164-
impl pest::Parser<Rule> for Parser {
165-
fn parse<'i>(
166-
rule: Rule,
167-
input: &'i str,
168-
) -> std::result::Result<pest::iterators::Pairs<'i, Rule>, PestError> {
169-
pest::state(input, |s| match rule {
170-
Rule::WHITESPACE => super::whitespace(s),
171-
Rule::COMMENT => super::comment(s),
172-
Rule::vdf => rules::vdf(s),
173-
Rule::base_macro => rules::base_macro(s),
174-
Rule::quoted_raw_string => rules::quoted_raw_string(s),
175-
Rule::pairs => rules::pairs(s),
176-
Rule::pair => rules::pair(s),
177-
Rule::key => rules::key(s),
178-
Rule::value => rules::value(s),
179-
Rule::obj => rules::obj(s),
180-
Rule::quoted_string => rules::quoted_string(s),
181-
Rule::quoted_inner => rules::quoted_inner(s),
182-
Rule::unquoted_string => rules::unquoted_string(s),
183-
Rule::unquoted_char => rules::unquoted_char(s),
184-
Rule::EOI => rules::EOI(s),
185-
})
186-
}
160+
pub fn pest_parse(input: &str) -> std::result::Result<pest::iterators::Pairs<'_, Rule>, PestError> {
161+
pest::state(input, rules::vdf)
187162
}

0 commit comments

Comments
 (0)