blob: 0500ed04c63051e278c0c5d523298a94dfe8c905 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
package foo
import scala.language.dynamics
class DoesntExtendDynamic {
def applyDynamic(name: String)(s: String): Int = 1
def applyDynamic(name: String)(x: Int): Int = 2
}
class A extends Dynamic {
def applyDynamic(name: String)(s: String): Int = 1
def applyDynamic(name: String)(x: Int): Int = 2
}
class B extends Dynamic {
def applyDynamic[T1](name: String)(x: T1): Int = 1
def applyDynamic[T1, T2](name: String)(x: T1, y: T2): Int = 2
def applyDynamic[T1, T2](name: String)(x: String, y: T1, z: T2): Int = 3
}
|