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

JCGO_NOSEP_INLINE java_net_Inet6Address CFASTCALL
java_net_Inet6Address__this__BALs( java_net_Inet6Address This, jbyteArr
 addr, java_lang_String host )
{
 {
  (java_net_InetAddress__this__BALsI((java_net_InetAddress)This, addr,
   host, java_net_Inet6Address__AF_INET60));
  JCGO_FIELD_NZACCESS(This, ipaddress)= JCGO_FIELD_NZACCESS(This, addr);
  (void)jnull;
  (void)((JCGO_FIELD_NZACCESS(This, scope_id_set)= (jboolean)jfalse)!=
   jfalse);
  JCGO_FIELD_NZACCESS(This, scope_id)= 0;
  JCGO_FIELD_NZACCESS(This, nif)= (java_lang_Object)jnull;
 }
 return This;
}

JCGO_NOSEP_FRWINL java_net_Inet6Address CFASTCALL
java_net_Inet6Address__new__BALs( jbyteArr addr, java_lang_String
 host )
{
 JCGO_CLINIT_TRIG(java_net_Inet6Address__class);
 return java_net_Inet6Address__this__BALs(
  (java_net_Inet6Address)jcgo_newObject((jvtable)&java_net_Inet6Address_methods),
  addr, host);
}

JCGO_NOSEP_INLINE jbyteArr CFASTCALL
java_net_Inet6Address__getAddress__( java_net_Inet6Address This )
{
 {
  jObject jcgo_rcvrL1;
  return (jbyteArr)JCGO_CAST_OBJECT0(OBJT_jbyte+OBJT_jarray, MAXT_jbyte+OBJT_jarray,
   (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, ipaddress), JCGO_CALL_FINALF((jbyteArr)jcgo_rcvrL1)
   java_lang_Object__clone__(
   (java_lang_Object)jcgo_rcvrL1)));
 }
}

JCGO_NOSEP_STATIC java_lang_String CFASTCALL
java_net_Inet6Address__getHostAddress__( java_net_Inet6Address This
 )
{
 {
  java_lang_StringBuffer sbuf;
  struct java_lang_StringBuffer_s jcgo_stackobj1;
  sbuf= (java_lang_StringBuffer__this__I(
   JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuffer_methods),
   (jint)40));
  {
   jint i;
   i= 0;
   for (; i < (jint)16; i+= (jint)2)
   {
    jint x;
    jint jcgo_rcvrI1;
    struct java_lang_String_s jcgo_stackobj2;
    x= (jcgo_rcvrI1= JCGO_SHL_F(((jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(This,
     ipaddress), i)))), (jint)8), jcgo_rcvrI1 | ((jint)((unsigned char)(JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(This,
     ipaddress), i + (jint)1)))));
    if (i > 0)
    {
     (java_lang_StringBuffer__append__C(
      sbuf, (jchar)58/*':'*/));
    }
    (java_lang_StringBuffer__append__Ls(
     sbuf, (java_lang_Integer__toHexString__IX(
     x, JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods)))));
   }
  }
  if (JCGO_FIELD_NZACCESS(This, nif) != jnull)
  {
   (java_lang_StringBuffer__append__Ls(
    sbuf, java_lang_VMSystem__concat0X__LsLs(
    JCGO_STRREF_OF(jcgo_string25_GameShll), (JCGO_CALL_FINALF(JCGO_FIELD_NZACCESS(This,
    nif)) (java_lang_String)jnull))));
  }
  else
  {
   if (JCGO_FIELD_NZACCESS(This, scope_id_set))
   {
    struct java_lang_String_s jcgo_stackobj3;
    (java_lang_StringBuffer__append__Ls(
     sbuf, java_lang_VMSystem__concat0X__LsLs(
     JCGO_STRREF_OF(jcgo_string25_GameShll), (java_lang_String__valueOf__IX(
     JCGO_FIELD_NZACCESS(This, scope_id), JCGO_STACKOBJ_NEW(jcgo_stackobj3,
     java_lang_String_methods))))));
   }
  }
  return (java_lang_StringBuffer__toString__(
   sbuf));
 }
}

JCGO_NOSEP_STATIC jboolean CFASTCALL
java_net_Inet6Address__equals__Lo( java_net_Inet6Address This, java_lang_Object
 obj )
{
 {
  java_net_Inet6Address ip;
  jint jcgo_rcvrI1;
  if (!jcgo_instanceOf0(OBJT_java_net_Inet6Address, MAXT_java_net_Inet6Address,
   (jObject)obj))
  {
   return (jboolean)jfalse;
  }
  ip= (java_net_Inet6Address)obj;
  if ((jcgo_rcvrI1= JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(This, ipaddress)),
   jcgo_rcvrI1 != JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(ip, ipaddress))))
  {
   return (jboolean)jfalse;
  }
  {
   jint i;
   i= 0;
   for (; i < JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(ip, ipaddress));
    i++)
   {
    jbyte jcgo_rcvrB1;
    if ((jcgo_rcvrB1= JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(This,
     ipaddress), i), jcgo_rcvrB1 != JCGO_ARRAY_BACCESS(JCGO_FIELD_NZACCESS(ip,
     ipaddress), i)))
    {
     return (jboolean)jfalse;
    }
   }
  }
  if (JCGO_FIELD_NZACCESS(ip, nif) != jnull && JCGO_FIELD_NZACCESS(This,
   nif) != jnull)
  {
   return (jboolean)(JCGO_CALL_FINALF(JCGO_FIELD_NZACCESS(This, nif))
    (jboolean)0);
  }
  if (JCGO_FIELD_NZACCESS(ip, nif) != JCGO_FIELD_NZACCESS(This, nif))
  {
   return (jboolean)jfalse;
  }
  if (JCGO_FIELD_NZACCESS(ip, scope_id_set) != JCGO_FIELD_NZACCESS(This,
   scope_id_set))
  {
   return (jboolean)jfalse;
  }
  if (JCGO_FIELD_NZACCESS(This, scope_id_set))
  {
   return (jboolean)(JCGO_FIELD_NZACCESS(This, scope_id) == JCGO_FIELD_NZACCESS(ip,
    scope_id));
  }
  return (jboolean)jtrue;
 }
}

JCGO_NOSEP_STATIC void CFASTCALL
java_net_Inet6Address__class__0( void )
{
 JCGO_CLINIT_BEGIN(java_net_Inet6Address__class);
 JCGO_CLINIT_TRIG(java_net_InetAddress__class);
 JCGO_CLINIT_DONE(java_net_Inet6Address__class);
}

JCGO_NOSEP_DATA CONST struct java_net_Inet6Address_methods_s java_net_Inet6Address_methods=
{
 JCGO_CLASSREF_OF(java_net_Inet6Address__class),
 JCGO_GCJDESCR_INIT(java_net_Inet6Address_s, nif)
 OBJT_java_net_Inet6Address,
 (JCGO_OBJSIZE_T)sizeof(struct java_net_Inet6Address_s),
 NULL,
 JCGO_CLINIT_INIT(java_net_Inet6Address__class__0)
 0,
 java_net_Inet6Address__equals__Lo,
 java_net_InetAddress__hashCode__,
 java_net_InetAddress__toString__,
 java_lang_Object__finalize__,
 java_net_Inet6Address__getAddress__,
 java_net_Inet6Address__getHostAddress__
};

JCGO_NOSEP_DATA struct java_net_Inet6Address_class_s java_net_Inet6Address__class
 ATTRIBNONGC=
{
 {
  &java_lang_Class_methods,
  JCGO_MON_INIT
  JCGO_OBJREF_OF(*(java_lang_Object)&java_net_Inet6Address_methods),
  JCGO_STRREF_OF(jcgo_string1_Int6Addr),
  JCGO_CLASSREF_OF(java_net_InetAddress__class),
  ((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
  0xd1
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype80_GmCnnctn jcgo_array2_Int6Addr=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 21,
 {
  (jbyte)(jchar)106/*'j'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)118/*'v'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)110/*'n'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)46/*'.'*/,
   (jbyte)(jchar)73/*'I'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)101/*'e'*/,
   (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)54/*'6'*/, (jbyte)(jchar)65/*'A'*/,
   (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)114/*'r'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)115/*'s'*/, (jbyte)(jchar)115/*'s'*/
 }
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_Int6Addr
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array2_Int6Addr),
 0, 21, (jint)0x1a7eda8fL
};

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

#endif
