summaryrefslogtreecommitdiff
path: root/io/phonebook.io
diff options
context:
space:
mode:
Diffstat (limited to 'io/phonebook.io')
-rw-r--r--io/phonebook.io28
1 files changed, 28 insertions, 0 deletions
diff --git a/io/phonebook.io b/io/phonebook.io
new file mode 100644
index 0000000..c073cf2
--- /dev/null
+++ b/io/phonebook.io
@@ -0,0 +1,28 @@
+OperatorTable addAssignOperator(":", "atPutNumber")
+
+curlyBrackets := method(
+ r := Map clone
+ call message arguments foreach(arg,
+ r doMessage(arg)
+ )
+ r
+)
+
+#Map atPutNumber := method(n,elm,
+# self atPut(
+# n asMutable removePrefix("\"") removeSuffix("\""),
+# elm
+# )
+#)
+
+Map atPutNumber := method(
+ self atPut(
+ call evalArgAt(0) asMutable removePrefix("\"") removeSuffix("\""),
+ call evalArgAt(1)
+ )
+)
+
+s := File with("phonebook.txt") openForReading contents
+phoneNumbers := doString(s)
+phoneNumbers keys println
+phoneNumbers values println