diff --git a/crates/lang/src/parser.rs b/crates/lang/src/parser.rs index e377156e..67336d66 100644 --- a/crates/lang/src/parser.rs +++ b/crates/lang/src/parser.rs @@ -103,6 +103,7 @@ pub fn import_parser() -> impl Parser impl Parser .ignore_then( r.clone() .separated_by(just(Token::Comma)) + .allow_trailing() .delimited_by(just(Token::LeftParen), just(Token::RightParen)), ) .then_ignore(just(Token::RArrow)) @@ -855,6 +859,7 @@ pub fn type_parser() -> impl Parser .then( r.clone() .separated_by(just(Token::Comma)) + .allow_trailing() .delimited_by(just(Token::LeftParen), just(Token::RightParen)) .or_not(), ) @@ -870,6 +875,7 @@ pub fn type_parser() -> impl Parser .ignore_then(select! {Token::UpName {name} => name}) .then( r.separated_by(just(Token::Comma)) + .allow_trailing() .delimited_by(just(Token::LeftParen), just(Token::RightParen)) .or_not(), ) @@ -917,6 +923,7 @@ pub fn type_name_with_args() -> impl Parser>) select! {Token::UpName { name } => name}.then( select! {Token::Name { name } => name} .separated_by(just(Token::Comma)) + .allow_trailing() .delimited_by(just(Token::LeftParen), just(Token::RightParen)) .or_not(), ),