Optimized task creation for local functions and variables

Original commit: 68389d34e4
This commit is contained in:
Stanislav Erokhin
2015-09-02 16:23:06 +03:00
parent 1fdc2b5d56
commit 4130a88832
3 changed files with 17 additions and 17 deletions
@@ -7,20 +7,20 @@ import bar.*
var b = ""
val c: /*c:foo.A c:foo.A.Companion p:foo*/String
get() = /*p:foo p:bar c:foo.A c:foo.A.Companion*/b
get() = /*c:foo.A*/b
var d: /*c:foo.A c:foo.A.Companion p:foo*/String = "ddd"
get() = /*p:foo p:bar c:foo.A c:foo.A.Companion*/$d
set(v) { /*p:foo p:bar c:foo.A c:foo.A.Companion*/$d = v }
get() = /*c:foo.A*/$d
set(v) { /*c:foo.A*/$d = v }
fun foo() {
/*p:foo p:bar c:foo.A c:foo.A.Companion*/a
/*p:foo p:bar c:foo.A c:foo.A.Companion*/foo()
/*c:foo.A*/a
/*c:foo.A*/foo()
this./*c:foo.A*/a
this./*c:foo.A*/foo()
/*p:foo p:bar c:foo.A c:foo.A.Companion*/baz()
/*p:foo p:bar c:foo.A c:foo.A.Companion*/Companion./*c:foo.A.Companion*/a
/*p:foo p:bar c:foo.A c:foo.A.Companion*/O./*c:foo.A.O*/v = "OK"
/*c:foo.A c:foo.A.Companion p:foo p:bar*/baz()
/*c:foo.A c:foo.A.Companion p:foo p:bar*/Companion./*c:foo.A.Companion*/a
/*c:foo.A c:foo.A.Companion p:foo p:bar*/O./*c:foo.A.O*/v = "OK"
}
class B {
@@ -59,10 +59,10 @@ import bar.*
val a = 1
fun foo() {
/*p:foo p:bar c:foo.E*/a
/*p:foo p:bar c:foo.E*/Y./*c:foo.E*/a
/*p:foo p:bar c:foo.E*/foo()
/*p:foo p:bar c:foo.E*/X./*c:foo.E*/foo()
/*c:foo.E*/a
/*c:foo.E p:foo p:bar*/Y./*c:foo.E*/a
/*c:foo.E*/foo()
/*c:foo.E p:foo p:bar*/X./*c:foo.E*/foo()
}
}
@@ -8,7 +8,7 @@ import bar.*
val a = 1
val b = a
fun localFun() = b
fun /*p:local.declarations*/Int.localExtFun() = /*p:local.declarations p:bar*/localFun()
fun /*p:local.declarations*/Int.localExtFun() = localFun()
interface LocalI {
var a: /*p:local.declarations*/Int
@@ -30,10 +30,10 @@ import bar.*
fun foo(): LocalI = null as LocalI
}
/*p:local.declarations p:bar*/localFun()
localFun()
1./*p:local.declarations p:bar*/localExtFun()
val c = /*p:local.declarations p:bar*/LocalC()
val c = LocalC()
c.a
c.b
c.foo()
@@ -12,6 +12,6 @@ import baz./*p:baz*/C
}
/*p:foo*/fun /*p:foo*/MyClass.extFunc(p: /**p:foo p:bar*//*p:foo*/Array</*p:foo p:bar*/B>, e: /*p:foo*/MyEnum, c: /**???*/C): /*p:foo*/MyInterface {
/*p:foo p:bar c:foo.MyClass*/b
return /*p:foo p:bar c:foo.MyClass*/MyClass()
/*c:foo.MyClass p:foo p:bar*/b
return /*c:foo.MyClass p:foo p:bar*/MyClass()
}