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
+4 -4
View File
@@ -5,8 +5,8 @@ class Foo {
}
fooPrint {
io.write(_field1)
io.write(_field2)
IO.write(_field1)
IO.write(_field2)
}
}
@@ -17,8 +17,8 @@ class Bar is Foo {
}
barPrint {
io.write(_field1)
io.write(_field2)
IO.write(_field1)
IO.write(_field2)
}
}
+8 -8
View File
@@ -1,15 +1,15 @@
class Foo {
methodOnFoo { io.write("foo") }
method(a) { io.write("foo") }
method(a, b, c) { io.write("foo") }
override { io.write("foo") }
methodOnFoo { IO.write("foo") }
method(a) { IO.write("foo") }
method(a, b, c) { IO.write("foo") }
override { IO.write("foo") }
}
class Bar is Foo {
methodOnBar { io.write("bar") }
method(a, b) { io.write("bar") }
method(a, b, c, d) { io.write("bar") }
override { io.write("bar") }
methodOnBar { IO.write("bar") }
method(a, b) { IO.write("bar") }
method(a, b, c, d) { IO.write("bar") }
override { IO.write("bar") }
}
var bar = new Bar
+8 -8
View File
@@ -1,15 +1,15 @@
class Foo {
static methodOnFoo { io.write("foo") }
static method(a) { io.write("foo") }
static method(a, b, c) { io.write("foo") }
static override { io.write("foo") }
static methodOnFoo { IO.write("foo") }
static method(a) { IO.write("foo") }
static method(a, b, c) { IO.write("foo") }
static override { IO.write("foo") }
}
class Bar is Foo {
static methodOnBar { io.write("bar") }
static method(a, b) { io.write("bar") }
static method(a, b, c, d) { io.write("bar") }
static override { io.write("bar") }
static methodOnBar { IO.write("bar") }
static method(a, b) { IO.write("bar") }
static method(a, b, c, d) { IO.write("bar") }
static override { IO.write("bar") }
}
Bar.methodOnFoo // expect: foo
+9 -9
View File
@@ -5,12 +5,12 @@ var a = new A
var b = new B
var c = new C
io.write(a is A) // expect: true
io.write(a is B) // expect: false
io.write(a is C) // expect: false
io.write(b is A) // expect: true
io.write(b is B) // expect: true
io.write(b is C) // expect: false
io.write(c is A) // expect: true
io.write(c is B) // expect: true
io.write(c is C) // expect: true
IO.write(a is A) // expect: true
IO.write(a is B) // expect: false
IO.write(a is C) // expect: false
IO.write(b is A) // expect: true
IO.write(b is B) // expect: true
IO.write(b is C) // expect: false
IO.write(c is A) // expect: true
IO.write(c is B) // expect: true
IO.write(c is C) // expect: true