/* 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_java_lang_Character
#include "jcgobchk.h"
#endif

JCGO_NOSEP_STATIC jObjectArr CFASTCALL
java_lang_Character__convertCharData__LsA( jObjectArr strArray )
{
 {
  jObjectArr charsArray;
  jint len;
  len= JCGO_ARRAY_LENGTH(strArray);
  charsArray= (jObjectArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jchar),
   1, len);
  {
   jint i;
   i= 0;
   for (; i < len; i++)
   {
    jObject jcgo_rcvrL1;
    jObject jcgo_rcvrL2;
    jint jcgo_rcvrI1;
    (jcgo_rcvrL1= (jObject)charsArray, jcgo_rcvrI1= i, jcgo_rcvrL2=
     (jObject)(java_lang_String__zeroBasedStringValue__Ls(
     ((java_lang_String)JCGO_ARRAY_NZLACCESS(strArray, i)))), *(jcharArr*)&JCGO_ARRAY_NZLACCESS((jObjectArr)jcgo_rcvrL1,
     jcgo_rcvrI1)= (jcharArr)jcgo_rcvrL2);
   }
  }
  return charsArray;
 }
}

JCGO_NOSEP_STATIC jchar CFASTCALL
java_lang_Character__readCodePoint__I( jint codePoint )
{
 JCGO_CLINIT_TRIG(java_lang_Character__class);
 {
  jint plane;
  jchar offset;
  jObject jcgo_rcvrL1;
  jObject jcgo_rcvrL2;
  plane= JCGO_USHR_F(codePoint, (jint)16);
  offset= (jchar)codePoint;
  return (jcgo_rcvrL1= (jObject)((jcharArr)JCGO_ARRAY_NZLACCESS(java_lang_Character__data,
   plane)), JCGO_ARRAY_CACCESS((jcharArr)jcgo_rcvrL1, (jchar)((jint)(jcgo_rcvrL2=
   (jObject)((jcharArr)JCGO_ARRAY_NZLACCESS(java_lang_Character__blocks,
   plane)), JCGO_ARRAY_CACCESS((jcharArr)jcgo_rcvrL2, JCGO_SHR_F(offset,
   JCGO_ARRAY_NZIACCESS(gnu_java_lang_CharData__SHIFT, plane)))) +
   offset)));
 }
}

JCGO_NOSEP_STATIC jchar CFASTCALL
java_lang_Character__toLowerCase__C( jchar ch )
{
 JCGO_CLINIT_TRIG(java_lang_Character__class);
 {
  jObject jcgo_rcvrL1;
  return (jchar)((jint)(jcgo_rcvrL1= (jObject)((jcharArr)JCGO_ARRAY_NZLACCESS(java_lang_Character__lower,
   0)), JCGO_ARRAY_CACCESS((jcharArr)jcgo_rcvrL1, JCGO_USHR_F((java_lang_Character__readCodePoint__I(
   (jint)ch)), (jint)7))) + ch);
 }
}

JCGO_NOSEP_STATIC jchar CFASTCALL
java_lang_Character__toUpperCase__C( jchar ch )
{
 JCGO_CLINIT_TRIG(java_lang_Character__class);
 {
  jObject jcgo_rcvrL1;
  return (jchar)((jint)(jcgo_rcvrL1= (jObject)((jcharArr)JCGO_ARRAY_NZLACCESS(java_lang_Character__upper,
   0)), JCGO_ARRAY_CACCESS((jcharArr)jcgo_rcvrL1, JCGO_USHR_F((java_lang_Character__readCodePoint__I(
   (jint)ch)), (jint)7))) + ch);
 }
}

JCGO_NOSEP_STATIC jint CFASTCALL
java_lang_Character__digit__CI( jint radix, jchar ch )
{
 JCGO_CLINIT_TRIG(java_lang_Character__class);
 {
  jchar attr;
  if (radix < java_lang_Character__MIN_RADIX || radix > java_lang_Character__MAX_RADIX)
  {
   return (-(jint)1);
  }
  attr= (java_lang_Character__readCodePoint__I(
   (jint)ch));
  if ((JCGO_SHL_F((jint)1, (attr & java_lang_Character__TYPE_MASK)) &
   (JCGO_SHL_F((jint)1, java_lang_Character__UPPERCASE_LETTER) | JCGO_SHL_F((jint)1,
   java_lang_Character__LOWERCASE_LETTER) | JCGO_SHL_F((jint)1, java_lang_Character__DECIMAL_DIGIT_NUMBER))) !=
   0)
  {
   jint digit;
   digit= (jint)(JCGO_ARRAY_CACCESS(((jcharArr)JCGO_ARRAY_NZLACCESS(java_lang_Character__numValue,
    0)), JCGO_SHR_F(attr, (jint)7)));
   return (digit < radix)? digit : (-(jint)1);
  }
  return (-(jint)1);
 }
}

JCGO_NOSEP_STATIC jchar CFASTCALL
java_lang_Character__forDigit__II( jint digit, jint radix )
{
 JCGO_CLINIT_TRIG(java_lang_Character__class);
 {
  if (radix < java_lang_Character__MIN_RADIX || radix > java_lang_Character__MAX_RADIX ||
   digit < 0 || digit >= radix)
  {
   return 0;
  }
  return JCGO_ARRAY_NZCACCESS(java_lang_Number__digits, digit);
 }
}

JCGO_NOSEP_STATIC void CFASTCALL
java_lang_Character__class__0( void )
{
 JCGO_CLINIT_BEGIN(java_lang_Character__class);
 java_lang_Character__blocks= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__BLOCKS));
 java_lang_Character__data= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__DATA));
 java_lang_Character__numValue= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__NUM_VALUE));
 java_lang_Character__upper= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__UPPER));
 java_lang_Character__lower= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__LOWER));
 java_lang_Character__direction= (java_lang_Character__convertCharData__LsA(
  gnu_java_lang_CharData__DIRECTION));
 JCGO_CLINIT_DONE(java_lang_Character__class);
}

JCGO_NOSEP_DATA CONST struct jcgo_methods_s java_lang_Character_methods=
{
 JCGO_CLASSREF_OF(java_lang_Character__class),
 JCGO_GCJDESCR_ZEROINIT
 OBJT_java_lang_Character,
 0,
 NULL,
 JCGO_CLINIT_INIT(java_lang_Character__class__0)
 0
};

JCGO_NOSEP_DATA struct java_lang_Character_class_s java_lang_Character__class
 ATTRIBNONGC=
{
 {
  &java_lang_Class_methods,
  JCGO_MON_INIT
  JCGO_OBJREF_OF(*(java_lang_Object)&java_lang_Character_methods),
  JCGO_STRREF_OF(jcgo_string1_Chrctr),
  JCGO_CLASSREF_OF(java_lang_Object__class),
  ((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
  0x1d1
 }
};

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__blocks ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__data ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__numValue ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__upper ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__lower ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_GCDATA jObjectArr java_lang_Character__direction ATTRIBGCBSS=
 jnull;

JCGO_NOSEP_DATA CONST jcgo_arrtype42_GameShll jcgo_array2_Chrctr=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 19,
 {
  (jbyte)(jchar)106/*'j'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)118/*'v'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)108/*'l'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)67/*'C'*/, (jbyte)(jchar)104/*'h'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)99/*'c'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)101/*'e'*/,
   (jbyte)(jchar)114/*'r'*/
 }
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_Chrctr
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array2_Chrctr),
 0, 19, (jint)0x9415455L
};

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

#endif
