FIR: add raw fir building delegate expression test
This commit is contained in:
+5
@@ -60,6 +60,11 @@ public class LightTree2FirConverterTestCaseGenerated extends AbstractLightTree2F
|
|||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("delegates.kt")
|
||||||
|
public void testDelegates() throws Exception {
|
||||||
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/delegates.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("derivedClass.kt")
|
@TestMetadata("derivedClass.kt")
|
||||||
public void testDerivedClass() throws Exception {
|
public void testDerivedClass() throws Exception {
|
||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
import kotlin.properties.ReadWriteProperty
|
||||||
|
import kotlin.reflect.KProperty
|
||||||
|
|
||||||
|
val x: Int by lazy { 1 + 2 }
|
||||||
|
|
||||||
|
val delegate = object: ReadWriteProperty<Any?, Int> {
|
||||||
|
override fun getValue(thisRef: Any?, property: KProperty<*>): Int = 1
|
||||||
|
override fun setValue(thisRef: Any?, property: KProperty<*>, value: Int) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
val value by delegate
|
||||||
|
|
||||||
|
var variable by delegate
|
||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
FILE: delegates.kt
|
||||||
|
public? final? val x: Intby LAZY_EXPRESSION
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/x|.getValue#(Null(null), ::R|/x|)
|
||||||
|
}
|
||||||
|
public? final? val delegate: <implicit> = LAZY_EXPRESSION
|
||||||
|
public? get(): <implicit>
|
||||||
|
public? final? val value: <implicit>by LAZY_EXPRESSION
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/value|.getValue#(Null(null), ::R|/value|)
|
||||||
|
}
|
||||||
|
public? final? var variable: <implicit>by LAZY_EXPRESSION
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/variable|.getValue#(Null(null), ::R|/variable|)
|
||||||
|
}
|
||||||
|
public? set(<set-?>: <implicit>): R|kotlin/Unit| {
|
||||||
|
D|/variable|.setValue#(Null(null), ::R|/variable|, R|<local>/variable|)
|
||||||
|
}
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
FILE: delegates.kt
|
||||||
|
public? final? val x: Intby lazy#(<L> = lazy@fun <implicit>.<anonymous>(): <implicit> {
|
||||||
|
IntegerLiteral(1).plus#(IntegerLiteral(2))
|
||||||
|
}
|
||||||
|
)
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/x|.getValue#(Null(null), ::R|/x|)
|
||||||
|
}
|
||||||
|
public? final? val delegate: <implicit> = object : ReadWriteProperty<Any?, Int> {
|
||||||
|
private constructor(): R|<anonymous>| {
|
||||||
|
super<<implicit>>()
|
||||||
|
}
|
||||||
|
|
||||||
|
public? open? override fun getValue(thisRef: Any?, property: KProperty<*>): Int {
|
||||||
|
^getValue IntegerLiteral(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
public? open? override fun setValue(thisRef: Any?, property: KProperty<*>, value: Int): R|kotlin/Unit| {
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public? get(): <implicit>
|
||||||
|
public? final? val value: <implicit>by delegate#
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/value|.getValue#(Null(null), ::R|/value|)
|
||||||
|
}
|
||||||
|
public? final? var variable: <implicit>by delegate#
|
||||||
|
public? get(): <implicit> {
|
||||||
|
^ D|/variable|.getValue#(Null(null), ::R|/variable|)
|
||||||
|
}
|
||||||
|
public? set(<set-?>: <implicit>): R|kotlin/Unit| {
|
||||||
|
D|/variable|.setValue#(Null(null), ::R|/variable|, R|<local>/variable|)
|
||||||
|
}
|
||||||
+5
@@ -60,6 +60,11 @@ public class RawFirBuilderLazyBodiesTestCaseGenerated extends AbstractRawFirBuil
|
|||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("delegates.kt")
|
||||||
|
public void testDelegates() throws Exception {
|
||||||
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/delegates.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("derivedClass.kt")
|
@TestMetadata("derivedClass.kt")
|
||||||
public void testDerivedClass() throws Exception {
|
public void testDerivedClass() throws Exception {
|
||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
||||||
|
|||||||
+5
@@ -60,6 +60,11 @@ public class RawFirBuilderTestCaseGenerated extends AbstractRawFirBuilderTestCas
|
|||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("delegates.kt")
|
||||||
|
public void testDelegates() throws Exception {
|
||||||
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/delegates.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("derivedClass.kt")
|
@TestMetadata("derivedClass.kt")
|
||||||
public void testDerivedClass() throws Exception {
|
public void testDerivedClass() throws Exception {
|
||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
||||||
|
|||||||
+5
@@ -60,6 +60,11 @@ public class FirVisualizerForRawFirDataGenerated extends AbstractFirVisualizer {
|
|||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("delegates.kt")
|
||||||
|
public void testDelegates() throws Exception {
|
||||||
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/delegates.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("derivedClass.kt")
|
@TestMetadata("derivedClass.kt")
|
||||||
public void testDerivedClass() throws Exception {
|
public void testDerivedClass() throws Exception {
|
||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
||||||
|
|||||||
+5
@@ -60,6 +60,11 @@ public class PsiVisualizerForRawFirDataGenerated extends AbstractPsiVisualizer {
|
|||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/constructorOfAnonymousObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("delegates.kt")
|
||||||
|
public void testDelegates() throws Exception {
|
||||||
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/delegates.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("derivedClass.kt")
|
@TestMetadata("derivedClass.kt")
|
||||||
public void testDerivedClass() throws Exception {
|
public void testDerivedClass() throws Exception {
|
||||||
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
runTest("compiler/fir/raw-fir/psi2fir/testData/rawBuilder/declarations/derivedClass.kt");
|
||||||
|
|||||||
+5
@@ -38,6 +38,11 @@ public class FirHighlightingPerformanceTestGenerated extends AbstractFirHighligh
|
|||||||
runTest("idea/testData/highlighter/AutoCreatedItParameter.kt");
|
runTest("idea/testData/highlighter/AutoCreatedItParameter.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("DelegatingCtor.kt")
|
||||||
|
public void testDelegatingCtor() throws Exception {
|
||||||
|
runTest("idea/testData/highlighter/DelegatingCtor.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("Destructuring.kt")
|
@TestMetadata("Destructuring.kt")
|
||||||
public void testDestructuring() throws Exception {
|
public void testDestructuring() throws Exception {
|
||||||
runTest("idea/testData/highlighter/Destructuring.kt");
|
runTest("idea/testData/highlighter/Destructuring.kt");
|
||||||
|
|||||||
Reference in New Issue
Block a user