| // natVMObjectStreamClass.cc - Native part of VMObjectStreamClass class. | |
| /* Copyright (C) 2003 Free Software Foundation | |
| This VMObjectStreamClass is part of libgcj. | |
| This software is copyrighted work licensed under the terms of the | |
| Libgcj License. Please consult the ObjectInputStream "LIBGCJ_LICENSE" for | |
| details. */ | |
| #include <gcj/cni.h> | |
| #include <jvm.h> | |
| #include <java/io/VMObjectStreamClass.h> | |
| #include <java/lang/Class.h> | |
| #include <java/lang/reflect/Field.h> | |
| using namespace java::lang::reflect; | |
| jboolean | |
| java::io::VMObjectStreamClass::hasClassInitializer (jclass klass) | |
| { | |
| if (klass->isPrimitive()) | |
| return false; | |
| _Jv_Method *meth = _Jv_GetMethodLocal(klass, gcj::clinit_name, | |
| gcj::void_signature); | |
| return (meth != NULL); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setDoubleNative (Field *f, jobject obj, | |
| jdouble val) | |
| { | |
| f->setDouble (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setFloatNative (Field *f, jobject obj, | |
| jfloat val) | |
| { | |
| f->setFloat (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setLongNative (Field *f, jobject obj, jlong val) | |
| { | |
| f->setLong (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setIntNative (Field *f, jobject obj, jint val) | |
| { | |
| f->setInt (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setShortNative (Field *f, jobject obj, | |
| jshort val) | |
| { | |
| f->setShort (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setCharNative (Field *f, jobject obj, jchar val) | |
| { | |
| f->setChar (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setByteNative (Field *f, jobject obj, jbyte val) | |
| { | |
| f->setByte (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setBooleanNative (Field *f, jobject obj, | |
| jboolean val) | |
| { | |
| f->setBoolean (NULL, obj, val, false); | |
| } | |
| void | |
| java::io::VMObjectStreamClass::setObjectNative (Field *f, jobject obj, | |
| jobject val) | |
| { | |
| f->set (NULL, obj, val, f->getType(), false); | |
| } |