deep-c-rsc/jcgo_Out/Integer.c

462 lines
11 KiB
C

/* 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_Integer
#include "jcgobchk.h"
#endif
JCGO_NOSEP_INLINE java_lang_NumberFormatException CFASTCALL
java_lang_Integer__numberFormatExceptionForInputString__Ls( java_lang_String
str )
{
{
struct java_lang_StringBuilder_s jcgo_stackobj1;
return (java_lang_NumberFormatException__new__Ls(
java_lang_String__new__L5dy9e(
java_lang_StringBuilder__append__Ls(
java_lang_StringBuilder__append__Ls(
java_lang_StringBuilder__append__Ls(
java_lang_StringBuilder__this__(
JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)),
JCGO_STRREF_OF(jcgo_string2_Long)), str), JCGO_STRREF_OF(jcgo_string3_Long)))));
}
}
JCGO_NOSEP_STATIC java_lang_Integer CFASTCALL
java_lang_Integer__this__I( java_lang_Integer This, jint value )
{
{
(java_lang_Number__this__((java_lang_Number)This));
JCGO_FIELD_NZACCESS(This, value)= value;
}
return This;
}
JCGO_NOSEP_INLINE java_lang_Integer CFASTCALL
java_lang_Integer__new__I( jint value )
{
return java_lang_Integer__this__I(
(java_lang_Integer)jcgo_newObject((jvtable)&java_lang_Integer_methods),
value);
}
JCGO_NOSEP_INLINE java_lang_Integer CFASTCALL
java_lang_Integer__decode__Ls( java_lang_String str )
{
{
if (str == jnull)
{
JCGO_THROW_EXC(java_lang_NullPointerException__new__());
}
return (java_lang_Integer__new__I(
(java_lang_Integer__parseInt__LsIZ(
str, (jint)10, (jboolean)jtrue))));
}
}
JCGO_NOSEP_INLINE java_lang_Integer CFASTCALL
java_lang_Integer__getInteger__LsL37kke( java_lang_String nm, java_lang_Integer
def )
{
{
if (nm == jnull || (java_lang_String__equals__Lo(
JCGO_STRREF_OF(jcgo_string3_String6D), (java_lang_Object)nm)))
{
return def;
}
nm= (java_lang_System__getProperty__Ls(
nm));
if (nm == jnull)
{
return def;
}
{
JCGO_TRY_BLOCK
{
{
java_lang_Integer jcgo_retval= (java_lang_Integer__decode__Ls(
nm));
#ifndef JCGO_SEHTRY
jcgo_tryLeave();
#endif
return jcgo_retval;
}
}
JCGO_TRY_LEAVE
JCGO_TRY_CATCHES(1)
JCGO_TRY_CATCH(OBJT_java_lang_NumberFormatException, MAXT_java_lang_NumberFormatException)
{
return def;
}
JCGO_TRY_RETHROW(1)
}
}
return jnull;
}
JCGO_NOSEP_STATIC java_lang_String CFASTCALL
java_lang_Integer__toString__IIX( jint num, jint radix, java_lang_String
jcgo_stackparam )
{
{
jcharArr buffer;
jint i;
jboolean isNeg;
if (radix < java_lang_Character__MIN_RADIX || radix > java_lang_Character__MAX_RADIX)
{
radix= (jint)10;
}
buffer= (jcharArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jchar), 0,
java_lang_Integer__SIZE + (jint)1);
i= java_lang_Integer__SIZE + (jint)1;
isNeg= jfalse;
if (num < 0)
{
isNeg= (jboolean)jtrue;
num= (-num);
if (num < 0)
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jchar jcgo_rcvrC1;
(jcgo_rcvrL1= (jObject)buffer, jcgo_rcvrI1= --i, jcgo_rcvrC1= JCGO_ARRAY_NZCACCESS(java_lang_Number__digits,
(jint)(jcgo_mod((-(num + radix)), radix))), JCGO_ARRAY_NZCACCESS((jcharArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrC1);
num= (-(jcgo_div(num, radix)));
}
}
do
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jchar jcgo_rcvrC1;
(jcgo_rcvrL1= (jObject)buffer, jcgo_rcvrI1= --i, jcgo_rcvrC1= JCGO_ARRAY_NZCACCESS(java_lang_Number__digits,
jcgo_mod(num, radix)), JCGO_ARRAY_NZCACCESS((jcharArr)jcgo_rcvrL1,
jcgo_rcvrI1)= jcgo_rcvrC1);
num= jcgo_div(num, radix);
}
while (num > 0);
if (isNeg)
{
JCGO_ARRAY_NZCACCESS(buffer, --i)= (jchar)45/*'-'*/;
}
return (java_lang_String__this__CAIIZ(
jcgo_stackparam, buffer, i, (java_lang_Integer__SIZE + (jint)1) -
i, (jboolean)jtrue));
}
}
JCGO_NOSEP_FRWINL java_lang_String CFASTCALL
java_lang_Integer__toString__II( jint num, jint radix )
{
return java_lang_Integer__toString__IIX(
num, radix, (java_lang_String)jcgo_newObject((jvtable)&java_lang_String_methods));
}
JCGO_NOSEP_FRWINL java_lang_String CFASTCALL
java_lang_Integer__toHexString__IX( jint i, java_lang_String jcgo_stackparam
)
{
{
return (java_lang_Integer__toUnsignedString__IIX(
i, (jint)4, jcgo_stackparam));
}
}
JCGO_NOSEP_FRWINL java_lang_String CFASTCALL
java_lang_Integer__toHexString__I( jint i )
{
return java_lang_Integer__toHexString__IX(
i, (java_lang_String)jcgo_newObject((jvtable)&java_lang_String_methods));
}
JCGO_NOSEP_INLINE java_lang_String CFASTCALL
java_lang_Integer__toOctalString__IX( jint i, java_lang_String jcgo_stackparam
)
{
{
return (java_lang_Integer__toUnsignedString__IIX(
i, (jint)3, jcgo_stackparam));
}
}
JCGO_NOSEP_INLINE java_lang_String CFASTCALL
java_lang_Integer__toOctalString__I( jint i )
{
return java_lang_Integer__toOctalString__IX(
i, (java_lang_String)jcgo_newObject((jvtable)&java_lang_String_methods));
}
JCGO_NOSEP_FRWINL jint CFASTCALL
java_lang_Integer__parseInt__Ls( java_lang_String s )
{
{
return (java_lang_Integer__parseInt__LsIZ(
s, (jint)10, (jboolean)jfalse));
}
}
JCGO_NOSEP_INLINE jint CFASTCALL
java_lang_Integer__intValue__( java_lang_Integer This )
{
{
return JCGO_FIELD_NZACCESS(This, value);
}
}
JCGO_NOSEP_INLINE java_lang_String CFASTCALL
java_lang_Integer__toString__( java_lang_Integer This )
{
{
return (java_lang_String__valueOf__I(
JCGO_FIELD_NZACCESS(This, value)));
}
}
JCGO_NOSEP_INLINE jint CFASTCALL
java_lang_Integer__hashCode__( java_lang_Integer This )
{
{
return JCGO_FIELD_NZACCESS(This, value);
}
}
JCGO_NOSEP_INLINE jboolean CFASTCALL
java_lang_Integer__equals__Lo( java_lang_Integer This, java_lang_Object
obj )
{
{
return (jboolean)(jcgo_instanceOf0(OBJT_java_lang_Integer, MAXT_java_lang_Integer,
(jObject)obj) && JCGO_FIELD_NZACCESS(This, value) == JCGO_FIELD_NZACCESS(((java_lang_Integer)obj),
value));
}
}
JCGO_NOSEP_INLINE java_lang_Integer CFASTCALL
java_lang_Integer__getInteger__LsI( java_lang_String nm, jint val
)
{
{
java_lang_Integer result;
result= (java_lang_Integer__getInteger__LsL37kke(
nm, (java_lang_Integer)jnull));
return result == jnull? (java_lang_Integer__new__I(
val)) : result;
}
}
JCGO_NOSEP_STATIC java_lang_String CFASTCALL
java_lang_Integer__toUnsignedString__IIX( jint num, jint exp, java_lang_String
jcgo_stackparam )
{
{
jcharArr buffer;
jint mask;
jint i;
mask= JCGO_SHL_F((jint)1, exp) - (jint)1;
buffer= (jcharArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jchar), 0,
java_lang_Integer__SIZE);
i= java_lang_Integer__SIZE;
do
{
jObject jcgo_rcvrL1;
jint jcgo_rcvrI1;
jchar jcgo_rcvrC1;
(jcgo_rcvrL1= (jObject)buffer, jcgo_rcvrI1= --i, jcgo_rcvrC1= JCGO_ARRAY_NZCACCESS(java_lang_Number__digits,
num & mask), JCGO_ARRAY_NZCACCESS((jcharArr)jcgo_rcvrL1, jcgo_rcvrI1)=
jcgo_rcvrC1);
num= JCGO_USHR_F(num, exp);
}
while (num != 0);
return (java_lang_String__this__CAIIZ(
jcgo_stackparam, buffer, i, java_lang_Integer__SIZE - i, (jboolean)jtrue));
}
}
JCGO_NOSEP_FRWINL java_lang_String CFASTCALL
java_lang_Integer__toUnsignedString__II( jint num, jint exp )
{
return java_lang_Integer__toUnsignedString__IIX(
num, exp, (java_lang_String)jcgo_newObject((jvtable)&java_lang_String_methods));
}
JCGO_NOSEP_STATIC jint CFASTCALL
java_lang_Integer__parseInt__LsIZ( java_lang_String str, jint radix,
jboolean decode )
{
{
jint index;
jint len;
jint ch;
jint max_7e1;
jint val;
jboolean isNeg;
if (!decode && str == jnull)
{
JCGO_THROW_EXC((java_lang_NumberFormatException__new__Ls(
JCGO_STRREF_OF(jcgo_string5_String6D))));
}
index= 0;
len= (JCGO_CALL_FINALF(str) java_lang_String__length__(
str));
isNeg= jfalse;
if (len == 0)
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
ch= (jint)(java_lang_String__charAt__I(
str, index));
if (ch == (jint)(jchar)45/*'-'*/)
{
if (len == (jint)1)
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
isNeg= (jboolean)jtrue;
ch= (jint)(java_lang_String__charAt__I(
str, ++index));
}
else
{
if (ch == (jint)(jchar)43/*'+'*/)
{
if (len == (jint)1)
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
ch= (jint)(java_lang_String__charAt__I(
str, ++index));
}
}
if (decode)
{
if (ch == (jint)(jchar)48/*'0'*/)
{
if (++index == len)
{
return 0;
}
if (((java_lang_String__charAt__I(
str, index)) & ~((jint)(jchar)120/*'x'*/ ^ (jchar)88/*'X'*/)) ==
(jint)(jchar)88/*'X'*/)
{
radix= (jint)16;
index++;
}
else
{
radix= (jint)8;
}
}
else
{
if (ch == (jint)(jchar)35/*'#'*/)
{
radix= (jint)16;
index++;
}
}
}
if (index == len)
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
max_7e1= jcgo_div(java_lang_Integer__MAX_VALUE, radix);
if (isNeg && jcgo_mod(java_lang_Integer__MAX_VALUE, radix) == radix -
(jint)1)
{
++max_7e1;
}
val= 0;
while (index < len)
{
jchar jcgo_rcvrC1;
if (val < 0 || val > max_7e1)
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
ch= (jcgo_rcvrC1= (java_lang_String__charAt__I(
str, index++)), java_lang_Character__digit__CI(
radix, jcgo_rcvrC1));
val= val * radix + ch;
if (ch < 0 || (val < 0 && (!isNeg || val != java_lang_Integer__MIN_VALUE)))
{
JCGO_THROW_EXC((java_lang_Integer__numberFormatExceptionForInputString__Ls(
str)));
}
}
return isNeg? (-val) : val;
}
}
JCGO_NOSEP_DATA CONST struct java_lang_Integer_methods_s java_lang_Integer_methods=
{
JCGO_CLASSREF_OF(java_lang_Integer__class),
JCGO_GCJDESCR_ZEROINIT
OBJT_java_lang_Integer,
-(JCGO_OBJSIZE_T)sizeof(struct java_lang_Integer_s),
NULL,
JCGO_CLINIT_INIT(0)
0,
java_lang_Integer__equals__Lo,
java_lang_Integer__hashCode__,
java_lang_Integer__toString__,
java_lang_Object__finalize__
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_Integer_class_s
java_lang_Integer__class JCGO_THRD_ATTRNONGC=
{
{
&java_lang_Class_methods,
JCGO_MON_INIT
JCGO_OBJREF_OF(*(java_lang_Object)&java_lang_Integer_methods),
JCGO_STRREF_OF(jcgo_string1_Integer),
JCGO_CLASSREF_OF(java_lang_Number__class),
((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)),
0x111
}
};
JCGO_NOSEP_DATA CONST jcgo_arrtype492_Mdclnt jcgo_array2_Integer=
{
(jvtable)&jbyteArr_methods,
JCGO_MON_INIT
17,
{
(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)73/*'I'*/, (jbyte)(jchar)110/*'n'*/,
(jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)103/*'g'*/,
(jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)114/*'r'*/
}
};
JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_Integer
JCGO_THRD_ATTRNONGC=
{
&java_lang_String_methods,
JCGO_MON_INIT
(java_lang_Object)JCGO_OBJREF_OF(jcgo_array2_Integer),
0, 17, (jint)0x8567756aL
};
#ifdef CHKALL_java_lang_Integer
#include "jcgochke.h"
#endif
#endif