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:
@@ -1,13 +1,13 @@
|
||||
io.write(Num == Num) // expect: true
|
||||
io.write(Num == Bool) // expect: false
|
||||
IO.write(Num == Num) // expect: true
|
||||
IO.write(Num == Bool) // expect: false
|
||||
|
||||
// Not equal to other types.
|
||||
io.write(Num == 123) // expect: false
|
||||
io.write(Num == true) // expect: false
|
||||
IO.write(Num == 123) // expect: false
|
||||
IO.write(Num == true) // expect: false
|
||||
|
||||
io.write(Num != Num) // expect: false
|
||||
io.write(Num != Bool) // expect: true
|
||||
IO.write(Num != Num) // expect: false
|
||||
IO.write(Num != Bool) // expect: true
|
||||
|
||||
// Not equal to other types.
|
||||
io.write(Num != 123) // expect: true
|
||||
io.write(Num != true) // expect: true
|
||||
IO.write(Num != 123) // expect: true
|
||||
IO.write(Num != true) // expect: true
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
class Foo {
|
||||
static sayName {
|
||||
io.write(Foo.toString)
|
||||
IO.write(Foo.toString)
|
||||
}
|
||||
|
||||
sayName {
|
||||
io.write(Foo.toString)
|
||||
IO.write(Foo.toString)
|
||||
}
|
||||
|
||||
static toString { return "Foo!" }
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
class Foo {}
|
||||
|
||||
var foo = new Foo
|
||||
io.write(foo is Foo) // expect: true
|
||||
IO.write(foo is Foo) // expect: true
|
||||
|
||||
// TODO: Test precedence and grammar of what follows "new".
|
||||
|
||||
Reference in New Issue
Block a user