diff --git a/mers_lib/src/parsing/types.rs b/mers_lib/src/parsing/types.rs index 99b37bc..a6b3c70 100755 --- a/mers_lib/src/parsing/types.rs +++ b/mers_lib/src/parsing/types.rs @@ -14,6 +14,7 @@ pub enum ParsedType { Tuple(Vec>), Object(Vec<(String, Vec)>), Type(String), + Function(Vec<(Self, Self)>), TypeWithInfo(String, String), } @@ -24,18 +25,18 @@ pub fn parse_single_type(src: &mut Source, srca: &Arc) -> Result { src.next_char(); - if let Some('{') = src.peek_char() { + if let Some('[') = src.peek_char() { src.next_char(); let types = parse_type(src, srca)?; let nc = src.next_char(); - if !matches!(nc, Some('}')) { + if !matches!(nc, Some(']')) { let nc = if let Some(nc) = nc { format!("'{nc}'") } else { format!("EOF") }; return Err(CheckError::new().msg(format!( - "No closing }} in reference type with opening {{! Found {nc} instead" + "No closing ] in reference type with opening [! Found {nc} instead" ))); } ParsedType::Reference(types)