diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2024-05-05 21:12:16 -0700 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2024-05-05 21:12:16 -0700 |
| commit | 457c482397e2ca745067e5a3ef2c7d71d7daf187 (patch) | |
| tree | aef2b8d88421829105a3c6b8887d8ffde39d5e1e /parser.sml | |
| parent | Change some formatting (diff) | |
| download | sml-457c482397e2ca745067e5a3ef2c7d71d7daf187.tar.zst | |
Add tuples.
Diffstat (limited to 'parser.sml')
| -rw-r--r-- | parser.sml | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -351,7 +351,11 @@ struct val rec atpat : Syntax.pat parser = fn st => (Syntax.PWild <$ reserved "_" <|> Syntax.PInt <$> integer - <|> between (symbol "(") (symbol ")") pat + <|> bind (between (symbol "(") (symbol ")") (sepBy pat (symbol ","))) (fn pats => + const + (case pats of + [p] => p + | _ => Syntax.PTuple pats)) <|> Syntax.PVar <$> identifier) st and pat : Syntax.pat parser = fn st => atpat st |
