return super.visitAnnotation(desc, visible);
}
@Override
public MethodVisitor visitMethod(final int access, final String name, final String desc, final String signature, final String[] exceptions) {
SuspendableType markedSuspendable = null;
if (suspendableInterface)
markedSuspendable = SuspendableType.SUSPENDABLE_SUPER;
if (markedSuspendable == null)
markedSuspendable = classifier.isSuspendable(db, className, classEntry.getSuperName(), classEntry.getInterfaces(), name, desc, signature, exceptions);
final SuspendableType setSuspendable = classEntry.check(name, desc);
if (setSuspendable == null)
classEntry.set(name, desc, markedSuspendable != null ? markedSuspendable : SuspendableType.NON_SUSPENDABLE);
final SuspendableType suspendable = max(markedSuspendable, setSuspendable, SuspendableType.NON_SUSPENDABLE);
if (checkAccess(access) && !isYieldMethod(className, name)) {
if (isSynchronized(access)) {
if (!db.isAllowMonitors())
throw new UnableToInstrumentException("synchronization", className, name, desc);