about summary refs log tree commit diff stats
path: root/072scenario_screen.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-10-28 13:08:26 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-10-28 13:19:41 -0700
commit1fa530589eee7b668d936e77c1c430f18907a481 (patch)
tree95a506363d74231d1e85b402549b0ca6a466391e /072scenario_screen.cc
parent48086e1044a8c000eb7977621cde0813f7bb70cf (diff)
downloadmu-1fa530589eee7b668d936e77c1c430f18907a481.tar.gz
2299 - check types of ingredients in calls
Still very incomplete:

a) we perform the check at runtime

b) tests for edit and sandbox apps no longer work; we can't fix them
until we get type parameters in both containers and recipes (because
list and list operations need to become generic).
Diffstat (limited to '072scenario_screen.cc')
-rw-r--r--072scenario_screen.cc18
1 files changed, 9 insertions, 9 deletions
diff --git a/072scenario_screen.cc b/072scenario_screen.cc
index ed2ddad3..f9536bc5 100644
--- a/072scenario_screen.cc
+++ b/072scenario_screen.cc
@@ -9,7 +9,7 @@
 scenario screen-in-scenario [
   assume-screen 5/width, 3/height
   run [
-    screen:address <- print-character screen:address, 97  # 'a'
+    screen:address:screen <- print-character screen:address:screen, 97  # 'a'
   ]
   screen-should-contain [
   #  01234
@@ -23,8 +23,8 @@ scenario screen-in-scenario [
 scenario screen-in-scenario-unicode-color [
   assume-screen 5/width, 3/height
   run [
-    screen:address <- print-character screen:address, 955/greek-small-lambda, 1/red
-    screen:address <- print-character screen:address, 97/a
+    screen:address:screen <- print-character screen:address:screen, 955/greek-small-lambda, 1/red
+    screen:address:screen <- print-character screen:address:screen, 97/a
   ]
   screen-should-contain [
   #  01234
@@ -39,8 +39,8 @@ scenario screen-in-scenario-unicode-color [
 scenario screen-in-scenario-color [
   assume-screen 5/width, 3/height
   run [
-    screen:address <- print-character screen:address, 955/greek-small-lambda, 1/red
-    screen:address <- print-character screen:address, 97/a, 7/white
+    screen:address:screen <- print-character screen:address:screen, 955/greek-small-lambda, 1/red
+    screen:address:screen <- print-character screen:address:screen, 97/a, 7/white
   ]
   # screen-should-contain shows everything
   screen-should-contain [
@@ -72,7 +72,7 @@ scenario screen-in-scenario-color [
 scenario screen-in-scenario-error [
   assume-screen 5/width, 3/height
   run [
-    screen:address <- print-character screen:address, 97  # 'a'
+    screen:address:screen <- print-character screen:address:screen, 97  # 'a'
   ]
   screen-should-contain [
   #  01234
@@ -90,7 +90,7 @@ scenario screen-in-scenario-error [
 scenario screen-in-scenario-color [
   assume-screen 5/width, 3/height
   run [
-    screen:address <- print-character screen:address, 97/a, 1/red
+    screen:address:screen <- print-character screen:address:screen, 97/a, 1/red
   ]
   screen-should-contain-in-color 2/green, [
   #  01234
@@ -139,13 +139,13 @@ Name[r]["screen"] = SCREEN;
 
 :(before "End Rewrite Instruction(curr)")
 // rewrite `assume-screen width, height` to
-// `screen:address <- new-fake-screen width, height`
+// `screen:address:screen <- new-fake-screen width, height`
 if (curr.name == "assume-screen") {
   curr.operation = Recipe_ordinal["new-fake-screen"];
   curr.name = "new-fake-screen";
   assert(curr.operation);
   assert(curr.products.empty());
-  curr.products.push_back(reagent("screen:address"));
+  curr.products.push_back(reagent("screen:address:screen"));
   curr.products.at(0).set_value(SCREEN);
 }