From cf9ad28eb0a62c2c89f2f679157a54eded97c1cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edvard=20Th=C3=B6rnros?= Date: Mon, 11 Jan 2021 14:51:55 +0100 Subject: If-statements --- src/compiler.rs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/compiler.rs') diff --git a/src/compiler.rs b/src/compiler.rs index f691922..8275618 100644 --- a/src/compiler.rs +++ b/src/compiler.rs @@ -380,6 +380,14 @@ impl Compiler { self.assign(&name, block); } + (Token::If, _, _, _) => { + self.eat(); + self.expression(block); + let jump = block.add(Op::Illegal, self.line()); + self.scope(block); + block.patch(Op::JmpFalse(block.curr()), jump); + } + (Token::LeftBrace, _, _, _) => { self.scope(block); } -- cgit v1.2.1