in modules/privilizer/weaver/src/main/java/org/apache/commons/weaver/privilizer/ActionGenerator.java [152:168]
private void begin() {
owner.visitInnerClass(action.getInternalName(), owner.className, simpleName, Opcodes.ACC_PRIVATE
| Opcodes.ACC_STATIC);
final SignatureWriter type = new SignatureWriter();
final SignatureVisitor actionImplemented = type.visitInterface();
actionImplemented.visitClassType(actionInterface.getInternalName());
final SignatureVisitor visitTypeArgument = actionImplemented.visitTypeArgument('=');
new SignatureReader(Privilizer.wrap(methd.getReturnType()).getDescriptor()).accept(visitTypeArgument);
actionImplemented.visitEnd();
final String signature = type.toString();
visit(Opcodes.V1_5, Opcodes.ACC_SUPER | Opcodes.ACC_SYNTHETIC | Opcodes.ACC_FINAL, action.getInternalName(),
signature, Type.getType(Object.class).getInternalName(),
new String[] { actionInterface.getInternalName() });
}