| 214 | return pass(expression); |
| 215 | } |
| 216 | function exprbrace(type) { |
| 217 | if (type == "op") { |
| 218 | if (content == "|") return cont(blockvars, poplex, pushlex("}", "block"), block); |
| 219 | if (content == "||") return cont(poplex, pushlex("}", "block"), block); |
| 220 | } |
| 221 | if (content == "mutable" || (content.match(/^\w+$/) && cx.stream.peek() == ":" |
| 222 | && !cx.stream.match("::", false))) |
| 223 | return pass(record_of(expression)); |
| 224 | return pass(block); |
| 225 | } |
| 226 | function record_of(comb) { |
| 227 | function ro(type) { |
| 228 | if (content == "mutable" || content == "with") {cx.marked = "keyword"; return cont(ro);} |