diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-05-28 11:28:15 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-05-28 11:28:15 -0700 |
commit | 23fd54f120e7256ef3468721aa0c664985751d18 (patch) | |
tree | 10ac70dc2a969d30baf0e8b35b0d2f7f5eef56d3 /013literal_string.cc | |
parent | add0c3500e71df849ee7d3abf0e7670f742e8397 (diff) | |
download | mu-23fd54f120e7256ef3468721aa0c664985751d18.tar.gz |
1497 - 2 boneheaded bugs in parsing scenarios
Diffstat (limited to '013literal_string.cc')
-rw-r--r-- | 013literal_string.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/013literal_string.cc b/013literal_string.cc index 95f2975b..9b8ecba6 100644 --- a/013literal_string.cc +++ b/013literal_string.cc @@ -37,7 +37,11 @@ string slurp_quoted(istream& in) { int size = 0; while (!in.eof()) { char c = in.get(); -//? cout << c << '\n'; //? 1 +//? cout << (int)c << ": " << size << '\n'; //? 2 + if (c == '\\') { + out << (char)in.get(); + continue; + } out << c; //? cout << out.str() << "$\n"; //? 1 if (c == '[') ++size; @@ -67,6 +71,12 @@ recipe main [ ] +parse: ingredient: {name: "abc [def]", properties: ["abc [def]": "literal-string"]} +:(scenario string_literal_escaped) +recipe main [ + 1:address:array:character <- copy [abc \[def] +] ++parse: ingredient: {name: "abc [def", properties: ["abc [def": "literal-string"]} + :(scenario string_literal_and_comment) recipe main [ 1:address:array:character <- copy [abc] # comment |