diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-04-29 21:49:57 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-04-29 21:49:57 -0700 |
commit | 288728767877f95e644d02c0f15d5d319832187f (patch) | |
tree | 4ff2a5732afbead40a35841c635eec8845765074 /cpp/027debug.cc | |
parent | 35457609e311125446fed88e3841e0281c2ff708 (diff) | |
download | mu-288728767877f95e644d02c0f15d5d319832187f.tar.gz |
1224
Diffstat (limited to 'cpp/027debug.cc')
-rw-r--r-- | cpp/027debug.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/cpp/027debug.cc b/cpp/027debug.cc new file mode 100644 index 00000000..d81071e9 --- /dev/null +++ b/cpp/027debug.cc @@ -0,0 +1,21 @@ +//: Recipe to look at elements of containers. + +:(before "End Primitive Recipe Declarations") +_PRINT, +:(before "End Primitive Recipe Numbers") +Recipe_number["$print"] = _PRINT; +:(before "End Primitive Recipe Implementations") +case _PRINT: { + if (isa_literal(current_instruction().ingredients[0])) { + trace("run") << "$print: " << current_instruction().ingredients[0].name; + cout << current_instruction().ingredients[0].name; + break; + } + vector<int> result(read_memory(current_instruction().ingredients[0])); + for (size_t i = 0; i < result.size(); ++i) { + trace("run") << "$print: " << result[i]; + if (i > 0) cout << " "; + cout << result[i]; + } + break; +} |