refactor: convert IO from singleton instance to static class with metaclass native methods

Replace the global `io` singleton object with a static `IO` class, moving the `write` native from the instance to the metaclass. Update all benchmark, example, and test files to use `IO.write()` instead of `io.write()`.
This commit is contained in:
Bob Nystrom
2013-12-22 03:25:09 +00:00
parent 1a77a43fa0
commit 8bb1a94a25
119 changed files with 532 additions and 536 deletions
+3 -3
View File
@@ -13,6 +13,6 @@ var c = new Foo("c")
// Assignment is right-associative.
a.bar = b.bar = c.bar = "d"
io.write(a.toString) // expect: d
io.write(b.toString) // expect: d
io.write(c.toString) // expect: d
IO.write(a.toString) // expect: d
IO.write(b.toString) // expect: d
IO.write(c.toString) // expect: d
+1 -1
View File
@@ -1,6 +1,6 @@
class Foo {
bar = value {
io.write(value)
IO.write(value)
}
}
+1 -1
View File
@@ -3,4 +3,4 @@ class Foo {
}
var foo = new Foo
io.write(foo.bar = "value") // expect: result
IO.write(foo.bar = "value") // expect: result
+2 -2
View File
@@ -1,6 +1,6 @@
class Foo {
bar = value { io.write("set") }
bar { io.write("get") }
bar = value { IO.write("set") }
bar { IO.write("get") }
}
var foo = new Foo
+1 -1
View File
@@ -1,6 +1,6 @@
class Foo {
static bar = value {
io.write(value)
IO.write(value)
}
}