Commit Graph
3 Commits
Author SHA1 Message Date
Lukas Werling d608a03244 test: add invalid trailing comma tests for list and map literals
Add test cases verifying that invalid trailing comma syntaxes in list literals
(e.g. `[,]`, `[1,,]`, `[1,,2]`) and map literals (e.g. `{,}`, `{1:1,,}`, `{1:1,,2:2}`)
correctly produce compile errors when evaluated via Meta.eval in a Fiber.
2015-05-30 20:17:12 +00:00
Lukas Werling d2c8bacbaa feat: allow trailing comma in list literal by early break on right bracket
Add support for trailing commas in list literals by checking for TOKEN_RIGHT_BRACKET
after parsing the last element in the list() function. When a trailing comma is
followed by the closing bracket, the loop breaks immediately instead of attempting
to parse another element.

Include a test case verifying that lists with trailing commas parse correctly and
elements are accessible by index.
2015-05-30 20:18:37 +00:00
Lukas Werling bf3aea5755 feat: allow trailing comma in map literal by checking right brace in parser
Add a check in the map parsing function to break when encountering a closing brace after a comma, enabling trailing commas in map literals. Include a test case verifying that maps with trailing commas parse and execute correctly.
2015-05-30 20:17:58 +00:00