Remove unused pipe node definitions

The `Pipe` node and its associated logic have been removed from the AST.
This commit cleans up the code by removing all references to this
defunct node in the analyzer, binder, captures, dumper, lowering,
macros, optimizer, and type checker. The parser no longer recognizes the
`pipe` keyword.
This commit is contained in:
2026-03-23 10:22:12 +01:00
parent 99b540c84e
commit 1875cfdc9b
14 changed files with 85 additions and 256 deletions
-18
View File
@@ -226,24 +226,6 @@ impl<'a> Analyzer<'a> {
Purity::Impure,
)
}
NodeKind::Pipe {
inputs,
lambda,
} => {
let mut analyzed_inputs = Vec::with_capacity(inputs.len());
for input in inputs {
analyzed_inputs.push(Rc::new(self.visit(input.clone())));
}
let a_lambda = Rc::new(self.visit(lambda.clone()));
(
NodeKind::Pipe {
inputs: analyzed_inputs,
lambda: a_lambda,
},
Purity::Impure,
)
}
NodeKind::Block { exprs } => {
let mut new_exprs = Vec::with_capacity(exprs.len());
let mut p = Purity::Pure;