Improve implementation of callable reference superclasses

Previously to use reflection on them, you had to wrap an already created object
with a "Reflection.function" or "Reflection.propertyN" call, which the JVM
back-end was doing. This was not optimal in several senses and current solution
fixes that
This commit is contained in:
Alexander Udalov
2015-11-05 19:32:02 +03:00
parent 7d32524754
commit 1576160390
17 changed files with 203 additions and 72 deletions
@@ -3912,6 +3912,12 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxWithStdlib/reflection/methodsFromAny"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("callableReferencesEqualToCallablesFromAPI.kt")
public void testCallableReferencesEqualToCallablesFromAPI() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/reflection/methodsFromAny/callableReferencesEqualToCallablesFromAPI.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("classToString.kt")
public void testClassToString() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/reflection/methodsFromAny/classToString.kt");