bug783.scala

来自「JAVA 语言的函数式编程扩展」· SCALA 代码 · 共 30 行

SCALA
30
字号
package test;object Main extends Application {  class Global {    case class Template(x : Int, y : Int) {      Console.println("outer: " + Global.this);    }  }  trait Contexts { self: Analyzer =>    val xxx : global.Template = {      assert(globalInit0 != null);      globalInit0.Template(10, 20);    }  }  abstract class Analyzer extends Contexts {    type Global <: Main.Global;    final val global : Global = globalInit;    def globalInit : Global;    final def globalInit0 = globalInit.asInstanceOf[global.type];  }    object global0 extends Global {    object analyzer extends Analyzer {      type Global = global0.type;      override def globalInit = global0;    }  }  Console.println(global0.analyzer.xxx);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?