private void generateMethods(CallbackGenerator[] generators, List[] methods, final Set forcePublic) throws Exception {
private void generateMethods(CallbackGenerator[] generators, CallbackGenerator.Context[] contexts) throws Exception {
    private void generateMethods(CallbackGenerator[] generators, List[] methods, final Set forcePublic) throws Exception {        for (int i = 0; i <= Callbacks.MAX_VALUE; i++) {            final int type = i;            if (generators[type] != null) {                generators[type].generate(this, methods[i], new CallbackGenerator.Context() {                    public void emitCallback() {                        generateCurrentCallback(type);                    }                    public int getModifiers(Method method) {                        int modifiers = getDefaultModifiers(method);                        if (forcePublic.contains(MethodWrapper.create(method))) {                            modifiers = (modifiers & ~Modifier.PROTECTED) | Modifier.PUBLIC;                        }                        return modifiers;                    }                });            }        }    }