por favor considere este código:Conseguir referencia a un parámetro de la función externa que tiene un nombre en conflicto
trait A {
def a : Int
}
def f (a : Int) = {
def a0 = a
new A {
def a = a0
}
}
El problema es bastante evidente: def a0 = a
es un típico código repetitivo molesto y la situación sólo empeora cuando más parámetros consiguen introducido.
Me pregunto si es posible de alguna manera obtener una referencia directa a la variable a
del ámbito exterior dentro de la declaración de la instancia del rasgo y así deshacerse del intermedio a0
.
Tenga en cuenta que no se permite cambiar el nombre del parámetro de entrada de la función, ya que está cambiando el rasgo.
Gracias, elector anónimo. Nunca perdí la fe en ti, mucho. Pero el verdadero agradecimiento va para las personas que hacen preguntas locas y para las otras personas que las responden tan rápido que cuando pienso en algo, tiene que ser realmente loco. –