in core/src/main/java/com/jetbrains/sa/jdi/ReferenceTypeImpl.java [304:325]
public final List<MethodImpl> methods() throws ClassNotPreparedException {
List<MethodImpl> methods = (methodsCache != null)? methodsCache.get() : null;
if (methods == null) {
checkPrepared();
if (saKlass instanceof ArrayKlass) {
methods = Collections.emptyList();
} else {
// Get a list of the SA Method types
List saMethods = ((InstanceKlass)saKlass).getImmediateMethods();
// Create a list of our MethodImpl types
int len = saMethods.size();
methods = new ArrayList<MethodImpl>(len);
for (Object saMethod : saMethods) {
methods.add(MethodImpl.createMethodImpl(this, (sun.jvm.hotspot.oops.Method) saMethod));
}
}
methods = Collections.unmodifiableList(methods);
methodsCache = new SoftReference<List<MethodImpl>>(methods);
}
return methods;
}