|
|
@@ -11,8 +11,6 @@ import java.util.Set;
|
|
|
|
|
|
public class Adapter {
|
|
|
|
|
|
- private static final BCLoader LOADER = new BCLoader();
|
|
|
-
|
|
|
private static final String FIELD_THAT = "that";
|
|
|
|
|
|
public static <T> T cast(Class<T> type, Object that) {
|
|
|
@@ -45,9 +43,9 @@ public class Adapter {
|
|
|
putMethod(writer, vmcDelegate, m);
|
|
|
}
|
|
|
|
|
|
- Class<?> clazz = LOADER.defineClass(adapterName, writer.bytecode());
|
|
|
+ IClass<?> clazz = writer.generate();
|
|
|
|
|
|
- return type.cast(IClass.typeinfo(clazz).construct(that));
|
|
|
+ return type.cast(clazz.construct(that));
|
|
|
}
|
|
|
|
|
|
private static void putConstructor(IClassBuilder writer, IClass<?> delegate) {
|
|
|
@@ -103,12 +101,4 @@ public class Adapter {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private static class BCLoader extends ClassLoader {
|
|
|
-
|
|
|
- public Class<?> defineClass(String name, byte[] b) {
|
|
|
- return defineClass(name, b, 0, b.length);
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
}
|