Суперпроектору нельзя передать собственную ссылку, если параметр не объявлен как -имя - PullRequest
0 голосов
/ 13 мая 2011

Ну, у меня есть что-то вроде этого:

trait A

class Serving(a: => A)

object App extends Serving(App.Main) {
  object Main extends A
}

И я получаю ошибку super constructor cannot be passed a self reference unless parameter is declared by-name.Я могу обойтись, делая

object App extends Serving(Serv.Main)

object Serv {
  object Main extends A
}

, но я не хочу.Это добавляет 2 дополнительных .class и это кажется мне нелегким.

И использование object App extends Serving(this.Main) также создает ошибку.Структура A и Serving действительно не может быть изменена, но есть ли способ обойти эту ошибку?

1 Ответ

1 голос
/ 13 мая 2011

Ваш код прекрасно компилируется в Scala 2.8.1, даже если параметр не объявлен как имя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...