¿Hay alguna documentación sobre la función "outer =>"? Parece una anotación de tipo propio con un tipo inferido. Sin embargo, tengo la sensación de que estoy equivocado.¿Qué significa "outer =>" en realidad?
Si fuera el caso, ¿es solo una manera diferente de expresar el acceso a super
?
trait A extends (B => C) {
outer =>
def apply(x: B): C = outer(x)
}
Gracias por su respuesta. ¿Cómo se expandiría el alcance externo en el ejemplo dado? ¿Exterior (x) sería el método de aplicación de (B => C)? ¿O sería el alcance "este" que es el método de aplicación del rasgo A? ¿O sería D's aplicar si hago una nueva D con A? –
En ambos casos, su ejemplo y la nueva D se extienden A, outer() sería outer.apply() de A. – pedrofurla
Para aquellos tan curiosos como yo, la 'otra forma' es A.this.x. – leedm777