mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-05-25 06:41:15 -03:00
ast: Remove StatementVariant::None
We can do without this.
This commit is contained in:
@@ -1785,7 +1785,6 @@ fn embedded_node(&self) -> &dyn NodeMut {
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum StatementVariant {
|
||||
None,
|
||||
NotStatement(Box<NotStatement>),
|
||||
BlockStatement(Box<BlockStatement>),
|
||||
BraceStatement(Box<BraceStatement>),
|
||||
@@ -1796,14 +1795,13 @@ pub enum StatementVariant {
|
||||
|
||||
impl Default for StatementVariant {
|
||||
fn default() -> Self {
|
||||
StatementVariant::None
|
||||
StatementVariant::DecoratedStatement(DecoratedStatement::default())
|
||||
}
|
||||
}
|
||||
|
||||
impl Acceptor for StatementVariant {
|
||||
fn accept<'a>(&'a self, visitor: &mut dyn NodeVisitor<'a>) {
|
||||
match self {
|
||||
StatementVariant::None => panic!("cannot visit null statement"),
|
||||
StatementVariant::NotStatement(node) => node.accept(visitor),
|
||||
StatementVariant::BlockStatement(node) => node.accept(visitor),
|
||||
StatementVariant::BraceStatement(node) => node.accept(visitor),
|
||||
@@ -1816,7 +1814,6 @@ fn accept<'a>(&'a self, visitor: &mut dyn NodeVisitor<'a>) {
|
||||
impl AcceptorMut for StatementVariant {
|
||||
fn accept_mut(&mut self, visitor: &mut dyn NodeVisitorMut) {
|
||||
match self {
|
||||
StatementVariant::None => panic!("cannot visit null statement"),
|
||||
StatementVariant::NotStatement(node) => node.accept_mut(visitor),
|
||||
StatementVariant::BlockStatement(node) => node.accept_mut(visitor),
|
||||
StatementVariant::BraceStatement(node) => node.accept_mut(visitor),
|
||||
@@ -1874,7 +1871,6 @@ pub fn as_decorated_statement(&self) -> Option<&DecoratedStatement> {
|
||||
|
||||
fn embedded_node(&self) -> &dyn NodeMut {
|
||||
match self {
|
||||
StatementVariant::None => panic!("cannot visit null statement"),
|
||||
StatementVariant::NotStatement(node) => &**node,
|
||||
StatementVariant::BlockStatement(node) => &**node,
|
||||
StatementVariant::BraceStatement(node) => &**node,
|
||||
|
||||
@@ -173,9 +173,7 @@ fn eval_statement(
|
||||
StatementVariant::SwitchStatement(switchstat) => {
|
||||
self.run_switch_statement(ctx, switchstat)
|
||||
}
|
||||
StatementVariant::DecoratedStatement(_)
|
||||
| StatementVariant::NotStatement(_)
|
||||
| StatementVariant::None => panic!(),
|
||||
StatementVariant::DecoratedStatement(_) | StatementVariant::NotStatement(_) => panic!(),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -571,7 +569,6 @@ fn job_is_simple_block(&self, job: &ast::JobPipeline) -> bool {
|
||||
// not block statements
|
||||
false
|
||||
}
|
||||
StatementVariant::None => panic!(),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -692,7 +689,6 @@ fn populate_job_process(
|
||||
StatementVariant::DecoratedStatement(decorated_statement) => {
|
||||
self.populate_plain_process(ctx, proc, decorated_statement)
|
||||
}
|
||||
StatementVariant::None => panic!(),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1614,9 +1610,9 @@ fn run_1_job(
|
||||
}
|
||||
// Other types should be impossible due to the
|
||||
// specific_statement_type_is_redirectable_block check.
|
||||
StatementVariant::NotStatement(_)
|
||||
| StatementVariant::DecoratedStatement(_)
|
||||
| StatementVariant::None => panic!(),
|
||||
StatementVariant::NotStatement(_) | StatementVariant::DecoratedStatement(_) => {
|
||||
panic!()
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user