KT-515 TypeInfo.getTypeClass() method

This commit is contained in:
Alex Tkachman
2011-11-15 16:11:14 +02:00
parent 93b935d4ba
commit 6c3294ca3a
+12
View File
@@ -91,6 +91,8 @@ public abstract class TypeInfo<T> implements JetObject {
return new TypeInfoImpl<T>(klazz, nullable, projections);
}
public abstract Class<T> getTypeClass();
public abstract Object getClassObject();
public abstract boolean isInstance(Object obj);
@@ -129,6 +131,11 @@ public abstract class TypeInfo<T> implements JetObject {
throw new UnsupportedOperationException();
}
@Override
public Class<T> getTypeClass() {
throw new UnsupportedOperationException();
}
@Override
public Object getClassObject() {
throw new UnsupportedOperationException("Abstract TypeInfo");
@@ -217,6 +224,11 @@ public abstract class TypeInfo<T> implements JetObject {
return (Object[]) Array.newInstance(signature.klazz, length);
}
@Override
public Class<T> getTypeClass() {
return signature.klazz;
}
public final Object getClassObject() {
try {
final Class implClass = signature.klazz.getClassLoader().loadClass(signature.klazz.getCanonicalName());