+ support kotlin companion object

This commit is contained in:
坏黑
2019-09-19 14:46:48 +08:00
parent 29f68d36e0
commit 2899edd549
3 changed files with 57 additions and 15 deletions

View File

@@ -0,0 +1,24 @@
package io.izzel.taboolib.compat.kotlin;
import io.izzel.taboolib.TabooLibAPI;
import io.izzel.taboolib.util.Reflection;
/**
* @Author sky
* @Since 2019-09-19 14:27
*/
public class CompatKotlin {
public static boolean isCompanion(Class clazz) {
return clazz.getName().endsWith("$Companion");
}
public static Object getCompanion(Class clazz) {
try {
return Reflection.getValue(null, TabooLibAPI.getPluginBridge().getClass(clazz.getName().substring(0, clazz.getName().indexOf("$Companion"))), true, "Companion");
} catch (Throwable t) {
t.printStackTrace();
}
return null;
}
}