/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */

#ifdef JCGO_SEPARATED
#define JCGO_116
#include "jcgortl.h"
#include "Main.h"
#endif

#ifdef JCGO_116

#ifdef CHKALL_gnu_java_nio_charset_Provider
#include "jcgobchk.h"
#endif

JCGO_NOSEP_INLINE void CFASTCALL
gnu_java_nio_charset_Provider__loadExtended__( gnu_java_nio_charset_Provider
 This )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  if (JCGO_FIELD_NZACCESS(This, extendedLoaded))
  {
#ifndef JCGO_SEHTRY
   JCGO_SYNC_JUMPLEAVE(0);
#endif
   return;
  }
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_3__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_6__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_8__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp424__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp437__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp737__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp775__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp850__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp852__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp855__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp857__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp860__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp861__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp862__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp863__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp864__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp865__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp866__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp869__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Cp874__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacCentralEurope__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacCroatian__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacCyrillic__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacDingbat__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacGreek__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacIceland__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacRoman__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacRomania__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacSymbol__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacThai__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_MacTurkish__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1255__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1256__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1258__new__()));
  JCGO_FIELD_NZACCESS(This, extendedLoaded)= (jboolean)jtrue;
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_STATIC gnu_java_nio_charset_Provider CFASTCALL
gnu_java_nio_charset_Provider__this__( gnu_java_nio_charset_Provider
 This )
{
 {
  (java_nio_charset_spi_CharsetProvider__this__((java_nio_charset_spi_CharsetProvider)This));
  JCGO_FIELD_NZACCESS(This, extendedLoaded)= (jboolean)jfalse;
  JCGO_FIELD_NZACCESS(This, canonicalNames)= java_util_HashMap__new__();
  JCGO_FIELD_NZACCESS(This, charsets)= java_util_HashMap__new__();
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_US_ASCII__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_1__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UTF_8__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UTF_16BE__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UTF_16LE__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UTF_16__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UnicodeBig__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_UnicodeLittle__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1250__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1251__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1252__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1253__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1254__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_Windows1257__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_2__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_4__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_5__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_7__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_9__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_13__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_ISO_8859_15__new__()));
  (gnu_java_nio_charset_Provider__addCharset__L7qsf6(
   This, (java_nio_charset_Charset)gnu_java_nio_charset_KOI_8__new__()));
 }
 return This;
}

JCGO_NOSEP_INLINE gnu_java_nio_charset_Provider CFASTCALL
gnu_java_nio_charset_Provider__new__( void )
{
 return gnu_java_nio_charset_Provider__this__(
  (gnu_java_nio_charset_Provider)jcgo_newObject((jvtable)&gnu_java_nio_charset_Provider_methods));
}

JCGO_NOSEP_FRWINL java_nio_charset_Charset CFASTCALL
gnu_java_nio_charset_Provider__charsetForName__Ls( gnu_java_nio_charset_Provider
 This, java_lang_String charsetName )
{
 {
  java_nio_charset_Charset cs;
  jObject jcgo_rcvrL1;
  jObject jcgo_rcvrL2;
  cs= (java_nio_charset_Charset)JCGO_CAST_OBJECT0(OBJT_java_nio_charset_Charset,
   MAXT_java_nio_charset_Charset, (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This,
   charsets), JCGO_CALL_FINALF((java_util_HashMap)jcgo_rcvrL1) java_util_HashMap__get__Lo(
   (java_util_HashMap)jcgo_rcvrL1, (jcgo_rcvrL2= (jObject)JCGO_FIELD_NZACCESS(This,
   canonicalNames), JCGO_CALL_FINALF((java_util_HashMap)jcgo_rcvrL2)
   java_util_HashMap__get__Lo(
   (java_util_HashMap)jcgo_rcvrL2, (java_lang_Object)(JCGO_CALL_FINALF(charsetName)
   java_lang_String__toLowerCase__(
   charsetName)))))));
  if (cs == jnull)
  {
   jObject jcgo_rcvrL1;
   jObject jcgo_rcvrL2;
   (gnu_java_nio_charset_Provider__loadExtended__(
    This));
   cs= (java_nio_charset_Charset)JCGO_CAST_OBJECT0(OBJT_java_nio_charset_Charset,
    MAXT_java_nio_charset_Charset, (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This,
    charsets), java_util_HashMap__get__Lo(
    (java_util_HashMap)jcgo_rcvrL1, (jcgo_rcvrL2= (jObject)JCGO_FIELD_NZACCESS(This,
    canonicalNames), java_util_HashMap__get__Lo(
    (java_util_HashMap)jcgo_rcvrL2, (java_lang_Object)(java_lang_String__toLowerCase__(
    charsetName)))))));
  }
  return cs;
 }
}

JCGO_NOSEP_STATIC void CFASTCALL
gnu_java_nio_charset_Provider__addCharset__L7qsf6( gnu_java_nio_charset_Provider
 This, java_nio_charset_Charset cs )
{
 {
  java_lang_String canonicalName;
  jObject jcgo_rcvrL1;
  canonicalName= (jcgo_rcvrL1= (jObject)(JCGO_CALL_FINALF(cs) java_nio_charset_Charset__name__(
   cs)), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__toLowerCase__(
   (java_lang_String)jcgo_rcvrL1));
  (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, charsets), JCGO_CALL_FINALF((java_util_HashMap)jcgo_rcvrL1)
   java_util_HashMap__put__LoLo(
   (java_util_HashMap)jcgo_rcvrL1, (java_lang_Object)canonicalName,
   (java_lang_Object)cs));
  (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, canonicalNames),
   JCGO_CALL_FINALF((java_util_HashMap)jcgo_rcvrL1) java_util_HashMap__put__LoLo(
   (java_util_HashMap)jcgo_rcvrL1, (java_lang_Object)canonicalName,
   (java_lang_Object)canonicalName));
  {
   java_util_Iterator i;
   i= (jcgo_rcvrL1= (jObject)(java_nio_charset_Charset__aliases__(
    cs)), JCGO_CALL_NZVFUNC((java_util_Set)jcgo_rcvrL1)->iterator__(
    (java_util_Set)jcgo_rcvrL1));
   for (; (JCGO_CALL_VFUNC(i)->hasNext__(
    i));)
   {
    jObject jcgo_rcvrL1;
    jObject jcgo_rcvrL2;
    (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, canonicalNames),
     java_util_HashMap__put__LoLo(
     (java_util_HashMap)jcgo_rcvrL1, (java_lang_Object)(jcgo_rcvrL2=
     (jObject)((java_lang_String)JCGO_CAST_OBJECT0(OBJT_java_lang_String,
     MAXT_java_lang_String, (JCGO_CALL_NZVFUNC(i)->next__(
     i)))), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL2) java_lang_String__toLowerCase__(
     (java_lang_String)jcgo_rcvrL2)), (java_lang_Object)canonicalName));
   }
  }
 }
}

JCGO_NOSEP_FRWINL gnu_java_nio_charset_Provider CFASTCALL
gnu_java_nio_charset_Provider__provider__( void )
{
 JCGO_SYNC_BLOCKSAFENZ(JCGO_CLASSREF_OF(gnu_java_nio_charset_Provider__class))
 {
  if (gnu_java_nio_charset_Provider__singleton == jnull)
  {
   struct gnu_java_nio_charset_Provider_1_s jcgo_stackobj1;
   gnu_java_nio_charset_Provider__singleton= (gnu_java_nio_charset_Provider)JCGO_CAST_OBJECT0(OBJT_gnu_java_nio_charset_Provider,
    MAXT_gnu_java_nio_charset_Provider, (java_security_AccessController__doPrivileged__L21epy(
    (java_security_PrivilegedAction)gnu_java_nio_charset_Provider_1__this__(
    JCGO_STACKOBJ_NEW(jcgo_stackobj1, gnu_java_nio_charset_Provider_1_methods)))));
  }
  {
   gnu_java_nio_charset_Provider jcgo_retval= gnu_java_nio_charset_Provider__singleton;
#ifndef JCGO_SEHTRY
   JCGO_SYNC_JUMPLEAVE(0);
#endif
   return jcgo_retval;
  }
 }
 JCGO_SYNC_ENDUNREACH
}

JCGO_NOSEP_DATA CONST struct gnu_java_nio_charset_Provider_methods_s
 gnu_java_nio_charset_Provider_methods=
{
 JCGO_CLASSREF_OF(gnu_java_nio_charset_Provider__class),
 JCGO_GCJDESCR_INIT(gnu_java_nio_charset_Provider_s, charsets)
 OBJT_gnu_java_nio_charset_Provider,
 (JCGO_OBJSIZE_T)sizeof(struct gnu_java_nio_charset_Provider_s),
 NULL,
 JCGO_CLINIT_INIT(0)
 gnu_java_nio_charset_Provider__this__,
 java_lang_Object__equals__Lo,
 java_lang_Object__hashCode__,
 java_lang_Object__toString__,
 java_lang_Object__finalize__
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct gnu_java_nio_charset_Provider_class_s
 gnu_java_nio_charset_Provider__class JCGO_THRD_ATTRNONGC=
{
 {
  &java_lang_Class_methods,
  JCGO_MON_INIT
  JCGO_OBJREF_OF(*(java_lang_Object)&gnu_java_nio_charset_Provider_methods),
  JCGO_STRREF_OF(jcgo_string1_Prvdr1E),
  JCGO_CLASSREF_OF(java_nio_charset_spi_CharsetProvider__class),
  ((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
  0x11
 }
};

JCGO_NOSEP_GCDATA gnu_java_nio_charset_Provider gnu_java_nio_charset_Provider__singleton
 ATTRIBGCBSS= jnull;

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_Prvdr1E
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array557_VMSstmPr),
 0, 29, (jint)0xbd6603d9L
};

#ifdef CHKALL_gnu_java_nio_charset_Provider
#include "jcgochke.h"
#endif

#endif
