From c7d91769c4d6ff8091956adfa6c38c7a2c141b65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Fri, 15 Jan 2021 12:48:01 +0100 Subject: parse_type --- src/compiler.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/compiler.rs') diff --git a/src/compiler.rs b/src/compiler.rs index 3c5e8a4..282e582 100644 --- a/src/compiler.rs +++ b/src/compiler.rs @@ -434,7 +434,7 @@ impl Compiler { Token::Identifier(name) => { self.eat(); expect!(self, Token::Colon, "Expected ':' after parameter name."); - if let Ok(typ) = self.type_ident() { + if let Ok(typ) = self.parse_type() { function_block.args.push(typ.clone()); if let Ok(slot) = self.define_variable(&name, typ, &mut function_block) { self.stack_mut()[slot].active = true; @@ -452,7 +452,7 @@ impl Compiler { } Token::Arrow => { self.eat(); - if let Ok(typ) = self.type_ident() { + if let Ok(typ) = self.parse_type() { return_type = Some(typ); } else { error!(self, "Failed to parse return type."); @@ -614,7 +614,7 @@ impl Compiler { }); } - fn type_ident(&mut self) -> Result { + fn parse_type(&mut self) -> Result { match self.eat() { Token::Identifier(x) => { match x.as_str() { @@ -649,7 +649,7 @@ impl Compiler { tokens!(Token::Identifier(name), Token::Colon) => { self.eat(); self.eat(); - if let Ok(typ) = self.type_ident() { + if let Ok(typ) = self.parse_type() { expect!(self, Token::Equal, "Expected assignment."); self.definition_statement(&name, typ, block); } else { -- cgit v1.2.1