consulte o tipo de objeto na definição do objeto
note: O primeiro exemplo funciona. Mostra o que eu quero pegar. O segundo exemplo mostra que eu gostaria de declará-lo sem clichê, mas não consegui fazê-lo.
Eu só quero algo simples:
trait SelfTest[T <: SelfTest[T]] {_ : T =>
def get : T = this
}
class Test extends SelfTest[Test]
object Test extends Test
mas sem definição de classe clichê. Algo assim:
trait SelfTest[T <: SelfTest[T]] {_ : T =>
def get : T = this
}
object Test extends SelfTest[Test.type]
Mas este caminho é rejeitado por scala (illegal cyclic reference involving object Test
). Existe alguma mágica como#
assinar para denotar o objeto criado?