|
1 | 1 | :js
|
2 |
| -// :de |
3 |
| -// :sjs |
4 |
| -// :pt |
5 |
| -// :elt |
6 | 2 |
|
7 |
| -:global |
8 |
| -:d |
9 |
| -:todo |
10 | 3 |
|
| 4 | +class Foo with |
| 5 | + val x = 10 |
| 6 | + fun foo = x + 1 |
11 | 7 |
|
| 8 | +data class Bar(y) extends Foo with |
| 9 | + fun bar = y + 1 |
12 | 10 |
|
| 11 | +:dr |
| 12 | +data class Baz(z) extends Bar(z * 1) with |
| 13 | + fun baz = this.bar * 2 |
| 14 | +//│ Traversing block: Blk(List(Parameterized(None,Cls,class:Baz‹715›,member:Baz‹714›,List(),ParamList(‹›,List(Param(‹val›,z‹717›,None,Modulefulness(None))),None),Some(New(SynthSel(Ref(member:Bar‹702›),Ident(class)),List(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Ref(z‹717›),None), Fld(‹›,Lit(IntLit(1)),None))))),None)),( ‹method› val member:z‹718› = z‹717›#0; ‹method› fun member:baz‹713› = builtin:*‹21›#0(class:Baz‹715›#0.bar, 2)‹builtin:*‹21››; ),None,List(Modifier(keyword 'data')))),Lit(UnitLit(false))) |
| 15 | +//│ | Traversing statement: Parameterized(None,Cls,class:Baz‹715›,member:Baz‹714›,List(),ParamList(‹›,List(Param(‹val›,z‹717›,None,Modulefulness(None))),None),Some(New(SynthSel(Ref(member:Bar‹702›),Ident(class)),List(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Ref(z‹717›),None), Fld(‹›,Lit(IntLit(1)),None))))),None)),( ‹method› val member:z‹718› = z‹717›#0; ‹method› fun member:baz‹713› = builtin:*‹21›#0(class:Baz‹715›#0.bar, 2)‹builtin:*‹21››; ),None,List(Modifier(keyword 'data'))) |
| 16 | +//│ | Resolving definition: Parameterized(None,Cls,class:Baz‹715›,member:Baz‹714›,List(),ParamList(‹›,List(Param(‹val›,z‹717›,None,Modulefulness(None))),None),Some(New(SynthSel(Ref(member:Bar‹702›),Ident(class)),List(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Ref(z‹717›),None), Fld(‹›,Lit(IntLit(1)),None))))),None)),( ‹method› val member:z‹718› = z‹717›#0; ‹method› fun member:baz‹713› = builtin:*‹21›#0(class:Baz‹715›#0.bar, 2)‹builtin:*‹21››; ),None,List(Modifier(keyword 'data'))) |
| 17 | +//│ | | Resolving class definition Parameterized(None,Cls,class:Baz‹715›,member:Baz‹714›,List(),ParamList(‹›,List(Param(‹val›,z‹717›,None,Modulefulness(None))),None),Some(New(SynthSel(Ref(member:Bar‹702›),Ident(class)),List(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Ref(z‹717›),None), Fld(‹›,Lit(IntLit(1)),None))))),None)),( ‹method› val member:z‹718› = z‹717›#0; ‹method› fun member:baz‹713› = builtin:*‹21›#0(class:Baz‹715›#0.bar, 2)‹builtin:*‹21››; ),None,List(Modifier(keyword 'data'))) |
| 18 | +//│ | | Resolving parameter ‹val›z‹717› |
| 19 | +//│ | | Traversing block: Blk(List(TermDefinition(Some(class:Baz‹715›),ImmutVal,member:z‹718›,List(),None,None,Some(Ref(z‹717›)),‹class-param-res›‹719›,‹method›,Modulefulness(None),List()), TermDefinition(Some(class:Baz‹715›),Fun,member:baz‹713›,List(),None,None,Some(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None))))),‹result of member:baz‹713››‹722›,‹method›,Modulefulness(None),List())),Lit(UnitLit(false))) |
| 20 | +//│ | | | Traversing statement: TermDefinition(Some(class:Baz‹715›),ImmutVal,member:z‹718›,List(),None,None,Some(Ref(z‹717›)),‹class-param-res›‹719›,‹method›,Modulefulness(None),List()) |
| 21 | +//│ | | | Resolving definition: TermDefinition(Some(class:Baz‹715›),ImmutVal,member:z‹718›,List(),None,None,Some(Ref(z‹717›)),‹class-param-res›‹719›,‹method›,Modulefulness(None),List()) |
| 22 | +//│ | | | | Resolving value definition TermDefinition(Some(class:Baz‹715›),ImmutVal,member:z‹718›,List(),None,None,Some(Ref(z‹717›)),‹class-param-res›‹719›,‹method›,Modulefulness(None),List()) |
| 23 | +//│ | | | | Traversing term: Ref(z‹717›) |
| 24 | +//│ | | | | | Resolving resolvable term: Ref(z‹717›), (inPrefix = false) |
| 25 | +//│ | | | | | | Resolving with defn = None |
| 26 | +//│ | | | | | ~> Ref(z‹717›) |
| 27 | +//│ | | | Traversing statement: TermDefinition(Some(class:Baz‹715›),Fun,member:baz‹713›,List(),None,None,Some(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None))))),‹result of member:baz‹713››‹722›,‹method›,Modulefulness(None),List()) |
| 28 | +//│ | | | Resolving definition: TermDefinition(Some(class:Baz‹715›),Fun,member:baz‹713›,List(),None,None,Some(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None))))),‹result of member:baz‹713››‹722›,‹method›,Modulefulness(None),List()) |
| 29 | +//│ | | | | Resolving function definition TermDefinition(Some(class:Baz‹715›),Fun,member:baz‹713›,List(),None,None,Some(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None))))),‹result of member:baz‹713››‹722›,‹method›,Modulefulness(None),List()) |
| 30 | +//│ | | | | Traversing term: App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None)))) |
| 31 | +//│ | | | | | Resolving resolvable term: App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None)))), (inPrefix = false) |
| 32 | +//│ | | | | | | Resolving resolvable term: Ref(builtin:*‹21›), (inPrefix = false) |
| 33 | +//│ | | | | | | | Resolving with defn = None |
| 34 | +//│ | | | | | | ~> Ref(builtin:*‹21›) |
| 35 | +//│ | | | | | | Resolving with defn = None |
| 36 | +//│ | | | | | | Traversing term: Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None))) |
| 37 | +//│ | | | | | | | Traversing term: Sel(Ref(class:Baz‹715›),Ident(bar)) |
| 38 | +//│ | | | | | | | | Resolving resolvable term: Sel(Ref(class:Baz‹715›),Ident(bar)), (inPrefix = false) |
| 39 | +//│ | | | | | | | | | Traversing term: Ref(class:Baz‹715›) |
| 40 | +//│ | | | | | | | | | | Resolving resolvable term: Ref(class:Baz‹715›), (inPrefix = false) |
| 41 | +//│ | | | | | | | | | | | Resolving with defn = None |
| 42 | +//│ | | | | | | | | | | ~> Ref(class:Baz‹715›) |
| 43 | +//│ | | | | | | | | | Resolving symbol for Sel(Ref(class:Baz‹715›),Ident(bar)), defn = Some(Parameterized(None,Cls,class:Baz‹715›,member:Baz‹714›,List(),ParamList(‹›,List(Param(‹val›,z‹717›,None,Modulefulness(None))),None),Some(New(SynthSel(Ref(member:Bar‹702›),Ident(class)),List(App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Ref(z‹717›),None), Fld(‹›,Lit(IntLit(1)),None))))),None)),( ‹method› val member:z‹718› = z‹717›#0; ‹method› fun member:baz‹713› = builtin:*‹21›#0(class:Baz‹715›#0.bar, 2)‹builtin:*‹21››; ),None,List(Modifier(keyword 'data')))) |
| 44 | +//│ | | | | | | | | | Resolving with defn = None |
| 45 | +//│ | | | | | | | | ~> Sel(Ref(class:Baz‹715›),Ident(bar)) |
| 46 | +//│ | | | | | | | Traversing term: Lit(IntLit(2)) |
| 47 | +//│ | | | | | ~> App(Ref(builtin:*‹21›),Tup(List(Fld(‹›,Sel(Ref(class:Baz‹715›),Ident(bar)),None), Fld(‹›,Lit(IntLit(2)),None)))) |
| 48 | +//│ | | | Traversing term: Lit(UnitLit(false)) |
| 49 | +//│ | Traversing term: Lit(UnitLit(false)) |
0 commit comments