Files
kotlin-fork/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideConstructorScript.txt
Dmitrii Gridin d5cfea330b [LL FIR] support parameters resolution
Script parameters now can be resolved independently of the script.
But, as parameters are part of the script, their resolve will be called
before the script.

^KT-66276 Fixed
2024-03-07 12:50:59 +00:00

293 lines
14 KiB
Plaintext
Vendored

RAW_FIR:
FILE: [ResolvedTo(RAW_FIR)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(RAW_FIR)] class SubClass : AbstractClass<Int> {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<AbstractClass<Int>>
}
}
public abstract [ResolvedTo(RAW_FIR)] class AbstractClass<[ResolvedTo(RAW_FIR)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(RAW_FIR)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
IMPORTS:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(RAW_FIR)] class SubClass : AbstractClass<Int> {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<AbstractClass<Int>>
}
}
public abstract [ResolvedTo(RAW_FIR)] class AbstractClass<[ResolvedTo(RAW_FIR)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(RAW_FIR)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
COMPILER_REQUIRED_ANNOTATIONS:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] class SubClass : AbstractClass<Int> {
public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<AbstractClass<Int>>
}
}
public abstract [ResolvedTo(RAW_FIR)] class AbstractClass<[ResolvedTo(RAW_FIR)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(RAW_FIR)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
COMPANION_GENERATION:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(COMPANION_GENERATION)] class SubClass : AbstractClass<Int> {
public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<AbstractClass<Int>>
}
}
public abstract [ResolvedTo(RAW_FIR)] class AbstractClass<[ResolvedTo(RAW_FIR)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(RAW_FIR)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
SUPER_TYPES:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(SUPER_TYPES)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<AbstractClass<R|kotlin/Int|>>
}
}
public abstract [ResolvedTo(SUPER_TYPES)] class AbstractClass<[ResolvedTo(SUPER_TYPES)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(SUPER_TYPES)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
TYPES:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(TYPES)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public? [ResolvedTo(TYPES)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(SUPER_TYPES)] class AbstractClass<[ResolvedTo(SUPER_TYPES)] T> : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(SUPER_TYPES)] T>([ResolvedTo(RAW_FIR)] t: T): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
STATUS:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(STATUS)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(STATUS)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
EXPECT_ACTUAL_MATCHING:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@kotlin.script.templates.standard.ScriptTemplateWithArgs)
SCRIPT: [ResolvedTo(RAW_FIR)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
CONTRACTS:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(TYPES)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(CONTRACTS)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(CONTRACTS)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
IMPLICIT_TYPES_BODY_RESOLVE:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(TYPES)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
CONSTANT_EVALUATION:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(TYPES)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(CONSTANT_EVALUATION)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(CONSTANT_EVALUATION)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
ANNOTATION_ARGUMENTS:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(TYPES)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
LAZY_super<R|second/AbstractClass<kotlin/Int>|>
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
BODY_RESOLVE:
FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(TYPES)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
super<R|second/AbstractClass<kotlin/Int>|>(Int(0))
}
}
public abstract [ResolvedTo(STATUS)] class AbstractClass<[ResolvedTo(STATUS)] T> : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(STATUS)] T>([ResolvedTo(STATUS)] t: R|T|): R|second/AbstractClass<T>| {
LAZY_super<R|kotlin/Any|>
}
}
FILE RAW TO BODY:
FILE: [ResolvedTo(BODY_RESOLVE)] substitutionFakeOverrideConstructorScript.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(BODY_RESOLVE)] <script-substitutionFakeOverrideConstructorScript.kts>
[ResolvedTo(BODY_RESOLVE)] lval args: R|kotlin/Array<kotlin/String>|
public abstract [ResolvedTo(BODY_RESOLVE)] class SubClass : R|second/AbstractClass<kotlin/Int>| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=SubClass] constructor(): R|second/SubClass| {
super<R|second/AbstractClass<kotlin/Int>|>(Int(0))
}
}
public abstract [ResolvedTo(BODY_RESOLVE)] class AbstractClass<[ResolvedTo(BODY_RESOLVE)] T> : R|kotlin/Any| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=AbstractClass] constructor<[ResolvedTo(BODY_RESOLVE)] T>([ResolvedTo(BODY_RESOLVE)] t: R|T|): R|second/AbstractClass<T>| {
super<R|kotlin/Any|>()
}
}