mindustry logic execution, map- and schematic- parsing and rendering
Diffstat (limited to 'lemu/src/parser.rs')
-rw-r--r--lemu/src/parser.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/lemu/src/parser.rs b/lemu/src/parser.rs
index f81c71b..04305ad 100644
--- a/lemu/src/parser.rs
+++ b/lemu/src/parser.rs
@@ -466,19 +466,19 @@ pub fn parse<'source, W: Wr>(
executor.jmp();
unfinished_jumps.push((UJump::Always, i, executor.last()));
} else {
- let op = op.try_into().map_err(|()| err!(ExpectedOp(op)))?;
+ let op = op.try_into().map_err(|op| err!(ExpectedOp(op)))?;
let a = take_var!(tok!()?)?;
let b = take_var!(tok!()?)?;
executor.jmp();
unfinished_jumps.push((UJump::Sometimes { a, b, op }, i, executor.last()));
}
- } else if let Ok(n) = take_int!(tok) {
+ } else if let Ok(n) = take_int!(tok.clone()) {
let to = Instruction(n);
let op = tok!()?;
if op == Token::Always {
executor.add(AlwaysJump { to });
} else {
- let op = op.try_into().map_err(|()| err!(ExpectedOp(op)))?;
+ let op = op.try_into().map_err(|op| err!(ExpectedOp(op)))?;
let a = take_var!(tok!()?)?;
let b = take_var!(tok!()?)?;
executor.add(Jump::new(op, to, a, b));
@@ -490,12 +490,12 @@ pub fn parse<'source, W: Wr>(
// op add c 1 2
Token::Op => {
let op = tok!()?;
- if let Ok(op) = MathOp1::try_from(op) {
+ if let Ok(op) = MathOp1::try_from(op.clone()) {
// assigning to a var is useless but legal
let out = take_numvar!(tok!()?)?;
let x = take_numvar!(tok!()?)?;
executor.add(Op1::new(op, x, out));
- } else if let Ok(op) = MathOp2::try_from(op) {
+ } else if let Ok(op) = MathOp2::try_from(op.clone()) {
let out = take_numvar!(tok!()?)?;
let a = take_numvar!(tok!()?)?;
let b = take_numvar!(tok!()?)?;