jclass jxbt_get_class(JNIEnv * env, const char *name)
{
jclass cls = env->FindClass(name);
-
if (not cls) {
jxbt_throw_jni(env, std::string("Class ") + name + " not found");
return nullptr;
jmethodID jxbt_get_jmethod(JNIEnv * env, jclass cls, const char *name, const char *signature)
{
- jmethodID id;
-
if (not cls)
return nullptr;
- id = env->GetMethodID(cls, name, signature);
+ jmethodID id = env->GetMethodID(cls, name, signature);
if (not id) {
jmethodID tostr_id = env->GetMethodID(cls, "getName", "()Ljava/lang/String;");
auto jclassname = (jstring)env->CallObjectMethod(cls, tostr_id, nullptr);
jmethodID jxbt_get_static_jmethod(JNIEnv * env, jclass cls, const char *name, const char *signature)
{
- jmethodID id;
-
if (not cls)
return nullptr;
- id = env->GetStaticMethodID(cls, name, signature);
+ jmethodID id = env->GetStaticMethodID(cls, name, signature);
if (not id) {
jmethodID tostr_id = env->GetMethodID(cls, "getName", "()Ljava/lang/String;");
auto jclassname = (jstring)env->CallObjectMethod(cls, tostr_id, nullptr);
jmethodID jxbt_get_static_smethod(JNIEnv * env, const char *classname, const char *name, const char *signature)
{
- jclass cls;
- jmethodID id;
- cls = jxbt_get_class(env, classname);
-
+ jclass cls = jxbt_get_class(env, classname);
if (not cls)
return nullptr;
- id = env->GetStaticMethodID(cls, name, signature);
-
+ jmethodID id = env->GetStaticMethodID(cls, name, signature);
if (not id) {
jxbt_throw_jni(env, std::string("Cannot find static method") + name + "(" + signature + ") in " + classname);
return nullptr;
jmethodID jxbt_get_smethod(JNIEnv * env, const char *classname, const char *name, const char *signature)
{
- jclass cls;
- jmethodID id;
- cls = jxbt_get_class(env, classname);
-
+ jclass cls = jxbt_get_class(env, classname);
if (not cls)
return nullptr;
- id = env->GetMethodID(cls, name, signature);
-
+ jmethodID id = env->GetMethodID(cls, name, signature);
if (not id) {
jxbt_throw_jni(env, std::string("Cannot find method") + name + "(" + signature + ") in " + classname);
return nullptr;
jfieldID jxbt_get_jfield(JNIEnv * env, jclass cls, const char *name, const char *signature)
{
- jfieldID id;
-
if (not cls)
return nullptr;
- id = env->GetFieldID(cls, name, signature);
-
+ jfieldID id = env->GetFieldID(cls, name, signature);
if (not id) {
jmethodID getname_id = env->GetMethodID(cls, "getName", "()Ljava/lang/String;");
auto jclassname = (jstring)env->CallObjectMethod(cls, getname_id, nullptr);
jfieldID jxbt_get_sfield(JNIEnv * env, const char *classname, const char *name, const char *signature)
{
jclass cls = jxbt_get_class(env, classname);
- jfieldID id;
-
if (not cls)
return nullptr;
- id = env->GetFieldID(cls, name, signature);
-
+ jfieldID id = env->GetFieldID(cls, name, signature);
if (not id) {
jxbt_throw_jni(env, std::string("Cannot find field") + signature + " " + name + " in " + classname);
return nullptr;