changeset 176:ab204751d1e7

Allow all expressions in array and list literals
author Mike Pavone <pavone@retrodev.com>
date Sat, 24 Aug 2013 09:53:20 -0700
parents 20b6041a8b23
children 76e3d4ae1746
files parser.js
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/parser.js	Thu Aug 22 15:12:15 2013 -0700
+++ b/parser.js	Sat Aug 24 09:53:20 2013 -0700
@@ -99,8 +99,8 @@
 'strpart = text:[^\\"\\\\]+ { return text.join(""); };' +
 'escape = "\\\\" char:[nt\\"r\\\\] { if (char == "n") { return "\\n"; } if (char == "r") { return "\\r"; } return char; };' +
 'object = "#{" ws messages:(assignment / funexpr)* "}" { return new object(messages); };' +
-'array = "#[" ws els:opexpr* "]" { return new arraylit(els); };' +
-'list = "[" ws els:opexpr* "]" { return new listlit(els); };' +
+'array = "#[" ws els:expr* "]" { return new arraylit(els); };' +
+'list = "[" ws els:expr* "]" { return new listlit(els); };' +
 'opsym = name:("&&" / "||" / "<=" / ">=" / "<" / ">" / "=" / "!=" / "+" / "-" / "." / "*" / "/" / "%" / "|") { return new symbol(name); };' +
 'assignment = ws sym:(symbol / opsym) hws "<-" expr:expr ws { return new assignment(sym, expr); }' +
 'lambda = args:((& ":") argname+  )? "{" ws exprs:(assignment / expr)* "}" { return new lambda(args[1], exprs); };' +