Make constructors just methods.
* Eliminate "new" reserved word. * Allow "this" before a method definition to define a constructor. * Only create a default constructor for classes that don't define one.
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
new Fn {|a|
|
||||
Fn.new {|a|
|
||||
var a = "oops" // expect error
|
||||
}
|
||||
|
||||
@@ -11,4 +11,4 @@ class Foo {
|
||||
}
|
||||
}
|
||||
|
||||
(new Foo).bar
|
||||
Foo.new().bar
|
||||
@@ -14,5 +14,5 @@ class Foo {
|
||||
}
|
||||
}
|
||||
|
||||
(new Foo).method // expect: method
|
||||
Foo.new().method // expect: method
|
||||
Foo.classMethod // expect: class method
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
new Fn {
|
||||
Fn.new {
|
||||
IO.print(notDefined) // expect error
|
||||
}.call()
|
||||
|
||||
Reference in New Issue
Block a user