Skip to content

Commit

Permalink
use let-else to simplify code
Browse files Browse the repository at this point in the history
  • Loading branch information
arvidn committed Jan 31, 2024
1 parent f17fc07 commit 9863924
Showing 1 changed file with 4 additions and 9 deletions.
13 changes: 4 additions & 9 deletions src/run_program.rs
Original file line number Diff line number Diff line change
Expand Up @@ -276,16 +276,11 @@ impl<'a, D: Dialect> RunProgramContext<'a, D> {
};

// put a bunch of ops on op_stack
let (op_node, op_list) = match self.allocator.sexp(program) {
let SExp::Pair(op_node, op_list) = self.allocator.sexp(program) else {
// the program is just a bitfield path through the env tree
SExp::Atom => {
let r: Reduction =
traverse_path(self.allocator, self.allocator.atom(program), env)?;
self.push(r.1)?;
return Ok(r.0);
}
// the program is an operator and a list of operands
SExp::Pair(operator_node, operand_list) => (operator_node, operand_list),
let r: Reduction = traverse_path(self.allocator, self.allocator.atom(program), env)?;
self.push(r.1)?;
return Ok(r.0);
};

match self.allocator.sexp(op_node) {
Expand Down

0 comments on commit 9863924

Please sign in to comment.