mirror of
https://github.com/astral-sh/ruff.git
synced 2025-08-09 21:28:21 +00:00
Remove unused parser modes
<!-- Thank you for contributing to Ruff! To help us out with reviewing, please consider the following: - Does this pull request include a summary of the change? (See below.) - Does this pull request include a descriptive title? - Does this pull request include references to any relevant issues? --> ## Summary This PR removes the `Interactive` and `FunctionType` parser modes that are unused by ruff <!-- What's the purpose of the change? What does it do, and why? --> ## Test Plan `cargo test` <!-- How was it tested? -->
This commit is contained in:
parent
7c7231db2e
commit
f45e8645d7
15 changed files with 15156 additions and 15587 deletions
|
@ -22,9 +22,7 @@ pub trait AstNode: Ranged {
|
|||
#[derive(Clone, Debug, is_macro::Is, PartialEq)]
|
||||
pub enum AnyNode {
|
||||
ModModule(ast::ModModule),
|
||||
ModInteractive(ast::ModInteractive),
|
||||
ModExpression(ast::ModExpression),
|
||||
ModFunctionType(ast::ModFunctionType),
|
||||
StmtFunctionDef(ast::StmtFunctionDef),
|
||||
StmtAsyncFunctionDef(ast::StmtAsyncFunctionDef),
|
||||
StmtClassDef(ast::StmtClassDef),
|
||||
|
@ -140,9 +138,7 @@ impl AnyNode {
|
|||
AnyNode::StmtLineMagic(node) => Some(Stmt::LineMagic(node)),
|
||||
|
||||
AnyNode::ModModule(_)
|
||||
| AnyNode::ModInteractive(_)
|
||||
| AnyNode::ModExpression(_)
|
||||
| AnyNode::ModFunctionType(_)
|
||||
| AnyNode::ExprBoolOp(_)
|
||||
| AnyNode::ExprNamedExpr(_)
|
||||
| AnyNode::ExprBinOp(_)
|
||||
|
@ -228,9 +224,7 @@ impl AnyNode {
|
|||
AnyNode::ExprLineMagic(node) => Some(Expr::LineMagic(node)),
|
||||
|
||||
AnyNode::ModModule(_)
|
||||
| AnyNode::ModInteractive(_)
|
||||
| AnyNode::ModExpression(_)
|
||||
| AnyNode::ModFunctionType(_)
|
||||
| AnyNode::StmtFunctionDef(_)
|
||||
| AnyNode::StmtAsyncFunctionDef(_)
|
||||
| AnyNode::StmtClassDef(_)
|
||||
|
@ -288,9 +282,7 @@ impl AnyNode {
|
|||
pub fn module(self) -> Option<Mod> {
|
||||
match self {
|
||||
AnyNode::ModModule(node) => Some(Mod::Module(node)),
|
||||
AnyNode::ModInteractive(node) => Some(Mod::Interactive(node)),
|
||||
AnyNode::ModExpression(node) => Some(Mod::Expression(node)),
|
||||
AnyNode::ModFunctionType(node) => Some(Mod::FunctionType(node)),
|
||||
|
||||
AnyNode::StmtFunctionDef(_)
|
||||
| AnyNode::StmtAsyncFunctionDef(_)
|
||||
|
@ -386,9 +378,7 @@ impl AnyNode {
|
|||
AnyNode::PatternMatchOr(node) => Some(Pattern::MatchOr(node)),
|
||||
|
||||
AnyNode::ModModule(_)
|
||||
| AnyNode::ModInteractive(_)
|
||||
| AnyNode::ModExpression(_)
|
||||
| AnyNode::ModFunctionType(_)
|
||||
| AnyNode::StmtFunctionDef(_)
|
||||
| AnyNode::StmtAsyncFunctionDef(_)
|
||||
| AnyNode::StmtClassDef(_)
|
||||
|
@ -468,9 +458,7 @@ impl AnyNode {
|
|||
AnyNode::ExceptHandlerExceptHandler(node) => Some(ExceptHandler::ExceptHandler(node)),
|
||||
|
||||
AnyNode::ModModule(_)
|
||||
| AnyNode::ModInteractive(_)
|
||||
| AnyNode::ModExpression(_)
|
||||
| AnyNode::ModFunctionType(_)
|
||||
| AnyNode::StmtFunctionDef(_)
|
||||
| AnyNode::StmtAsyncFunctionDef(_)
|
||||
| AnyNode::StmtClassDef(_)
|
||||
|
@ -575,9 +563,7 @@ impl AnyNode {
|
|||
pub const fn as_ref(&self) -> AnyNodeRef {
|
||||
match self {
|
||||
Self::ModModule(node) => AnyNodeRef::ModModule(node),
|
||||
Self::ModInteractive(node) => AnyNodeRef::ModInteractive(node),
|
||||
Self::ModExpression(node) => AnyNodeRef::ModExpression(node),
|
||||
Self::ModFunctionType(node) => AnyNodeRef::ModFunctionType(node),
|
||||
Self::StmtFunctionDef(node) => AnyNodeRef::StmtFunctionDef(node),
|
||||
Self::StmtAsyncFunctionDef(node) => AnyNodeRef::StmtAsyncFunctionDef(node),
|
||||
Self::StmtClassDef(node) => AnyNodeRef::StmtClassDef(node),
|
||||
|
@ -694,34 +680,6 @@ impl AstNode for ast::ModModule {
|
|||
AnyNode::from(self)
|
||||
}
|
||||
}
|
||||
impl AstNode for ast::ModInteractive {
|
||||
fn cast(kind: AnyNode) -> Option<Self>
|
||||
where
|
||||
Self: Sized,
|
||||
{
|
||||
if let AnyNode::ModInteractive(node) = kind {
|
||||
Some(node)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
fn cast_ref(kind: AnyNodeRef) -> Option<&Self> {
|
||||
if let AnyNodeRef::ModInteractive(node) = kind {
|
||||
Some(node)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
fn as_any_node_ref(&self) -> AnyNodeRef {
|
||||
AnyNodeRef::from(self)
|
||||
}
|
||||
|
||||
fn into_any_node(self) -> AnyNode {
|
||||
AnyNode::from(self)
|
||||
}
|
||||
}
|
||||
impl AstNode for ast::ModExpression {
|
||||
fn cast(kind: AnyNode) -> Option<Self>
|
||||
where
|
||||
|
@ -750,34 +708,6 @@ impl AstNode for ast::ModExpression {
|
|||
AnyNode::from(self)
|
||||
}
|
||||
}
|
||||
impl AstNode for ast::ModFunctionType {
|
||||
fn cast(kind: AnyNode) -> Option<Self>
|
||||
where
|
||||
Self: Sized,
|
||||
{
|
||||
if let AnyNode::ModFunctionType(node) = kind {
|
||||
Some(node)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
fn cast_ref(kind: AnyNodeRef) -> Option<&Self> {
|
||||
if let AnyNodeRef::ModFunctionType(node) = kind {
|
||||
Some(node)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
fn as_any_node_ref(&self) -> AnyNodeRef {
|
||||
AnyNodeRef::from(self)
|
||||
}
|
||||
|
||||
fn into_any_node(self) -> AnyNode {
|
||||
AnyNode::from(self)
|
||||
}
|
||||
}
|
||||
impl AstNode for ast::StmtFunctionDef {
|
||||
fn cast(kind: AnyNode) -> Option<Self>
|
||||
where
|
||||
|
@ -3067,9 +2997,7 @@ impl From<Mod> for AnyNode {
|
|||
fn from(module: Mod) -> Self {
|
||||
match module {
|
||||
Mod::Module(node) => AnyNode::ModModule(node),
|
||||
Mod::Interactive(node) => AnyNode::ModInteractive(node),
|
||||
Mod::Expression(node) => AnyNode::ModExpression(node),
|
||||
Mod::FunctionType(node) => AnyNode::ModFunctionType(node),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3103,24 +3031,12 @@ impl From<ast::ModModule> for AnyNode {
|
|||
}
|
||||
}
|
||||
|
||||
impl From<ast::ModInteractive> for AnyNode {
|
||||
fn from(node: ast::ModInteractive) -> Self {
|
||||
AnyNode::ModInteractive(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<ast::ModExpression> for AnyNode {
|
||||
fn from(node: ast::ModExpression) -> Self {
|
||||
AnyNode::ModExpression(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<ast::ModFunctionType> for AnyNode {
|
||||
fn from(node: ast::ModFunctionType) -> Self {
|
||||
AnyNode::ModFunctionType(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<ast::StmtFunctionDef> for AnyNode {
|
||||
fn from(node: ast::StmtFunctionDef) -> Self {
|
||||
AnyNode::StmtFunctionDef(node)
|
||||
|
@ -3590,9 +3506,7 @@ impl Ranged for AnyNode {
|
|||
fn range(&self) -> TextRange {
|
||||
match self {
|
||||
AnyNode::ModModule(node) => node.range(),
|
||||
AnyNode::ModInteractive(node) => node.range(),
|
||||
AnyNode::ModExpression(node) => node.range(),
|
||||
AnyNode::ModFunctionType(node) => node.range(),
|
||||
AnyNode::StmtFunctionDef(node) => node.range(),
|
||||
AnyNode::StmtAsyncFunctionDef(node) => node.range(),
|
||||
AnyNode::StmtClassDef(node) => node.range(),
|
||||
|
@ -3679,9 +3593,7 @@ impl Ranged for AnyNode {
|
|||
#[derive(Copy, Clone, Debug, is_macro::Is, PartialEq)]
|
||||
pub enum AnyNodeRef<'a> {
|
||||
ModModule(&'a ast::ModModule),
|
||||
ModInteractive(&'a ast::ModInteractive),
|
||||
ModExpression(&'a ast::ModExpression),
|
||||
ModFunctionType(&'a ast::ModFunctionType),
|
||||
StmtFunctionDef(&'a ast::StmtFunctionDef),
|
||||
StmtAsyncFunctionDef(&'a ast::StmtAsyncFunctionDef),
|
||||
StmtClassDef(&'a ast::StmtClassDef),
|
||||
|
@ -3767,9 +3679,7 @@ impl AnyNodeRef<'_> {
|
|||
pub fn as_ptr(&self) -> NonNull<()> {
|
||||
match self {
|
||||
AnyNodeRef::ModModule(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::ModInteractive(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::ModExpression(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::ModFunctionType(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::StmtFunctionDef(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::StmtAsyncFunctionDef(node) => NonNull::from(*node).cast(),
|
||||
AnyNodeRef::StmtClassDef(node) => NonNull::from(*node).cast(),
|
||||
|
@ -3861,9 +3771,7 @@ impl AnyNodeRef<'_> {
|
|||
pub const fn kind(self) -> NodeKind {
|
||||
match self {
|
||||
AnyNodeRef::ModModule(_) => NodeKind::ModModule,
|
||||
AnyNodeRef::ModInteractive(_) => NodeKind::ModInteractive,
|
||||
AnyNodeRef::ModExpression(_) => NodeKind::ModExpression,
|
||||
AnyNodeRef::ModFunctionType(_) => NodeKind::ModFunctionType,
|
||||
AnyNodeRef::StmtFunctionDef(_) => NodeKind::StmtFunctionDef,
|
||||
AnyNodeRef::StmtAsyncFunctionDef(_) => NodeKind::StmtAsyncFunctionDef,
|
||||
AnyNodeRef::StmtClassDef(_) => NodeKind::StmtClassDef,
|
||||
|
@ -3979,9 +3887,7 @@ impl AnyNodeRef<'_> {
|
|||
| AnyNodeRef::StmtLineMagic(_) => true,
|
||||
|
||||
AnyNodeRef::ModModule(_)
|
||||
| AnyNodeRef::ModInteractive(_)
|
||||
| AnyNodeRef::ModExpression(_)
|
||||
| AnyNodeRef::ModFunctionType(_)
|
||||
| AnyNodeRef::ExprBoolOp(_)
|
||||
| AnyNodeRef::ExprNamedExpr(_)
|
||||
| AnyNodeRef::ExprBinOp(_)
|
||||
|
@ -4067,9 +3973,7 @@ impl AnyNodeRef<'_> {
|
|||
| AnyNodeRef::ExprLineMagic(_) => true,
|
||||
|
||||
AnyNodeRef::ModModule(_)
|
||||
| AnyNodeRef::ModInteractive(_)
|
||||
| AnyNodeRef::ModExpression(_)
|
||||
| AnyNodeRef::ModFunctionType(_)
|
||||
| AnyNodeRef::StmtFunctionDef(_)
|
||||
| AnyNodeRef::StmtAsyncFunctionDef(_)
|
||||
| AnyNodeRef::StmtClassDef(_)
|
||||
|
@ -4126,10 +4030,7 @@ impl AnyNodeRef<'_> {
|
|||
|
||||
pub const fn is_module(self) -> bool {
|
||||
match self {
|
||||
AnyNodeRef::ModModule(_)
|
||||
| AnyNodeRef::ModInteractive(_)
|
||||
| AnyNodeRef::ModExpression(_)
|
||||
| AnyNodeRef::ModFunctionType(_) => true,
|
||||
AnyNodeRef::ModModule(_) | AnyNodeRef::ModExpression(_) => true,
|
||||
|
||||
AnyNodeRef::StmtFunctionDef(_)
|
||||
| AnyNodeRef::StmtAsyncFunctionDef(_)
|
||||
|
@ -4225,9 +4126,7 @@ impl AnyNodeRef<'_> {
|
|||
| AnyNodeRef::PatternMatchOr(_) => true,
|
||||
|
||||
AnyNodeRef::ModModule(_)
|
||||
| AnyNodeRef::ModInteractive(_)
|
||||
| AnyNodeRef::ModExpression(_)
|
||||
| AnyNodeRef::ModFunctionType(_)
|
||||
| AnyNodeRef::StmtFunctionDef(_)
|
||||
| AnyNodeRef::StmtAsyncFunctionDef(_)
|
||||
| AnyNodeRef::StmtClassDef(_)
|
||||
|
@ -4307,9 +4206,7 @@ impl AnyNodeRef<'_> {
|
|||
AnyNodeRef::ExceptHandlerExceptHandler(_) => true,
|
||||
|
||||
AnyNodeRef::ModModule(_)
|
||||
| AnyNodeRef::ModInteractive(_)
|
||||
| AnyNodeRef::ModExpression(_)
|
||||
| AnyNodeRef::ModFunctionType(_)
|
||||
| AnyNodeRef::StmtFunctionDef(_)
|
||||
| AnyNodeRef::StmtAsyncFunctionDef(_)
|
||||
| AnyNodeRef::StmtClassDef(_)
|
||||
|
@ -4428,24 +4325,12 @@ impl<'a> From<&'a ast::ModModule> for AnyNodeRef<'a> {
|
|||
}
|
||||
}
|
||||
|
||||
impl<'a> From<&'a ast::ModInteractive> for AnyNodeRef<'a> {
|
||||
fn from(node: &'a ast::ModInteractive) -> Self {
|
||||
AnyNodeRef::ModInteractive(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> From<&'a ast::ModExpression> for AnyNodeRef<'a> {
|
||||
fn from(node: &'a ast::ModExpression) -> Self {
|
||||
AnyNodeRef::ModExpression(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> From<&'a ast::ModFunctionType> for AnyNodeRef<'a> {
|
||||
fn from(node: &'a ast::ModFunctionType) -> Self {
|
||||
AnyNodeRef::ModFunctionType(node)
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> From<&'a ast::StmtFunctionDef> for AnyNodeRef<'a> {
|
||||
fn from(node: &'a ast::StmtFunctionDef) -> Self {
|
||||
AnyNodeRef::StmtFunctionDef(node)
|
||||
|
@ -4947,9 +4832,7 @@ impl<'a> From<&'a Mod> for AnyNodeRef<'a> {
|
|||
fn from(module: &'a Mod) -> Self {
|
||||
match module {
|
||||
Mod::Module(node) => AnyNodeRef::ModModule(node),
|
||||
Mod::Interactive(node) => AnyNodeRef::ModInteractive(node),
|
||||
Mod::Expression(node) => AnyNodeRef::ModExpression(node),
|
||||
Mod::FunctionType(node) => AnyNodeRef::ModFunctionType(node),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5034,9 +4917,7 @@ impl Ranged for AnyNodeRef<'_> {
|
|||
fn range(&self) -> TextRange {
|
||||
match self {
|
||||
AnyNodeRef::ModModule(node) => node.range(),
|
||||
AnyNodeRef::ModInteractive(node) => node.range(),
|
||||
AnyNodeRef::ModExpression(node) => node.range(),
|
||||
AnyNodeRef::ModFunctionType(node) => node.range(),
|
||||
AnyNodeRef::StmtFunctionDef(node) => node.range(),
|
||||
AnyNodeRef::StmtAsyncFunctionDef(node) => node.range(),
|
||||
AnyNodeRef::StmtClassDef(node) => node.range(),
|
||||
|
|
|
@ -10,9 +10,7 @@ use std::fmt::Debug;
|
|||
#[derive(Clone, Debug, PartialEq, is_macro::Is)]
|
||||
pub enum Mod {
|
||||
Module(ModModule),
|
||||
Interactive(ModInteractive),
|
||||
Expression(ModExpression),
|
||||
FunctionType(ModFunctionType),
|
||||
}
|
||||
|
||||
/// See also [Module](https://docs.python.org/3/library/ast.html#ast.Module)
|
||||
|
@ -28,19 +26,6 @@ impl From<ModModule> for Mod {
|
|||
}
|
||||
}
|
||||
|
||||
/// See also [Interactive](https://docs.python.org/3/library/ast.html#ast.Interactive)
|
||||
#[derive(Clone, Debug, PartialEq)]
|
||||
pub struct ModInteractive {
|
||||
pub range: TextRange,
|
||||
pub body: Vec<Stmt>,
|
||||
}
|
||||
|
||||
impl From<ModInteractive> for Mod {
|
||||
fn from(payload: ModInteractive) -> Self {
|
||||
Mod::Interactive(payload)
|
||||
}
|
||||
}
|
||||
|
||||
/// See also [Expression](https://docs.python.org/3/library/ast.html#ast.Expression)
|
||||
#[derive(Clone, Debug, PartialEq)]
|
||||
pub struct ModExpression {
|
||||
|
@ -54,20 +39,6 @@ impl From<ModExpression> for Mod {
|
|||
}
|
||||
}
|
||||
|
||||
/// See also [FunctionType](https://docs.python.org/3/library/ast.html#ast.FunctionType)
|
||||
#[derive(Clone, Debug, PartialEq)]
|
||||
pub struct ModFunctionType {
|
||||
pub range: TextRange,
|
||||
pub argtypes: Vec<Expr>,
|
||||
pub returns: Box<Expr>,
|
||||
}
|
||||
|
||||
impl From<ModFunctionType> for Mod {
|
||||
fn from(payload: ModFunctionType) -> Self {
|
||||
Mod::FunctionType(payload)
|
||||
}
|
||||
}
|
||||
|
||||
/// See also [stmt](https://docs.python.org/3/library/ast.html#ast.stmt)
|
||||
#[derive(Clone, Debug, PartialEq, is_macro::Is)]
|
||||
pub enum Stmt {
|
||||
|
@ -2474,28 +2445,16 @@ impl Ranged for crate::nodes::ModModule {
|
|||
self.range
|
||||
}
|
||||
}
|
||||
impl Ranged for crate::nodes::ModInteractive {
|
||||
fn range(&self) -> TextRange {
|
||||
self.range
|
||||
}
|
||||
}
|
||||
impl Ranged for crate::nodes::ModExpression {
|
||||
fn range(&self) -> TextRange {
|
||||
self.range
|
||||
}
|
||||
}
|
||||
impl Ranged for crate::nodes::ModFunctionType {
|
||||
fn range(&self) -> TextRange {
|
||||
self.range
|
||||
}
|
||||
}
|
||||
impl Ranged for crate::Mod {
|
||||
fn range(&self) -> TextRange {
|
||||
match self {
|
||||
Self::Module(node) => node.range(),
|
||||
Self::Interactive(node) => node.range(),
|
||||
Self::Expression(node) => node.range(),
|
||||
Self::FunctionType(node) => node.range(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3017,5 +2976,5 @@ mod size_assertions {
|
|||
assert_eq_size!(Expr, [u8; 80]);
|
||||
assert_eq_size!(Constant, [u8; 32]);
|
||||
assert_eq_size!(Pattern, [u8; 96]);
|
||||
assert_eq_size!(Mod, [u8; 48]);
|
||||
assert_eq_size!(Mod, [u8; 32]);
|
||||
}
|
||||
|
|
|
@ -109,19 +109,7 @@ where
|
|||
Mod::Module(ast::ModModule { body, range: _ }) => {
|
||||
visitor.visit_body(body);
|
||||
}
|
||||
Mod::Interactive(ast::ModInteractive { body, range: _ }) => visitor.visit_body(body),
|
||||
Mod::Expression(ast::ModExpression { body, range: _ }) => visitor.visit_expr(body),
|
||||
Mod::FunctionType(ast::ModFunctionType {
|
||||
range: _,
|
||||
argtypes,
|
||||
returns,
|
||||
}) => {
|
||||
for arg_type in argtypes {
|
||||
visitor.visit_expr(arg_type);
|
||||
}
|
||||
|
||||
visitor.visit_expr(returns);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -147,21 +147,7 @@ where
|
|||
ast::Mod::Module(ast::ModModule { body, range: _ }) => {
|
||||
visitor.visit_body(body);
|
||||
}
|
||||
ast::Mod::Interactive(ast::ModInteractive { body, range: _ }) => {
|
||||
visitor.visit_body(body);
|
||||
}
|
||||
ast::Mod::Expression(ast::ModExpression { body, range: _ }) => visitor.visit_expr(body),
|
||||
ast::Mod::FunctionType(ast::ModFunctionType {
|
||||
range: _,
|
||||
argtypes,
|
||||
returns,
|
||||
}) => {
|
||||
for arg_type in argtypes {
|
||||
visitor.visit_expr(arg_type);
|
||||
}
|
||||
|
||||
visitor.visit_expr(returns);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue