File: nested.scala

package info (click to toggle)
scala 2.11.12-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 62,924 kB
  • sloc: javascript: 28,808; java: 13,415; xml: 3,135; sh: 1,620; python: 756; makefile: 38; awk: 36; ansic: 6
file content (29 lines) | stat: -rw-r--r-- 503 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// A non-trivial example of nested classes (mostly to test
// ExplicitOuterClasses).

class A(pa : Int) {
  def a1 = pa;
  class B(pb : Int) {
    def b1 = pa+pb+a1;
    class C(pc : Int) extends A(b1) {
      def c1 = pc+pb+pa
    }
    val c1 = new C(66)
  }
}

trait M {
  val x : Int;
  def m1 = x
}

class A1(x0 : Int) extends A(x0) with M {
  val x = x0;
  class D() extends B(42) {
    val c2 = new C(66);
    class E() extends C(5) {
      def e1 = c1+b1+a1;
      def e2 = new D();
    }
  }
}