/* THIS FILE IS GENERATED. DO NOT EDIT */
package org.jruby.gen;

import org.jruby.Ruby;
import org.jruby.RubyModule;
import org.jruby.RubyClass;
import org.jruby.anno.TypePopulator;
import org.jruby.internal.runtime.methods.JavaMethod;
import org.jruby.internal.runtime.methods.DynamicMethod;
import org.jruby.runtime.Arity;
import org.jruby.runtime.Visibility;
import org.jruby.runtime.MethodIndex;
import java.util.Arrays;
import java.util.List;
import javax.annotation.Generated;

@Generated("org.jruby.anno.AnnotationBinder")
@SuppressWarnings("deprecation")
public class org$jruby$javasupport$JavaCallable$POPULATOR extends TypePopulator {
    public void populate(RubyModule cls, Class clazz) {
        JavaMethod javaMethod;
        DynamicMethod moduleMethod, aliasedMethod;
        Ruby runtime = cls.getRuntime();
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$varargs_p(cls, Visibility.PUBLIC, "varargs?");
        populateMethod(javaMethod, 0, "varargs_p", false, false, org.jruby.javasupport.JavaCallable.class, "varargs_p", org.jruby.RubyBoolean.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "varargs?", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$exception_types(cls, Visibility.PUBLIC, "exception_types");
        populateMethod(javaMethod, 0, "exception_types", false, false, org.jruby.javasupport.JavaCallable.class, "exception_types", org.jruby.RubyArray.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "exception_types", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$parameter_types(cls, Visibility.PUBLIC, "argument_types");
        populateMethod(javaMethod, 0, "parameter_types", false, false, org.jruby.javasupport.JavaCallable.class, "parameter_types", org.jruby.RubyArray.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "argument_types", javaMethod);
        cls.putMethod(runtime, "parameter_types", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$generic_exception_types(cls, Visibility.PUBLIC, "generic_exception_types");
        populateMethod(javaMethod, 0, "generic_exception_types", false, false, org.jruby.javasupport.JavaCallable.class, "generic_exception_types", org.jruby.runtime.builtin.IRubyObject.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "generic_exception_types", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$arity(cls, Visibility.PUBLIC, "arity");
        populateMethod(javaMethod, 0, "arity", false, false, org.jruby.javasupport.JavaCallable.class, "arity", org.jruby.RubyFixnum.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "arity", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$to_generic_string(cls, Visibility.PUBLIC, "to_generic_string");
        populateMethod(javaMethod, 0, "to_generic_string", false, false, org.jruby.javasupport.JavaCallable.class, "to_generic_string", org.jruby.RubyString.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "to_generic_string", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$parameter_annotations(cls, Visibility.PUBLIC, "parameter_annotations");
        populateMethod(javaMethod, 0, "parameter_annotations", false, false, org.jruby.javasupport.JavaCallable.class, "parameter_annotations", org.jruby.runtime.builtin.IRubyObject.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "parameter_annotations", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$generic_parameter_types(cls, Visibility.PUBLIC, "generic_parameter_types");
        populateMethod(javaMethod, 0, "generic_parameter_types", false, false, org.jruby.javasupport.JavaCallable.class, "generic_parameter_types", org.jruby.runtime.builtin.IRubyObject.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "generic_parameter_types", javaMethod);
        javaMethod = new org.jruby.javasupport.JavaCallable$INVOKER$i$0$0$public_p(cls, Visibility.PUBLIC, "public?");
        populateMethod(javaMethod, 0, "public_p", false, false, org.jruby.javasupport.JavaCallable.class, "public_p", org.jruby.RubyBoolean.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "public?", javaMethod);

        runtime.addBoundMethods("org.jruby.javasupport.JavaCallable", "varargs_p", "varargs?", "parameter_types", "argument_types", "public_p", "public?", "exception_types", "exception_types", "generic_exception_types", "generic_exception_types", "arity", "arity", "to_generic_string", "to_generic_string", "parameter_annotations", "parameter_annotations", "generic_parameter_types", "generic_parameter_types");
    }
    static {
    }
}