Files
wren/test/language/implicit_call/this.wren
Bob Nystrom c3e2f17758 Allow infix () and {} to call "call" on the left-hand side.
- Allow this for both argument lists and block arguments.

- Tweak precedence to make "." higher than infix "{}" to avoid a
  class body being parsed as the superclass clause's block argument.

- Convert all uses of ".call" to use this. (There was not a single
  case in the repo that ran into the getter ambiguity.)
2015-12-01 07:49:04 -08:00

28 lines
438 B
Plaintext

class CallArg {
static test() {
this("string") // expect: string
}
static call(arg) { System.print(arg) }
}
class CallBlock {
static test() {
this { "block" } // expect: block
}
static call(block) { System.print(block()) }
}
class CallBoth {
static test() {
this(1, 2) { 3 } // expect: 1 2 3
}
static call(a, b, c) { System.print("%(a) %(b) %(c())") }
}
CallArg.test()
CallBlock.test()
CallBoth.test()