--- mod.rs.orig +++ mod.rs @@ -39,6 +39,20 @@ impl Parser { pub fn new(tokens: Vec) -> Self { - Self { tokens, current: 0 } + // 过滤掉所有空白符和注释 + let filtered_tokens: Vec = tokens + .into_iter() + .filter(|t| !matches!(t, + Token::Whitespace | + Token::Newline | + Token::Comment(_) | + Token::DocComment(_) | + Token::ModuleDocComment(_) + )) + .collect(); + + Self { + tokens: filtered_tokens, + current: 0 + } }