Skip to content
This repository was archived by the owner on Feb 22, 2018. It is now read-only.

Commit d21817f

Browse files
committed
fix(static parser): Allow newlines in expressions.
Closes #297
1 parent e37bd8f commit d21817f

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

bin/parser_generator_for_spec.dart

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ main(arguments) {
1818
// List generated using:
1919
// node node_modules/karma/bin/karma run | grep -Eo ":XNAY:.*:XNAY:" | sed -e 's/:XNAY://g' | sed -e "s/^/'/" | sed -e "s/$/',/" | sort | uniq > missing_expressions
2020
injector.get(isGetter ? ParserGetterSetter : ParserGenerator).generateParser([
21+
"foo == 'bar' ||\nbaz"
2122
"null",
2223
"[1, 2].length",
2324
"doesNotExist",

lib/tools/parser_generator/source.dart

+4-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@ class SourceBuilder {
88
Map<String, Code> refs = {};
99
List<Code> codeRefs = [];
1010

11-
String str(String s) => '\'' + s.replaceAll('\'', '\\\'').replaceAll(r'$', r'\$') + '\'';
11+
String str(String s) => '\'' +
12+
s.replaceAll('\'', '\\\'')
13+
.replaceAll('\n', '\\n')
14+
.replaceAll(r'$', r'\$') + '\'';
1215
String ident(String s) => '_${s.replaceAll(NON_WORDS, '_')}_${s.hashCode}';
1316

1417
String ref(Code code) {

0 commit comments

Comments
 (0)