about summary refs log tree commit diff stats
path: root/010vm.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-06-13 23:08:46 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-06-13 23:08:46 -0700
commitc712c2717f7ee14a258b4299d5bda3577b4c13cb (patch)
treeeb5b1a0094607a8b1ca076af4d564173c0651f14 /010vm.cc
parentd44123cabaa730c778a0e2644c75dbfba6a7ab30 (diff)
downloadmu-c712c2717f7ee14a258b4299d5bda3577b4c13cb.tar.gz
1557
More concise traces for literal strings.
Diffstat (limited to '010vm.cc')
-rw-r--r--010vm.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/010vm.cc b/010vm.cc
index ffc92c60..5be84982 100644
--- a/010vm.cc
+++ b/010vm.cc
@@ -203,6 +203,9 @@ reagent::reagent() :value(0), initialized(false) {
   properties.push_back(pair<string, vector<string> >("", vector<string>()));
 }
 string reagent::to_string() const {
+  if (!properties.at(0).second.empty() && properties.at(0).second.at(0) == "literal-string") {
+    return emit_literal_string(name);
+  }
   ostringstream out;
   out << "{name: \"" << name << "\"";
   if (!properties.empty()) {
@@ -218,9 +221,14 @@ string reagent::to_string() const {
     }
   }
   out << "}";
+//?   if (properties.at(0).second.empty()) cerr << out.str(); //? 1
   return out.str();
 }
 
+string emit_literal_string(string name) {
+  return "{name: \""+name+"\", properties: [_: \"literal-string\"]}";
+}
+
 string instruction::to_string() const {
   if (is_label) return label;
   ostringstream out;