/* 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$ext$etc$RubyEtc$POPULATOR extends TypePopulator {
    public void populate(RubyModule cls, Class clazz) {
        JavaMethod javaMethod;
        DynamicMethod moduleMethod, aliasedMethod;
        RubyClass singletonClass = cls.getSingletonClass();
        Ruby runtime = cls.getRuntime();
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$passwd(cls, Visibility.PUBLIC, "passwd");
        populateMethod(javaMethod, 0, "passwd", true, false, org.jruby.ext.etc.RubyEtc.class, "passwd", org.jruby.runtime.builtin.IRubyObject.class, ARG1_BLOCK);
        aliasedMethod = cls.putMethod(runtime, "passwd", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "passwd", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$uname(cls, Visibility.PUBLIC, "uname");
        populateMethod(javaMethod, 0, "uname", true, false, org.jruby.ext.etc.RubyEtc.class, "uname", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "uname", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "uname", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$setpwent(cls, Visibility.PUBLIC, "setpwent");
        populateMethod(javaMethod, 0, "setpwent", true, false, org.jruby.ext.etc.RubyEtc.class, "setpwent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "setpwent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "setpwent", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$sysconfdir(cls, Visibility.PUBLIC, "sysconfdir");
        populateMethod(javaMethod, 0, "sysconfdir", true, false, org.jruby.ext.etc.RubyEtc.class, "sysconfdir", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "sysconfdir", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "sysconfdir", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$getgrent(cls, Visibility.PUBLIC, "getgrent");
        populateMethod(javaMethod, 0, "getgrent", true, false, org.jruby.ext.etc.RubyEtc.class, "getgrent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "getgrent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getgrent", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$endpwent(cls, Visibility.PUBLIC, "endpwent");
        populateMethod(javaMethod, 0, "endpwent", true, false, org.jruby.ext.etc.RubyEtc.class, "endpwent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "endpwent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "endpwent", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$1$getgrgid(cls, Visibility.PUBLIC, "getgrgid");
        populateMethod(javaMethod, -1, "getgrgid", true, false, org.jruby.ext.etc.RubyEtc.class, "getgrgid", org.jruby.runtime.builtin.IRubyObject.class, ARG1_ARY);
        aliasedMethod = cls.putMethod(runtime, "getgrgid", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getgrgid", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$getpwent(cls, Visibility.PUBLIC, "getpwent");
        populateMethod(javaMethod, 0, "getpwent", true, false, org.jruby.ext.etc.RubyEtc.class, "getpwent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "getpwent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getpwent", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$systmpdir(cls, Visibility.PUBLIC, "systmpdir");
        populateMethod(javaMethod, 0, "systmpdir", true, false, org.jruby.ext.etc.RubyEtc.class, "systmpdir", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "systmpdir", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "systmpdir", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$1$0$getpwnam(cls, Visibility.PUBLIC, "getpwnam");
        populateMethod(javaMethod, 1, "getpwnam", true, false, org.jruby.ext.etc.RubyEtc.class, "getpwnam", org.jruby.runtime.builtin.IRubyObject.class, ARG2);
        aliasedMethod = cls.putMethod(runtime, "getpwnam", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getpwnam", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$nprocessors(cls, Visibility.PUBLIC, "nprocessors");
        populateMethod(javaMethod, 0, "nprocessors", true, false, org.jruby.ext.etc.RubyEtc.class, "nprocessors", org.jruby.runtime.builtin.IRubyObject.class, CONTEXT_ARG1);
        aliasedMethod = cls.putMethod(runtime, "nprocessors", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "nprocessors", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$getlogin(cls, Visibility.PUBLIC, "getlogin");
        populateMethod(javaMethod, 0, "getlogin", true, false, org.jruby.ext.etc.RubyEtc.class, "getlogin", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "getlogin", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getlogin", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$endgrent(cls, Visibility.PUBLIC, "endgrent");
        populateMethod(javaMethod, 0, "endgrent", true, false, org.jruby.ext.etc.RubyEtc.class, "endgrent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "endgrent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "endgrent", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$1$0$getgrnam(cls, Visibility.PUBLIC, "getgrnam");
        populateMethod(javaMethod, 1, "getgrnam", true, false, org.jruby.ext.etc.RubyEtc.class, "getgrnam", org.jruby.runtime.builtin.IRubyObject.class, ARG2);
        aliasedMethod = cls.putMethod(runtime, "getgrnam", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getgrnam", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$1$getpwuid(cls, Visibility.PUBLIC, "getpwuid");
        populateMethod(javaMethod, -1, "getpwuid", true, false, org.jruby.ext.etc.RubyEtc.class, "getpwuid", org.jruby.runtime.builtin.IRubyObject.class, ARG1_ARY);
        aliasedMethod = cls.putMethod(runtime, "getpwuid", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "getpwuid", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$group(cls, Visibility.PUBLIC, "group");
        populateMethod(javaMethod, 0, "group", true, false, org.jruby.ext.etc.RubyEtc.class, "group", org.jruby.runtime.builtin.IRubyObject.class, ARG1_BLOCK);
        aliasedMethod = cls.putMethod(runtime, "group", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "group", moduleMethod);
        javaMethod = new org.jruby.ext.etc.RubyEtc$INVOKER$s$0$0$setgrent(cls, Visibility.PUBLIC, "setgrent");
        populateMethod(javaMethod, 0, "setgrent", true, false, org.jruby.ext.etc.RubyEtc.class, "setgrent", org.jruby.runtime.builtin.IRubyObject.class, ARG1);
        aliasedMethod = cls.putMethod(runtime, "setgrent", javaMethod);
        moduleMethod = populateModuleMethod(cls, javaMethod);
        aliasedMethod = singletonClass.putMethod(runtime, "setgrent", moduleMethod);

        runtime.addBoundMethods("org.jruby.ext.etc.RubyEtc", "passwd", "passwd", "uname", "uname", "setpwent", "setpwent", "sysconfdir", "sysconfdir", "getgrent", "getgrent", "endpwent", "endpwent", "getgrgid", "getgrgid", "getpwent", "getpwent", "systmpdir", "systmpdir", "getpwnam", "getpwnam", "nprocessors", "nprocessors", "getlogin", "getlogin", "endgrent", "endgrent", "getgrnam", "getgrnam", "getpwuid", "getpwuid", "group", "group", "setgrent", "setgrent");
    }
    static {
    }
}