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

JCGO_NOSEP_INLINE java_util_Arrays_ArrayList CFASTCALL
java_util_Arrays_ArrayList__this__LoA( java_util_Arrays_ArrayList
 This, jObjectArr a )
{
 {
  (java_util_AbstractList__this__((java_util_AbstractList)This));
  if (a == jnull)
  {
   JCGO_THROW_EXC(java_lang_NullPointerException__new__());
  }
  JCGO_FIELD_NZACCESS(This, a)= a;
 }
 return This;
}

JCGO_NOSEP_INLINE java_util_Arrays_ArrayList CFASTCALL
java_util_Arrays_ArrayList__new__LoA( jObjectArr a )
{
 return java_util_Arrays_ArrayList__this__LoA(
  (java_util_Arrays_ArrayList)jcgo_newObject((jvtable)&java_util_Arrays_ArrayList_methods),
  a);
}

JCGO_NOSEP_INLINE java_lang_Object CFASTCALL
java_util_Arrays_ArrayList__get__I( java_util_Arrays_ArrayList This,
 jint index )
{
 {
  return ((java_lang_Object)JCGO_ARRAY_LACCESS(JCGO_FIELD_NZACCESS(This,
   a), index));
 }
}

JCGO_NOSEP_INLINE jint CFASTCALL
java_util_Arrays_ArrayList__size__( java_util_Arrays_ArrayList This
 )
{
 {
  return JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(This, a));
 }
}

JCGO_NOSEP_INLINE jboolean CFASTCALL
java_util_Arrays_ArrayList__contains__Lo( java_util_Arrays_ArrayList
 This, java_lang_Object o )
{
 {
  return (jboolean)((java_util_Arrays_ArrayList__lastIndexOf__Lo(
   This, o)) >= 0);
 }
}

JCGO_NOSEP_STATIC jint CFASTCALL
java_util_Arrays_ArrayList__lastIndexOf__Lo( java_util_Arrays_ArrayList
 This, java_lang_Object o )
{
 {
  jint i;
  i= JCGO_ARRAY_LENGTH(JCGO_FIELD_NZACCESS(This, a));
  while (--i >= 0)
  {
   if ((java_util_AbstractCollection__equals__LoLo(
    o, ((java_lang_Object)JCGO_ARRAY_NZLACCESS(JCGO_FIELD_NZACCESS(This,
    a), i)))))
   {
    return i;
   }
  }
  return (-(jint)1);
 }
}

JCGO_NOSEP_DATA CONST struct java_util_Arrays_ArrayList_methods_s
 java_util_Arrays_ArrayList_methods=
{
 JCGO_CLASSREF_OF(java_util_Arrays_ArrayList__class),
 JCGO_GCJDESCR_INIT(java_util_Arrays_ArrayList_s, a)
 OBJT_java_util_Arrays_ArrayList,
 (JCGO_OBJSIZE_T)sizeof(struct java_util_Arrays_ArrayList_s),
 NULL,
 JCGO_CLINIT_INIT(0)
 0,
 java_util_AbstractList__equals__Lo,
 java_util_AbstractList__hashCode__,
 java_util_AbstractCollection__toString__,
 java_lang_Object__finalize__,
 java_util_AbstractCollection__isEmpty__,
 java_util_AbstractList__iterator__,
 java_util_Arrays_ArrayList__size__,
 java_util_AbstractList__add__Lo,
 java_util_Arrays_ArrayList__contains__Lo,
 java_util_AbstractCollection__containsAll__L07mt2,
 java_util_Arrays_ArrayList__get__I,
 java_util_AbstractList__add__ILo,
 java_util_AbstractList__listIterator__I,
 java_util_AbstractList__remove__I
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_util_Arrays_ArrayList_class_s
 java_util_Arrays_ArrayList__class JCGO_THRD_ATTRNONGC=
{
 {
  &java_lang_Class_methods,
  JCGO_MON_INIT
  JCGO_OBJREF_OF(*(java_lang_Object)&java_util_Arrays_ArrayList_methods),
  JCGO_STRREF_OF(jcgo_string1_ArrLstD3),
  JCGO_CLASSREF_OF(java_util_AbstractList__class),
  ((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
  0x1a
 }
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_ArrLstD3
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array2_Arrays),
 0, 26, (jint)0xab3ed4dL
};

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

#endif
