[Analysis API] Explicitly specify the context module in a directive
This commit is contained in:
+1
@@ -22,6 +22,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -21,6 +21,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -21,6 +21,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -15,6 +15,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -13,6 +13,7 @@ val Int.ext: String
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -13,6 +13,7 @@ val Int.ext: String
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -13,6 +13,7 @@ val Int.ext: String
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -18,6 +18,7 @@ fun main() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ class Foo(a: Int, b: String) {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -9,6 +9,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -21,6 +21,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -14,6 +14,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -16,6 +16,7 @@ fun consume(obj: Foo) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -20,6 +20,7 @@ fun consume(text: String) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -20,6 +20,7 @@ fun consume(text: String) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -16,6 +16,7 @@ fun consume(n: Int) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -14,6 +14,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -21,6 +21,7 @@ fun consume(obj: Any) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -14,6 +14,7 @@ fun consume(n: Int) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -9,6 +9,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -9,6 +9,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -22,6 +22,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -19,6 +19,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -17,6 +17,7 @@ fun foo() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -24,6 +24,7 @@ fun callString(string: String): Int {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ object Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ fun test(a: A) {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ fun test(a: A) {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -19,6 +19,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -18,6 +18,7 @@ class Test {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -24,6 +24,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -14,6 +14,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -17,6 +17,7 @@ expect class Foo {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: common
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ fun consume(text: String) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -12,6 +12,7 @@ inline fun call(block: (Int) -> Int) {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -8,6 +8,7 @@ fun foo() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
analysis/analysis-api/testData/components/compilerFacility/compilation/codeFragments/syntaxError.txt
Vendored
+1
-1
@@ -1 +1 @@
|
|||||||
(134,135) SYNTAX Syntax error: Unexpected symbol.
|
(161,162) SYNTAX Syntax error: Unexpected symbol.
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: main.kt
|
// FILE: main.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -13,6 +13,7 @@ val b: Int = 5
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -11,6 +11,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
analysis/analysis-api/testData/referenceResolve/codeFragment/blockCodeFragment/NestedCodeFragment.kt
Vendored
+2
@@ -13,6 +13,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
@@ -20,6 +21,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+2
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
@@ -20,6 +21,7 @@ class Local {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+2
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
@@ -24,6 +25,7 @@ class Local {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+2
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
@@ -20,6 +21,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ val foo = "foo"
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
Vendored
+1
@@ -13,6 +13,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -13,6 +13,7 @@ val b: Int = 5
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/CompanionCall.kt
Vendored
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+1
@@ -11,6 +11,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+2
@@ -13,6 +13,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
@@ -20,6 +21,7 @@ fun bar() {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
+2
@@ -12,6 +12,7 @@ fun foo() {}
|
|||||||
|
|
||||||
// MODULE: contextFragment
|
// MODULE: contextFragment
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: contextFragment.kt
|
// FILE: contextFragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
@@ -23,6 +24,7 @@ object {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: contextFragment
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ val foo = "foo"
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
Vendored
+1
@@ -13,6 +13,7 @@ object Foo
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
Vendored
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
analysis/analysis-api/testData/referenceResolve/codeFragment/typeCodeFragment/GenericTypeArgument.kt
Vendored
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
Vendored
+1
@@ -12,6 +12,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
Vendored
+2
@@ -0,0 +1,2 @@
|
|||||||
|
Resolved to:
|
||||||
|
0: (in <local>: test) class Local
|
||||||
+1
@@ -10,6 +10,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
Vendored
+1
@@ -13,6 +13,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: TYPE
|
// CODE_FRAGMENT_KIND: TYPE
|
||||||
|
|||||||
+5
@@ -34,4 +34,9 @@ object AnalysisApiTestDirectives : SimpleDirectivesContainer() {
|
|||||||
description = "Mark the module as main",
|
description = "Mark the module as main",
|
||||||
applicability = DirectiveApplicability.Module,
|
applicability = DirectiveApplicability.Module,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
val CONTEXT_MODULE by stringDirective(
|
||||||
|
description = "Specifies the module name which should be treated as a context module for the current one",
|
||||||
|
applicability = DirectiveApplicability.Module
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -31,7 +31,7 @@ object KtCodeFragmentModuleFactory : KtModuleFactory {
|
|||||||
testServices: TestServices,
|
testServices: TestServices,
|
||||||
project: Project,
|
project: Project,
|
||||||
): KtModuleWithFiles {
|
): KtModuleWithFiles {
|
||||||
requireNotNull(contextModule) { "Context module should precede the code fragment module" }
|
requireNotNull(contextModule) { "Code fragment requires a context module" }
|
||||||
|
|
||||||
val testFile = testModule.files.singleOrNull() ?: error("A single file is expected for a code fragment module")
|
val testFile = testModule.files.singleOrNull() ?: error("A single file is expected for a code fragment module")
|
||||||
|
|
||||||
|
|||||||
+23
-10
@@ -16,6 +16,7 @@ import org.jetbrains.kotlin.analysis.project.structure.KtBinaryModule
|
|||||||
import org.jetbrains.kotlin.analysis.project.structure.KtDanglingFileModule
|
import org.jetbrains.kotlin.analysis.project.structure.KtDanglingFileModule
|
||||||
import org.jetbrains.kotlin.analysis.project.structure.KtModule
|
import org.jetbrains.kotlin.analysis.project.structure.KtModule
|
||||||
import org.jetbrains.kotlin.analysis.project.structure.KtNotUnderContentRootModule
|
import org.jetbrains.kotlin.analysis.project.structure.KtNotUnderContentRootModule
|
||||||
|
import org.jetbrains.kotlin.analysis.test.framework.AnalysisApiTestDirectives
|
||||||
import org.jetbrains.kotlin.analysis.test.framework.services.environmentManager
|
import org.jetbrains.kotlin.analysis.test.framework.services.environmentManager
|
||||||
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
|
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
|
||||||
import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot
|
import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot
|
||||||
@@ -25,6 +26,7 @@ import org.jetbrains.kotlin.platform.TargetPlatform
|
|||||||
import org.jetbrains.kotlin.platform.js.JsPlatforms
|
import org.jetbrains.kotlin.platform.js.JsPlatforms
|
||||||
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
|
import org.jetbrains.kotlin.platform.jvm.JvmPlatforms
|
||||||
import org.jetbrains.kotlin.platform.jvm.isJvm
|
import org.jetbrains.kotlin.platform.jvm.isJvm
|
||||||
|
import org.jetbrains.kotlin.test.directives.model.singleOrZeroValue
|
||||||
import org.jetbrains.kotlin.test.model.DependencyRelation
|
import org.jetbrains.kotlin.test.model.DependencyRelation
|
||||||
import org.jetbrains.kotlin.test.model.TestModule
|
import org.jetbrains.kotlin.test.model.TestModule
|
||||||
import org.jetbrains.kotlin.test.services.*
|
import org.jetbrains.kotlin.test.services.*
|
||||||
@@ -46,9 +48,7 @@ object TestModuleStructureFactory {
|
|||||||
testServices: TestServices,
|
testServices: TestServices,
|
||||||
project: Project
|
project: Project
|
||||||
): KtModuleProjectStructure {
|
): KtModuleProjectStructure {
|
||||||
val modules = moduleStructure.modules.mapWithPrevious<TestModule, KtModuleWithFiles> { contextModule, testModule ->
|
val modules = createModules(moduleStructure, testServices, project)
|
||||||
testServices.getKtModuleFactoryForTestModule(testModule).createModule(testModule, contextModule, testServices, project)
|
|
||||||
}
|
|
||||||
|
|
||||||
val modulesByName = modules.associateByName()
|
val modulesByName = modules.associateByName()
|
||||||
|
|
||||||
@@ -64,14 +64,27 @@ object TestModuleStructureFactory {
|
|||||||
return KtModuleProjectStructure(modules, libraryCache.values)
|
return KtModuleProjectStructure(modules, libraryCache.values)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun <T : Any, R> List<T>.mapWithPrevious(transform: (R?, T) -> R): List<R> {
|
private fun createModules(
|
||||||
val result = ArrayList<R>(this.size)
|
moduleStructure: TestModuleStructure,
|
||||||
var previousResult: R? = null
|
testServices: TestServices,
|
||||||
for (item in this) {
|
project: Project
|
||||||
val newResult = transform(previousResult, item)
|
): List<KtModuleWithFiles> {
|
||||||
result.add(newResult)
|
val moduleCount = moduleStructure.modules.size
|
||||||
previousResult = newResult
|
val existingModules = HashMap<String, KtModuleWithFiles>(moduleCount)
|
||||||
|
val result = ArrayList<KtModuleWithFiles>(moduleCount)
|
||||||
|
|
||||||
|
for (testModule in moduleStructure.modules) {
|
||||||
|
val contextModuleName = testModule.directives.singleOrZeroValue(AnalysisApiTestDirectives.CONTEXT_MODULE)
|
||||||
|
val contextModule = contextModuleName?.let(existingModules::getValue)
|
||||||
|
|
||||||
|
val moduleWithFiles = testServices
|
||||||
|
.getKtModuleFactoryForTestModule(testModule)
|
||||||
|
.createModule(testModule, contextModule, testServices, project)
|
||||||
|
|
||||||
|
existingModules[testModule.name] = moduleWithFiles
|
||||||
|
result.add(moduleWithFiles)
|
||||||
}
|
}
|
||||||
|
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -8,6 +8,7 @@ fun test() {
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: BLOCK
|
// CODE_FRAGMENT_KIND: BLOCK
|
||||||
|
|||||||
+1
@@ -15,6 +15,7 @@ fun consume(foo: Foo) {}
|
|||||||
|
|
||||||
// MODULE: main
|
// MODULE: main
|
||||||
// MODULE_KIND: CodeFragment
|
// MODULE_KIND: CodeFragment
|
||||||
|
// CONTEXT_MODULE: context
|
||||||
|
|
||||||
// FILE: fragment.kt
|
// FILE: fragment.kt
|
||||||
// CODE_FRAGMENT_KIND: EXPRESSION
|
// CODE_FRAGMENT_KIND: EXPRESSION
|
||||||
|
|||||||
Reference in New Issue
Block a user