/* 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$java$proxies$ArrayJavaProxy$POPULATOR extends TypePopulator {
    public void populate(RubyModule cls, Class clazz) {
        JavaMethod javaMethod;
        DynamicMethod moduleMethod, aliasedMethod;
        Ruby runtime = cls.getRuntime();
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$1$0$op_equal(cls, Visibility.PUBLIC, "==");
        populateMethod(javaMethod, 1, "op_equal", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "op_equal", org.jruby.RubyBoolean.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "==", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$op_aref(cls, Visibility.PUBLIC, "[]");
        populateMethod(javaMethod, -1, "op_aref", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "op_aref", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "[]", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$dig(cls, Visibility.PUBLIC, "dig");
        populateMethod(javaMethod, -1, "dig", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "dig", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0_ARY);
        aliasedMethod = cls.putMethod(runtime, "dig", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$last(cls, Visibility.PUBLIC, "last");
        populateMethod(javaMethod, -1, "last", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "last", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "last", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$length(cls, Visibility.PUBLIC, "length");
        populateMethod(javaMethod, 0, "length", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "length", org.jruby.RubyFixnum.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "length", javaMethod);
        cls.putMethod(runtime, "size", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$count(cls, Visibility.PUBLIC, "count");
        populateMethod(javaMethod, -1, "count", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "count", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0_BLOCK);
        aliasedMethod = cls.putMethod(runtime, "count", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$1$0$op_plus(cls, Visibility.PUBLIC, "+");
        populateMethod(javaMethod, 1, "op_plus", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "op_plus", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "+", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$to_a(cls, Visibility.PUBLIC, "to_a");
        populateMethod(javaMethod, 0, "to_a", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "to_a", org.jruby.RubyArray.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "to_a", javaMethod);
        cls.putMethod(runtime, "entries", javaMethod);
        cls.putAlias("to_ary", aliasedMethod, "to_a");
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$1$0$at(cls, Visibility.PUBLIC, "at");
        populateMethod(javaMethod, 1, "at", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "at", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "at", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$1$0$eql_p(cls, Visibility.PUBLIC, "eql?");
        populateMethod(javaMethod, 1, "eql_p", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "eql_p", org.jruby.RubyBoolean.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "eql?", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$component_type(cls, Visibility.PUBLIC, "component_type");
        populateMethod(javaMethod, 0, "component_type", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "component_type", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "component_type", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$1$0$include_p(cls, Visibility.PUBLIC, "include?");
        populateMethod(javaMethod, 1, "include_p", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "include_p", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "include?", javaMethod);
        cls.putMethod(runtime, "member?", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$rbClone(cls, Visibility.PUBLIC, "clone");
        populateMethod(javaMethod, 0, "rbClone", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "rbClone", org.jruby.runtime.builtin.IRubyObject.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "clone", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$2$0$op_aset(cls, Visibility.PUBLIC, "[]=");
        populateMethod(javaMethod, 2, "op_aset", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "op_aset", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG2);
        aliasedMethod = cls.putMethod(runtime, "[]=", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$empty_p(cls, Visibility.PUBLIC, "empty?");
        populateMethod(javaMethod, 0, "empty_p", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "empty_p", org.jruby.RubyBoolean.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "empty?", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$each(cls, Visibility.PUBLIC, "each");
        populateMethod(javaMethod, 0, "each", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "each", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0_BLOCK);
        aliasedMethod = cls.putMethod(runtime, "each", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$hash(cls, Visibility.PUBLIC, "hash");
        populateMethod(javaMethod, 0, "hash", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "hash", org.jruby.RubyFixnum.class, ARG0);
        aliasedMethod = cls.putMethod(runtime, "hash", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$first(cls, Visibility.PUBLIC, "first");
        populateMethod(javaMethod, -1, "first", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "first", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "first", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$each_with_index(cls, Visibility.PUBLIC, "each_with_index");
        populateMethod(javaMethod, 0, "each_with_index", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "each_with_index", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG0_BLOCK);
        aliasedMethod = cls.putMethod(runtime, "each_with_index", javaMethod);
        javaMethod = new org.jruby.java.proxies.ArrayJavaProxy$INVOKER$i$0$0$inspect(cls, Visibility.PUBLIC, "inspect");
        populateMethod(javaMethod, 0, "inspect", false, false, org.jruby.java.proxies.ArrayJavaProxy.class, "inspect", org.jruby.RubyString.class, CONTEXT_ARG0);
        aliasedMethod = cls.putMethod(runtime, "inspect", javaMethod);

        runtime.addBoundMethods("org.jruby.java.proxies.ArrayJavaProxy", "op_equal", "==", "op_aref", "[]", "dig", "dig", "last", "last", "length", "length", "count", "count", "op_plus", "+", "to_a", "to_a", "eql_p", "eql?", "component_type", "component_type", "include_p", "include?", "rbClone", "clone", "op_aset", "[]=", "empty_p", "empty?", "first", "first", "at", "at", "each", "each", "hash", "hash", "each_with_index", "each_with_index", "inspect", "inspect");
    }
    static {
    }
}