diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-08-31 09:53:11 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-08-31 09:53:11 -0700 |
commit | ce2e604ec97259cbc143f9b6ae429b45d33a836f (patch) | |
tree | 485db20e667cc21c8066a7291df27fb6a225c220 | |
parent | 93e422c86cb022b75e260637c65f78d72cc06b60 (diff) | |
download | mu-ce2e604ec97259cbc143f9b6ae429b45d33a836f.tar.gz |
3285
-rw-r--r-- | 010vm.cc | 1 | ||||
-rw-r--r-- | 014literal_string.cc | 2 | ||||
-rw-r--r-- | 016dilated_reagent.cc | 10 | ||||
-rw-r--r-- | 017parse_tree.cc | 6 |
4 files changed, 10 insertions, 9 deletions
diff --git a/010vm.cc b/010vm.cc index 22d9d9ad..7afb3d4f 100644 --- a/010vm.cc +++ b/010vm.cc @@ -270,6 +270,7 @@ reagent::reagent(const string& s) :original_string(s), type(NULL), value(0), ini first_row >> std::noskipws; name = slurp_until(first_row, ':'); string_tree* type_names = parse_property_list(first_row); + // End Parsing Reagent Type Property(type_names) type = new_type_tree(type_names); delete type_names; // special cases diff --git a/014literal_string.cc b/014literal_string.cc index ec6a859f..bd412ad4 100644 --- a/014literal_string.cc +++ b/014literal_string.cc @@ -9,7 +9,7 @@ :(scenarios load) :(scenario string_literal) def main [ - 1:address:array:character <- copy [abc def] # copy can't really take a string + 1:address:array:character <- copy [abc def] ] +parse: ingredient: {"abc def": "literal-string"} diff --git a/016dilated_reagent.cc b/016dilated_reagent.cc index 38bb5578..fe990c6d 100644 --- a/016dilated_reagent.cc +++ b/016dilated_reagent.cc @@ -107,17 +107,17 @@ if (s.at(0) == '{') { return; } { - string_tree* value = new string_tree(next_word(in)); - // End Parsing Reagent Type Property(value) - type = new_type_tree(value); - delete value; + string_tree* type_names = new string_tree(next_word(in)); + // End Parsing Dilated Reagent Type Property(type_names) + type = new_type_tree(type_names); + delete type_names; } while (has_data(in)) { string key = slurp_key(in); if (key.empty()) continue; if (key == "}") continue; string_tree* value = new string_tree(next_word(in)); - // End Parsing Reagent Property(value) + // End Parsing Dilated Reagent Property(value) properties.push_back(pair<string, string_tree*>(key, value)); } return; diff --git a/017parse_tree.cc b/017parse_tree.cc index 833fb978..ce744f0f 100644 --- a/017parse_tree.cc +++ b/017parse_tree.cc @@ -10,10 +10,10 @@ def main [ ] +parse: product: {1: "number", "foo": ("bar" ("baz" "quux"))} -:(before "End Parsing Reagent Property(value)") -value = parse_string_tree(value); -:(before "End Parsing Reagent Type Property(value)") +:(before "End Parsing Dilated Reagent Property(value)") value = parse_string_tree(value); +:(before "End Parsing Dilated Reagent Type Property(type_names)") +type_names = parse_string_tree(type_names); :(code) string_tree* parse_string_tree(string_tree* s) { |