hotspot/src/share/vm/prims/jni.h
author ysr
Thu, 03 Dec 2009 15:01:57 -0800
changeset 4461 c17c526d36ef
parent 1 489c9b5090e2
child 5547 f4b087cbb361
permissions -rw-r--r--
6906727: UseCompressedOops: some card-marking fixes related to object arrays Summary: Introduced a new write_ref_array(HeapWords* start, size_t count) method that does the requisite MemRegion range calculation so (some of the) clients of the erstwhile write_ref_array(MemRegion mr) do not need to worry. This removed all external uses of array_size(), which was also simplified and made private. Asserts were added to catch other possible issues. Further, less essential, fixes stemming from this investigation are deferred to CR 6904516 (to follow shortly in hs17). Reviewed-by: kvn, coleenp, jmasa
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     1
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
     2
 * Copyright 1997-2007 Sun Microsystems, Inc.  All Rights Reserved.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     4
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
489c9b5090e2 Initial load
duke
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
489c9b5090e2 Initial load
duke
parents:
diff changeset
     7
 * published by the Free Software Foundation.  Sun designates this
489c9b5090e2 Initial load
duke
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
489c9b5090e2 Initial load
duke
parents:
diff changeset
     9
 * by Sun in the LICENSE file that accompanied this code.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    10
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
489c9b5090e2 Initial load
duke
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
489c9b5090e2 Initial load
duke
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
489c9b5090e2 Initial load
duke
parents:
diff changeset
    15
 * accompanied this code).
489c9b5090e2 Initial load
duke
parents:
diff changeset
    16
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
489c9b5090e2 Initial load
duke
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    20
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
    21
 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    22
 * CA 95054 USA or visit www.sun.com if you need additional information or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    23
 * have any questions.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    24
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
    25
489c9b5090e2 Initial load
duke
parents:
diff changeset
    26
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
    27
 * We used part of Netscape's Java Runtime Interface (JRI) as the starting
489c9b5090e2 Initial load
duke
parents:
diff changeset
    28
 * point of our design and implementation.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    29
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
    30
489c9b5090e2 Initial load
duke
parents:
diff changeset
    31
/******************************************************************************
489c9b5090e2 Initial load
duke
parents:
diff changeset
    32
 * Java Runtime Interface
489c9b5090e2 Initial load
duke
parents:
diff changeset
    33
 * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    34
 *****************************************************************************/
489c9b5090e2 Initial load
duke
parents:
diff changeset
    35
489c9b5090e2 Initial load
duke
parents:
diff changeset
    36
#ifndef _JAVASOFT_JNI_H_
489c9b5090e2 Initial load
duke
parents:
diff changeset
    37
#define _JAVASOFT_JNI_H_
489c9b5090e2 Initial load
duke
parents:
diff changeset
    38
489c9b5090e2 Initial load
duke
parents:
diff changeset
    39
#include <stdio.h>
489c9b5090e2 Initial load
duke
parents:
diff changeset
    40
#include <stdarg.h>
489c9b5090e2 Initial load
duke
parents:
diff changeset
    41
489c9b5090e2 Initial load
duke
parents:
diff changeset
    42
/* jni_md.h contains the machine-dependent typedefs for jbyte, jint
489c9b5090e2 Initial load
duke
parents:
diff changeset
    43
   and jlong */
489c9b5090e2 Initial load
duke
parents:
diff changeset
    44
489c9b5090e2 Initial load
duke
parents:
diff changeset
    45
#include "jni_md.h"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    46
489c9b5090e2 Initial load
duke
parents:
diff changeset
    47
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
    48
extern "C" {
489c9b5090e2 Initial load
duke
parents:
diff changeset
    49
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
    50
489c9b5090e2 Initial load
duke
parents:
diff changeset
    51
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
    52
 * JNI Types
489c9b5090e2 Initial load
duke
parents:
diff changeset
    53
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
    54
489c9b5090e2 Initial load
duke
parents:
diff changeset
    55
#ifndef JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H
489c9b5090e2 Initial load
duke
parents:
diff changeset
    56
489c9b5090e2 Initial load
duke
parents:
diff changeset
    57
typedef unsigned char   jboolean;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    58
typedef unsigned short  jchar;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    59
typedef short           jshort;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    60
typedef float           jfloat;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    61
typedef double          jdouble;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    62
489c9b5090e2 Initial load
duke
parents:
diff changeset
    63
typedef jint            jsize;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    64
489c9b5090e2 Initial load
duke
parents:
diff changeset
    65
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
    66
489c9b5090e2 Initial load
duke
parents:
diff changeset
    67
class _jobject {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    68
class _jclass : public _jobject {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    69
class _jthrowable : public _jobject {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    70
class _jstring : public _jobject {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    71
class _jarray : public _jobject {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    72
class _jbooleanArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    73
class _jbyteArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    74
class _jcharArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    75
class _jshortArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    76
class _jintArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    77
class _jlongArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    78
class _jfloatArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    79
class _jdoubleArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    80
class _jobjectArray : public _jarray {};
489c9b5090e2 Initial load
duke
parents:
diff changeset
    81
489c9b5090e2 Initial load
duke
parents:
diff changeset
    82
typedef _jobject *jobject;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    83
typedef _jclass *jclass;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    84
typedef _jthrowable *jthrowable;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    85
typedef _jstring *jstring;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    86
typedef _jarray *jarray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    87
typedef _jbooleanArray *jbooleanArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    88
typedef _jbyteArray *jbyteArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    89
typedef _jcharArray *jcharArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    90
typedef _jshortArray *jshortArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    91
typedef _jintArray *jintArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    92
typedef _jlongArray *jlongArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    93
typedef _jfloatArray *jfloatArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    94
typedef _jdoubleArray *jdoubleArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    95
typedef _jobjectArray *jobjectArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
    96
489c9b5090e2 Initial load
duke
parents:
diff changeset
    97
#else
489c9b5090e2 Initial load
duke
parents:
diff changeset
    98
489c9b5090e2 Initial load
duke
parents:
diff changeset
    99
struct _jobject;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   100
489c9b5090e2 Initial load
duke
parents:
diff changeset
   101
typedef struct _jobject *jobject;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   102
typedef jobject jclass;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   103
typedef jobject jthrowable;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   104
typedef jobject jstring;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   105
typedef jobject jarray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   106
typedef jarray jbooleanArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   107
typedef jarray jbyteArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   108
typedef jarray jcharArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   109
typedef jarray jshortArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   110
typedef jarray jintArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   111
typedef jarray jlongArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   112
typedef jarray jfloatArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   113
typedef jarray jdoubleArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   114
typedef jarray jobjectArray;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   115
489c9b5090e2 Initial load
duke
parents:
diff changeset
   116
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   117
489c9b5090e2 Initial load
duke
parents:
diff changeset
   118
typedef jobject jweak;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   119
489c9b5090e2 Initial load
duke
parents:
diff changeset
   120
typedef union jvalue {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   121
    jboolean z;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   122
    jbyte    b;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   123
    jchar    c;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   124
    jshort   s;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   125
    jint     i;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   126
    jlong    j;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   127
    jfloat   f;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   128
    jdouble  d;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   129
    jobject  l;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   130
} jvalue;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   131
489c9b5090e2 Initial load
duke
parents:
diff changeset
   132
struct _jfieldID;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   133
typedef struct _jfieldID *jfieldID;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   134
489c9b5090e2 Initial load
duke
parents:
diff changeset
   135
struct _jmethodID;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   136
typedef struct _jmethodID *jmethodID;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   137
489c9b5090e2 Initial load
duke
parents:
diff changeset
   138
/* Return values from jobjectRefType */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   139
typedef enum _jobjectType {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   140
     JNIInvalidRefType    = 0,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   141
     JNILocalRefType      = 1,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   142
     JNIGlobalRefType     = 2,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   143
     JNIWeakGlobalRefType = 3
489c9b5090e2 Initial load
duke
parents:
diff changeset
   144
} jobjectRefType;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   145
489c9b5090e2 Initial load
duke
parents:
diff changeset
   146
489c9b5090e2 Initial load
duke
parents:
diff changeset
   147
#endif /* JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   148
489c9b5090e2 Initial load
duke
parents:
diff changeset
   149
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   150
 * jboolean constants
489c9b5090e2 Initial load
duke
parents:
diff changeset
   151
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   152
489c9b5090e2 Initial load
duke
parents:
diff changeset
   153
#define JNI_FALSE 0
489c9b5090e2 Initial load
duke
parents:
diff changeset
   154
#define JNI_TRUE 1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   155
489c9b5090e2 Initial load
duke
parents:
diff changeset
   156
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   157
 * possible return values for JNI functions.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   158
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   159
489c9b5090e2 Initial load
duke
parents:
diff changeset
   160
#define JNI_OK           0                 /* success */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   161
#define JNI_ERR          (-1)              /* unknown error */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   162
#define JNI_EDETACHED    (-2)              /* thread detached from the VM */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   163
#define JNI_EVERSION     (-3)              /* JNI version error */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   164
#define JNI_ENOMEM       (-4)              /* not enough memory */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   165
#define JNI_EEXIST       (-5)              /* VM already created */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   166
#define JNI_EINVAL       (-6)              /* invalid arguments */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   167
489c9b5090e2 Initial load
duke
parents:
diff changeset
   168
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   169
 * used in ReleaseScalarArrayElements
489c9b5090e2 Initial load
duke
parents:
diff changeset
   170
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   171
489c9b5090e2 Initial load
duke
parents:
diff changeset
   172
#define JNI_COMMIT 1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   173
#define JNI_ABORT 2
489c9b5090e2 Initial load
duke
parents:
diff changeset
   174
489c9b5090e2 Initial load
duke
parents:
diff changeset
   175
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   176
 * used in RegisterNatives to describe native method name, signature,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   177
 * and function pointer.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   178
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   179
489c9b5090e2 Initial load
duke
parents:
diff changeset
   180
typedef struct {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   181
    char *name;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   182
    char *signature;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   183
    void *fnPtr;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   184
} JNINativeMethod;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   185
489c9b5090e2 Initial load
duke
parents:
diff changeset
   186
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   187
 * JNI Native Method Interface.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   188
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   189
489c9b5090e2 Initial load
duke
parents:
diff changeset
   190
struct JNINativeInterface_;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   191
489c9b5090e2 Initial load
duke
parents:
diff changeset
   192
struct JNIEnv_;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   193
489c9b5090e2 Initial load
duke
parents:
diff changeset
   194
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
   195
typedef JNIEnv_ JNIEnv;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   196
#else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   197
typedef const struct JNINativeInterface_ *JNIEnv;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   198
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   199
489c9b5090e2 Initial load
duke
parents:
diff changeset
   200
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   201
 * JNI Invocation Interface.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   202
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   203
489c9b5090e2 Initial load
duke
parents:
diff changeset
   204
struct JNIInvokeInterface_;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   205
489c9b5090e2 Initial load
duke
parents:
diff changeset
   206
struct JavaVM_;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   207
489c9b5090e2 Initial load
duke
parents:
diff changeset
   208
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
   209
typedef JavaVM_ JavaVM;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   210
#else
489c9b5090e2 Initial load
duke
parents:
diff changeset
   211
typedef const struct JNIInvokeInterface_ *JavaVM;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   212
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   213
489c9b5090e2 Initial load
duke
parents:
diff changeset
   214
struct JNINativeInterface_ {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   215
    void *reserved0;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   216
    void *reserved1;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   217
    void *reserved2;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   218
489c9b5090e2 Initial load
duke
parents:
diff changeset
   219
    void *reserved3;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   220
    jint (JNICALL *GetVersion)(JNIEnv *env);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   221
489c9b5090e2 Initial load
duke
parents:
diff changeset
   222
    jclass (JNICALL *DefineClass)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   223
      (JNIEnv *env, const char *name, jobject loader, const jbyte *buf,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   224
       jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   225
    jclass (JNICALL *FindClass)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   226
      (JNIEnv *env, const char *name);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   227
489c9b5090e2 Initial load
duke
parents:
diff changeset
   228
    jmethodID (JNICALL *FromReflectedMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   229
      (JNIEnv *env, jobject method);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   230
    jfieldID (JNICALL *FromReflectedField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   231
      (JNIEnv *env, jobject field);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   232
489c9b5090e2 Initial load
duke
parents:
diff changeset
   233
    jobject (JNICALL *ToReflectedMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   234
      (JNIEnv *env, jclass cls, jmethodID methodID, jboolean isStatic);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   235
489c9b5090e2 Initial load
duke
parents:
diff changeset
   236
    jclass (JNICALL *GetSuperclass)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   237
      (JNIEnv *env, jclass sub);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   238
    jboolean (JNICALL *IsAssignableFrom)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   239
      (JNIEnv *env, jclass sub, jclass sup);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   240
489c9b5090e2 Initial load
duke
parents:
diff changeset
   241
    jobject (JNICALL *ToReflectedField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   242
      (JNIEnv *env, jclass cls, jfieldID fieldID, jboolean isStatic);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   243
489c9b5090e2 Initial load
duke
parents:
diff changeset
   244
    jint (JNICALL *Throw)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   245
      (JNIEnv *env, jthrowable obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   246
    jint (JNICALL *ThrowNew)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   247
      (JNIEnv *env, jclass clazz, const char *msg);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   248
    jthrowable (JNICALL *ExceptionOccurred)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   249
      (JNIEnv *env);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   250
    void (JNICALL *ExceptionDescribe)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   251
      (JNIEnv *env);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   252
    void (JNICALL *ExceptionClear)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   253
      (JNIEnv *env);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   254
    void (JNICALL *FatalError)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   255
      (JNIEnv *env, const char *msg);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   256
489c9b5090e2 Initial load
duke
parents:
diff changeset
   257
    jint (JNICALL *PushLocalFrame)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   258
      (JNIEnv *env, jint capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   259
    jobject (JNICALL *PopLocalFrame)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   260
      (JNIEnv *env, jobject result);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   261
489c9b5090e2 Initial load
duke
parents:
diff changeset
   262
    jobject (JNICALL *NewGlobalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   263
      (JNIEnv *env, jobject lobj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   264
    void (JNICALL *DeleteGlobalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   265
      (JNIEnv *env, jobject gref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   266
    void (JNICALL *DeleteLocalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   267
      (JNIEnv *env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   268
    jboolean (JNICALL *IsSameObject)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   269
      (JNIEnv *env, jobject obj1, jobject obj2);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   270
    jobject (JNICALL *NewLocalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   271
      (JNIEnv *env, jobject ref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   272
    jint (JNICALL *EnsureLocalCapacity)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   273
      (JNIEnv *env, jint capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   274
489c9b5090e2 Initial load
duke
parents:
diff changeset
   275
    jobject (JNICALL *AllocObject)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   276
      (JNIEnv *env, jclass clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   277
    jobject (JNICALL *NewObject)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   278
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   279
    jobject (JNICALL *NewObjectV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   280
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   281
    jobject (JNICALL *NewObjectA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   282
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   283
489c9b5090e2 Initial load
duke
parents:
diff changeset
   284
    jclass (JNICALL *GetObjectClass)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   285
      (JNIEnv *env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   286
    jboolean (JNICALL *IsInstanceOf)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   287
      (JNIEnv *env, jobject obj, jclass clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   288
489c9b5090e2 Initial load
duke
parents:
diff changeset
   289
    jmethodID (JNICALL *GetMethodID)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   290
      (JNIEnv *env, jclass clazz, const char *name, const char *sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   291
489c9b5090e2 Initial load
duke
parents:
diff changeset
   292
    jobject (JNICALL *CallObjectMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   293
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   294
    jobject (JNICALL *CallObjectMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   295
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   296
    jobject (JNICALL *CallObjectMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   297
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   298
489c9b5090e2 Initial load
duke
parents:
diff changeset
   299
    jboolean (JNICALL *CallBooleanMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   300
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   301
    jboolean (JNICALL *CallBooleanMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   302
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   303
    jboolean (JNICALL *CallBooleanMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   304
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   305
489c9b5090e2 Initial load
duke
parents:
diff changeset
   306
    jbyte (JNICALL *CallByteMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   307
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   308
    jbyte (JNICALL *CallByteMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   309
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   310
    jbyte (JNICALL *CallByteMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   311
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   312
489c9b5090e2 Initial load
duke
parents:
diff changeset
   313
    jchar (JNICALL *CallCharMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   314
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   315
    jchar (JNICALL *CallCharMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   316
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   317
    jchar (JNICALL *CallCharMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   318
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   319
489c9b5090e2 Initial load
duke
parents:
diff changeset
   320
    jshort (JNICALL *CallShortMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   321
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   322
    jshort (JNICALL *CallShortMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   323
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   324
    jshort (JNICALL *CallShortMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   325
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   326
489c9b5090e2 Initial load
duke
parents:
diff changeset
   327
    jint (JNICALL *CallIntMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   328
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   329
    jint (JNICALL *CallIntMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   330
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   331
    jint (JNICALL *CallIntMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   332
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   333
489c9b5090e2 Initial load
duke
parents:
diff changeset
   334
    jlong (JNICALL *CallLongMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   335
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   336
    jlong (JNICALL *CallLongMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   337
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   338
    jlong (JNICALL *CallLongMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   339
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   340
489c9b5090e2 Initial load
duke
parents:
diff changeset
   341
    jfloat (JNICALL *CallFloatMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   342
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   343
    jfloat (JNICALL *CallFloatMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   344
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   345
    jfloat (JNICALL *CallFloatMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   346
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   347
489c9b5090e2 Initial load
duke
parents:
diff changeset
   348
    jdouble (JNICALL *CallDoubleMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   349
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   350
    jdouble (JNICALL *CallDoubleMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   351
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   352
    jdouble (JNICALL *CallDoubleMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   353
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   354
489c9b5090e2 Initial load
duke
parents:
diff changeset
   355
    void (JNICALL *CallVoidMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   356
      (JNIEnv *env, jobject obj, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   357
    void (JNICALL *CallVoidMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   358
      (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   359
    void (JNICALL *CallVoidMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   360
      (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   361
489c9b5090e2 Initial load
duke
parents:
diff changeset
   362
    jobject (JNICALL *CallNonvirtualObjectMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   363
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   364
    jobject (JNICALL *CallNonvirtualObjectMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   365
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   366
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   367
    jobject (JNICALL *CallNonvirtualObjectMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   368
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   369
       const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   370
489c9b5090e2 Initial load
duke
parents:
diff changeset
   371
    jboolean (JNICALL *CallNonvirtualBooleanMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   372
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   373
    jboolean (JNICALL *CallNonvirtualBooleanMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   374
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   375
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   376
    jboolean (JNICALL *CallNonvirtualBooleanMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   377
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   378
       const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   379
489c9b5090e2 Initial load
duke
parents:
diff changeset
   380
    jbyte (JNICALL *CallNonvirtualByteMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   381
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   382
    jbyte (JNICALL *CallNonvirtualByteMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   383
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   384
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   385
    jbyte (JNICALL *CallNonvirtualByteMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   386
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   387
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   388
489c9b5090e2 Initial load
duke
parents:
diff changeset
   389
    jchar (JNICALL *CallNonvirtualCharMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   390
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   391
    jchar (JNICALL *CallNonvirtualCharMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   392
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   393
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   394
    jchar (JNICALL *CallNonvirtualCharMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   395
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   396
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   397
489c9b5090e2 Initial load
duke
parents:
diff changeset
   398
    jshort (JNICALL *CallNonvirtualShortMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   399
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   400
    jshort (JNICALL *CallNonvirtualShortMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   401
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   402
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   403
    jshort (JNICALL *CallNonvirtualShortMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   404
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   405
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   406
489c9b5090e2 Initial load
duke
parents:
diff changeset
   407
    jint (JNICALL *CallNonvirtualIntMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   408
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   409
    jint (JNICALL *CallNonvirtualIntMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   410
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   411
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   412
    jint (JNICALL *CallNonvirtualIntMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   413
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   414
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   415
489c9b5090e2 Initial load
duke
parents:
diff changeset
   416
    jlong (JNICALL *CallNonvirtualLongMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   417
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   418
    jlong (JNICALL *CallNonvirtualLongMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   419
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   420
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   421
    jlong (JNICALL *CallNonvirtualLongMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   422
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   423
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   424
489c9b5090e2 Initial load
duke
parents:
diff changeset
   425
    jfloat (JNICALL *CallNonvirtualFloatMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   426
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   427
    jfloat (JNICALL *CallNonvirtualFloatMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   428
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   429
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   430
    jfloat (JNICALL *CallNonvirtualFloatMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   431
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   432
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   433
489c9b5090e2 Initial load
duke
parents:
diff changeset
   434
    jdouble (JNICALL *CallNonvirtualDoubleMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   435
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   436
    jdouble (JNICALL *CallNonvirtualDoubleMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   437
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   438
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   439
    jdouble (JNICALL *CallNonvirtualDoubleMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   440
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   441
       const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   442
489c9b5090e2 Initial load
duke
parents:
diff changeset
   443
    void (JNICALL *CallNonvirtualVoidMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   444
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   445
    void (JNICALL *CallNonvirtualVoidMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   446
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   447
       va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   448
    void (JNICALL *CallNonvirtualVoidMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   449
      (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   450
       const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   451
489c9b5090e2 Initial load
duke
parents:
diff changeset
   452
    jfieldID (JNICALL *GetFieldID)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   453
      (JNIEnv *env, jclass clazz, const char *name, const char *sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   454
489c9b5090e2 Initial load
duke
parents:
diff changeset
   455
    jobject (JNICALL *GetObjectField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   456
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   457
    jboolean (JNICALL *GetBooleanField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   458
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   459
    jbyte (JNICALL *GetByteField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   460
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   461
    jchar (JNICALL *GetCharField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   462
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   463
    jshort (JNICALL *GetShortField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   464
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   465
    jint (JNICALL *GetIntField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   466
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   467
    jlong (JNICALL *GetLongField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   468
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   469
    jfloat (JNICALL *GetFloatField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   470
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   471
    jdouble (JNICALL *GetDoubleField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   472
      (JNIEnv *env, jobject obj, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   473
489c9b5090e2 Initial load
duke
parents:
diff changeset
   474
    void (JNICALL *SetObjectField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   475
      (JNIEnv *env, jobject obj, jfieldID fieldID, jobject val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   476
    void (JNICALL *SetBooleanField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   477
      (JNIEnv *env, jobject obj, jfieldID fieldID, jboolean val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   478
    void (JNICALL *SetByteField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   479
      (JNIEnv *env, jobject obj, jfieldID fieldID, jbyte val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   480
    void (JNICALL *SetCharField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   481
      (JNIEnv *env, jobject obj, jfieldID fieldID, jchar val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   482
    void (JNICALL *SetShortField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   483
      (JNIEnv *env, jobject obj, jfieldID fieldID, jshort val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   484
    void (JNICALL *SetIntField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   485
      (JNIEnv *env, jobject obj, jfieldID fieldID, jint val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   486
    void (JNICALL *SetLongField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   487
      (JNIEnv *env, jobject obj, jfieldID fieldID, jlong val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   488
    void (JNICALL *SetFloatField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   489
      (JNIEnv *env, jobject obj, jfieldID fieldID, jfloat val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   490
    void (JNICALL *SetDoubleField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   491
      (JNIEnv *env, jobject obj, jfieldID fieldID, jdouble val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   492
489c9b5090e2 Initial load
duke
parents:
diff changeset
   493
    jmethodID (JNICALL *GetStaticMethodID)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   494
      (JNIEnv *env, jclass clazz, const char *name, const char *sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   495
489c9b5090e2 Initial load
duke
parents:
diff changeset
   496
    jobject (JNICALL *CallStaticObjectMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   497
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   498
    jobject (JNICALL *CallStaticObjectMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   499
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   500
    jobject (JNICALL *CallStaticObjectMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   501
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   502
489c9b5090e2 Initial load
duke
parents:
diff changeset
   503
    jboolean (JNICALL *CallStaticBooleanMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   504
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   505
    jboolean (JNICALL *CallStaticBooleanMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   506
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   507
    jboolean (JNICALL *CallStaticBooleanMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   508
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   509
489c9b5090e2 Initial load
duke
parents:
diff changeset
   510
    jbyte (JNICALL *CallStaticByteMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   511
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   512
    jbyte (JNICALL *CallStaticByteMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   513
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   514
    jbyte (JNICALL *CallStaticByteMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   515
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   516
489c9b5090e2 Initial load
duke
parents:
diff changeset
   517
    jchar (JNICALL *CallStaticCharMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   518
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   519
    jchar (JNICALL *CallStaticCharMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   520
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   521
    jchar (JNICALL *CallStaticCharMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   522
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   523
489c9b5090e2 Initial load
duke
parents:
diff changeset
   524
    jshort (JNICALL *CallStaticShortMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   525
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   526
    jshort (JNICALL *CallStaticShortMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   527
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   528
    jshort (JNICALL *CallStaticShortMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   529
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   530
489c9b5090e2 Initial load
duke
parents:
diff changeset
   531
    jint (JNICALL *CallStaticIntMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   532
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   533
    jint (JNICALL *CallStaticIntMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   534
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   535
    jint (JNICALL *CallStaticIntMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   536
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   537
489c9b5090e2 Initial load
duke
parents:
diff changeset
   538
    jlong (JNICALL *CallStaticLongMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   539
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   540
    jlong (JNICALL *CallStaticLongMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   541
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   542
    jlong (JNICALL *CallStaticLongMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   543
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   544
489c9b5090e2 Initial load
duke
parents:
diff changeset
   545
    jfloat (JNICALL *CallStaticFloatMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   546
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   547
    jfloat (JNICALL *CallStaticFloatMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   548
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   549
    jfloat (JNICALL *CallStaticFloatMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   550
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   551
489c9b5090e2 Initial load
duke
parents:
diff changeset
   552
    jdouble (JNICALL *CallStaticDoubleMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   553
      (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   554
    jdouble (JNICALL *CallStaticDoubleMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   555
      (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   556
    jdouble (JNICALL *CallStaticDoubleMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   557
      (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   558
489c9b5090e2 Initial load
duke
parents:
diff changeset
   559
    void (JNICALL *CallStaticVoidMethod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   560
      (JNIEnv *env, jclass cls, jmethodID methodID, ...);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   561
    void (JNICALL *CallStaticVoidMethodV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   562
      (JNIEnv *env, jclass cls, jmethodID methodID, va_list args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   563
    void (JNICALL *CallStaticVoidMethodA)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   564
      (JNIEnv *env, jclass cls, jmethodID methodID, const jvalue * args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   565
489c9b5090e2 Initial load
duke
parents:
diff changeset
   566
    jfieldID (JNICALL *GetStaticFieldID)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   567
      (JNIEnv *env, jclass clazz, const char *name, const char *sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   568
    jobject (JNICALL *GetStaticObjectField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   569
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   570
    jboolean (JNICALL *GetStaticBooleanField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   571
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   572
    jbyte (JNICALL *GetStaticByteField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   573
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   574
    jchar (JNICALL *GetStaticCharField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   575
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   576
    jshort (JNICALL *GetStaticShortField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   577
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   578
    jint (JNICALL *GetStaticIntField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   579
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   580
    jlong (JNICALL *GetStaticLongField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   581
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   582
    jfloat (JNICALL *GetStaticFloatField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   583
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   584
    jdouble (JNICALL *GetStaticDoubleField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   585
      (JNIEnv *env, jclass clazz, jfieldID fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   586
489c9b5090e2 Initial load
duke
parents:
diff changeset
   587
    void (JNICALL *SetStaticObjectField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   588
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jobject value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   589
    void (JNICALL *SetStaticBooleanField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   590
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jboolean value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   591
    void (JNICALL *SetStaticByteField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   592
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jbyte value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   593
    void (JNICALL *SetStaticCharField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   594
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jchar value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   595
    void (JNICALL *SetStaticShortField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   596
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jshort value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   597
    void (JNICALL *SetStaticIntField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   598
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jint value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   599
    void (JNICALL *SetStaticLongField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   600
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jlong value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   601
    void (JNICALL *SetStaticFloatField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   602
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jfloat value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   603
    void (JNICALL *SetStaticDoubleField)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   604
      (JNIEnv *env, jclass clazz, jfieldID fieldID, jdouble value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   605
489c9b5090e2 Initial load
duke
parents:
diff changeset
   606
    jstring (JNICALL *NewString)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   607
      (JNIEnv *env, const jchar *unicode, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   608
    jsize (JNICALL *GetStringLength)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   609
      (JNIEnv *env, jstring str);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   610
    const jchar *(JNICALL *GetStringChars)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   611
      (JNIEnv *env, jstring str, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   612
    void (JNICALL *ReleaseStringChars)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   613
      (JNIEnv *env, jstring str, const jchar *chars);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   614
489c9b5090e2 Initial load
duke
parents:
diff changeset
   615
    jstring (JNICALL *NewStringUTF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   616
      (JNIEnv *env, const char *utf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   617
    jsize (JNICALL *GetStringUTFLength)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   618
      (JNIEnv *env, jstring str);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   619
    const char* (JNICALL *GetStringUTFChars)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   620
      (JNIEnv *env, jstring str, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   621
    void (JNICALL *ReleaseStringUTFChars)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   622
      (JNIEnv *env, jstring str, const char* chars);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   623
489c9b5090e2 Initial load
duke
parents:
diff changeset
   624
489c9b5090e2 Initial load
duke
parents:
diff changeset
   625
    jsize (JNICALL *GetArrayLength)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   626
      (JNIEnv *env, jarray array);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   627
489c9b5090e2 Initial load
duke
parents:
diff changeset
   628
    jobjectArray (JNICALL *NewObjectArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   629
      (JNIEnv *env, jsize len, jclass clazz, jobject init);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   630
    jobject (JNICALL *GetObjectArrayElement)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   631
      (JNIEnv *env, jobjectArray array, jsize index);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   632
    void (JNICALL *SetObjectArrayElement)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   633
      (JNIEnv *env, jobjectArray array, jsize index, jobject val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   634
489c9b5090e2 Initial load
duke
parents:
diff changeset
   635
    jbooleanArray (JNICALL *NewBooleanArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   636
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   637
    jbyteArray (JNICALL *NewByteArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   638
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   639
    jcharArray (JNICALL *NewCharArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   640
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   641
    jshortArray (JNICALL *NewShortArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   642
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   643
    jintArray (JNICALL *NewIntArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   644
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   645
    jlongArray (JNICALL *NewLongArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   646
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   647
    jfloatArray (JNICALL *NewFloatArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   648
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   649
    jdoubleArray (JNICALL *NewDoubleArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   650
      (JNIEnv *env, jsize len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   651
489c9b5090e2 Initial load
duke
parents:
diff changeset
   652
    jboolean * (JNICALL *GetBooleanArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   653
      (JNIEnv *env, jbooleanArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   654
    jbyte * (JNICALL *GetByteArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   655
      (JNIEnv *env, jbyteArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   656
    jchar * (JNICALL *GetCharArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   657
      (JNIEnv *env, jcharArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   658
    jshort * (JNICALL *GetShortArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   659
      (JNIEnv *env, jshortArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   660
    jint * (JNICALL *GetIntArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   661
      (JNIEnv *env, jintArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   662
    jlong * (JNICALL *GetLongArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   663
      (JNIEnv *env, jlongArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   664
    jfloat * (JNICALL *GetFloatArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   665
      (JNIEnv *env, jfloatArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   666
    jdouble * (JNICALL *GetDoubleArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   667
      (JNIEnv *env, jdoubleArray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   668
489c9b5090e2 Initial load
duke
parents:
diff changeset
   669
    void (JNICALL *ReleaseBooleanArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   670
      (JNIEnv *env, jbooleanArray array, jboolean *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   671
    void (JNICALL *ReleaseByteArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   672
      (JNIEnv *env, jbyteArray array, jbyte *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   673
    void (JNICALL *ReleaseCharArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   674
      (JNIEnv *env, jcharArray array, jchar *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   675
    void (JNICALL *ReleaseShortArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   676
      (JNIEnv *env, jshortArray array, jshort *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   677
    void (JNICALL *ReleaseIntArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   678
      (JNIEnv *env, jintArray array, jint *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   679
    void (JNICALL *ReleaseLongArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   680
      (JNIEnv *env, jlongArray array, jlong *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   681
    void (JNICALL *ReleaseFloatArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   682
      (JNIEnv *env, jfloatArray array, jfloat *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   683
    void (JNICALL *ReleaseDoubleArrayElements)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   684
      (JNIEnv *env, jdoubleArray array, jdouble *elems, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   685
489c9b5090e2 Initial load
duke
parents:
diff changeset
   686
    void (JNICALL *GetBooleanArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   687
      (JNIEnv *env, jbooleanArray array, jsize start, jsize l, jboolean *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   688
    void (JNICALL *GetByteArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   689
      (JNIEnv *env, jbyteArray array, jsize start, jsize len, jbyte *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   690
    void (JNICALL *GetCharArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   691
      (JNIEnv *env, jcharArray array, jsize start, jsize len, jchar *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   692
    void (JNICALL *GetShortArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   693
      (JNIEnv *env, jshortArray array, jsize start, jsize len, jshort *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   694
    void (JNICALL *GetIntArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   695
      (JNIEnv *env, jintArray array, jsize start, jsize len, jint *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   696
    void (JNICALL *GetLongArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   697
      (JNIEnv *env, jlongArray array, jsize start, jsize len, jlong *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   698
    void (JNICALL *GetFloatArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   699
      (JNIEnv *env, jfloatArray array, jsize start, jsize len, jfloat *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   700
    void (JNICALL *GetDoubleArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   701
      (JNIEnv *env, jdoubleArray array, jsize start, jsize len, jdouble *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   702
489c9b5090e2 Initial load
duke
parents:
diff changeset
   703
    void (JNICALL *SetBooleanArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   704
      (JNIEnv *env, jbooleanArray array, jsize start, jsize l, const jboolean *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   705
    void (JNICALL *SetByteArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   706
      (JNIEnv *env, jbyteArray array, jsize start, jsize len, const jbyte *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   707
    void (JNICALL *SetCharArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   708
      (JNIEnv *env, jcharArray array, jsize start, jsize len, const jchar *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   709
    void (JNICALL *SetShortArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   710
      (JNIEnv *env, jshortArray array, jsize start, jsize len, const jshort *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   711
    void (JNICALL *SetIntArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   712
      (JNIEnv *env, jintArray array, jsize start, jsize len, const jint *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   713
    void (JNICALL *SetLongArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   714
      (JNIEnv *env, jlongArray array, jsize start, jsize len, const jlong *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   715
    void (JNICALL *SetFloatArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   716
      (JNIEnv *env, jfloatArray array, jsize start, jsize len, const jfloat *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   717
    void (JNICALL *SetDoubleArrayRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   718
      (JNIEnv *env, jdoubleArray array, jsize start, jsize len, const jdouble *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   719
489c9b5090e2 Initial load
duke
parents:
diff changeset
   720
    jint (JNICALL *RegisterNatives)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   721
      (JNIEnv *env, jclass clazz, const JNINativeMethod *methods,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   722
       jint nMethods);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   723
    jint (JNICALL *UnregisterNatives)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   724
      (JNIEnv *env, jclass clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   725
489c9b5090e2 Initial load
duke
parents:
diff changeset
   726
    jint (JNICALL *MonitorEnter)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   727
      (JNIEnv *env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   728
    jint (JNICALL *MonitorExit)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   729
      (JNIEnv *env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   730
489c9b5090e2 Initial load
duke
parents:
diff changeset
   731
    jint (JNICALL *GetJavaVM)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   732
      (JNIEnv *env, JavaVM **vm);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   733
489c9b5090e2 Initial load
duke
parents:
diff changeset
   734
    void (JNICALL *GetStringRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   735
      (JNIEnv *env, jstring str, jsize start, jsize len, jchar *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   736
    void (JNICALL *GetStringUTFRegion)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   737
      (JNIEnv *env, jstring str, jsize start, jsize len, char *buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   738
489c9b5090e2 Initial load
duke
parents:
diff changeset
   739
    void * (JNICALL *GetPrimitiveArrayCritical)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   740
      (JNIEnv *env, jarray array, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   741
    void (JNICALL *ReleasePrimitiveArrayCritical)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   742
      (JNIEnv *env, jarray array, void *carray, jint mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   743
489c9b5090e2 Initial load
duke
parents:
diff changeset
   744
    const jchar * (JNICALL *GetStringCritical)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   745
      (JNIEnv *env, jstring string, jboolean *isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   746
    void (JNICALL *ReleaseStringCritical)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   747
      (JNIEnv *env, jstring string, const jchar *cstring);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   748
489c9b5090e2 Initial load
duke
parents:
diff changeset
   749
    jweak (JNICALL *NewWeakGlobalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   750
       (JNIEnv *env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   751
    void (JNICALL *DeleteWeakGlobalRef)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   752
       (JNIEnv *env, jweak ref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   753
489c9b5090e2 Initial load
duke
parents:
diff changeset
   754
    jboolean (JNICALL *ExceptionCheck)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   755
       (JNIEnv *env);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   756
489c9b5090e2 Initial load
duke
parents:
diff changeset
   757
    jobject (JNICALL *NewDirectByteBuffer)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   758
       (JNIEnv* env, void* address, jlong capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   759
    void* (JNICALL *GetDirectBufferAddress)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   760
       (JNIEnv* env, jobject buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   761
    jlong (JNICALL *GetDirectBufferCapacity)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   762
       (JNIEnv* env, jobject buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   763
489c9b5090e2 Initial load
duke
parents:
diff changeset
   764
    /* New JNI 1.6 Features */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   765
489c9b5090e2 Initial load
duke
parents:
diff changeset
   766
    jobjectRefType (JNICALL *GetObjectRefType)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   767
        (JNIEnv* env, jobject obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   768
};
489c9b5090e2 Initial load
duke
parents:
diff changeset
   769
489c9b5090e2 Initial load
duke
parents:
diff changeset
   770
/*
489c9b5090e2 Initial load
duke
parents:
diff changeset
   771
 * We use inlined functions for C++ so that programmers can write:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   772
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
   773
 *    env->FindClass("java/lang/String")
489c9b5090e2 Initial load
duke
parents:
diff changeset
   774
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
   775
 * in C++ rather than:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   776
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
   777
 *    (*env)->FindClass(env, "java/lang/String")
489c9b5090e2 Initial load
duke
parents:
diff changeset
   778
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
   779
 * in C.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   780
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
   781
489c9b5090e2 Initial load
duke
parents:
diff changeset
   782
struct JNIEnv_ {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   783
    const struct JNINativeInterface_ *functions;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   784
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
   785
489c9b5090e2 Initial load
duke
parents:
diff changeset
   786
    jint GetVersion() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   787
        return functions->GetVersion(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   788
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   789
    jclass DefineClass(const char *name, jobject loader, const jbyte *buf,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   790
                       jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   791
        return functions->DefineClass(this, name, loader, buf, len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   792
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   793
    jclass FindClass(const char *name) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   794
        return functions->FindClass(this, name);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   795
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   796
    jmethodID FromReflectedMethod(jobject method) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   797
        return functions->FromReflectedMethod(this,method);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   798
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   799
    jfieldID FromReflectedField(jobject field) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   800
        return functions->FromReflectedField(this,field);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   801
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   802
489c9b5090e2 Initial load
duke
parents:
diff changeset
   803
    jobject ToReflectedMethod(jclass cls, jmethodID methodID, jboolean isStatic) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   804
        return functions->ToReflectedMethod(this, cls, methodID, isStatic);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   805
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   806
489c9b5090e2 Initial load
duke
parents:
diff changeset
   807
    jclass GetSuperclass(jclass sub) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   808
        return functions->GetSuperclass(this, sub);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   809
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   810
    jboolean IsAssignableFrom(jclass sub, jclass sup) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   811
        return functions->IsAssignableFrom(this, sub, sup);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   812
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   813
489c9b5090e2 Initial load
duke
parents:
diff changeset
   814
    jobject ToReflectedField(jclass cls, jfieldID fieldID, jboolean isStatic) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   815
        return functions->ToReflectedField(this,cls,fieldID,isStatic);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   816
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   817
489c9b5090e2 Initial load
duke
parents:
diff changeset
   818
    jint Throw(jthrowable obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   819
        return functions->Throw(this, obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   820
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   821
    jint ThrowNew(jclass clazz, const char *msg) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   822
        return functions->ThrowNew(this, clazz, msg);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   823
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   824
    jthrowable ExceptionOccurred() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   825
        return functions->ExceptionOccurred(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   826
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   827
    void ExceptionDescribe() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   828
        functions->ExceptionDescribe(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   829
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   830
    void ExceptionClear() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   831
        functions->ExceptionClear(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   832
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   833
    void FatalError(const char *msg) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   834
        functions->FatalError(this, msg);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   835
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   836
489c9b5090e2 Initial load
duke
parents:
diff changeset
   837
    jint PushLocalFrame(jint capacity) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   838
        return functions->PushLocalFrame(this,capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   839
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   840
    jobject PopLocalFrame(jobject result) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   841
        return functions->PopLocalFrame(this,result);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   842
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   843
489c9b5090e2 Initial load
duke
parents:
diff changeset
   844
    jobject NewGlobalRef(jobject lobj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   845
        return functions->NewGlobalRef(this,lobj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   846
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   847
    void DeleteGlobalRef(jobject gref) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   848
        functions->DeleteGlobalRef(this,gref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   849
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   850
    void DeleteLocalRef(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   851
        functions->DeleteLocalRef(this, obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   852
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   853
489c9b5090e2 Initial load
duke
parents:
diff changeset
   854
    jboolean IsSameObject(jobject obj1, jobject obj2) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   855
        return functions->IsSameObject(this,obj1,obj2);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   856
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   857
489c9b5090e2 Initial load
duke
parents:
diff changeset
   858
    jobject NewLocalRef(jobject ref) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   859
        return functions->NewLocalRef(this,ref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   860
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   861
    jint EnsureLocalCapacity(jint capacity) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   862
        return functions->EnsureLocalCapacity(this,capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   863
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   864
489c9b5090e2 Initial load
duke
parents:
diff changeset
   865
    jobject AllocObject(jclass clazz) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   866
        return functions->AllocObject(this,clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   867
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   868
    jobject NewObject(jclass clazz, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   869
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   870
        jobject result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   871
        va_start(args, methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   872
        result = functions->NewObjectV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   873
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   874
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   875
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   876
    jobject NewObjectV(jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   877
                       va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   878
        return functions->NewObjectV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   879
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   880
    jobject NewObjectA(jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   881
                       const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   882
        return functions->NewObjectA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   883
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   884
489c9b5090e2 Initial load
duke
parents:
diff changeset
   885
    jclass GetObjectClass(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   886
        return functions->GetObjectClass(this,obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   887
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   888
    jboolean IsInstanceOf(jobject obj, jclass clazz) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   889
        return functions->IsInstanceOf(this,obj,clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   890
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   891
489c9b5090e2 Initial load
duke
parents:
diff changeset
   892
    jmethodID GetMethodID(jclass clazz, const char *name,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   893
                          const char *sig) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   894
        return functions->GetMethodID(this,clazz,name,sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   895
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   896
489c9b5090e2 Initial load
duke
parents:
diff changeset
   897
    jobject CallObjectMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   898
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   899
        jobject result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   900
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   901
        result = functions->CallObjectMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   902
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   903
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   904
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   905
    jobject CallObjectMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   906
                        va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   907
        return functions->CallObjectMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   908
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   909
    jobject CallObjectMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   910
                        const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   911
        return functions->CallObjectMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   912
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   913
489c9b5090e2 Initial load
duke
parents:
diff changeset
   914
    jboolean CallBooleanMethod(jobject obj,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   915
                               jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   916
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   917
        jboolean result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   918
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   919
        result = functions->CallBooleanMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   920
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   921
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   922
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   923
    jboolean CallBooleanMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   924
                                va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   925
        return functions->CallBooleanMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   926
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   927
    jboolean CallBooleanMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   928
                                const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   929
        return functions->CallBooleanMethodA(this,obj,methodID, args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   930
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   931
489c9b5090e2 Initial load
duke
parents:
diff changeset
   932
    jbyte CallByteMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   933
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   934
        jbyte result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   935
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   936
        result = functions->CallByteMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   937
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   938
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   939
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   940
    jbyte CallByteMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   941
                          va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   942
        return functions->CallByteMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   943
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   944
    jbyte CallByteMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   945
                          const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   946
        return functions->CallByteMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   947
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   948
489c9b5090e2 Initial load
duke
parents:
diff changeset
   949
    jchar CallCharMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   950
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   951
        jchar result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   952
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   953
        result = functions->CallCharMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   954
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   955
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   956
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   957
    jchar CallCharMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   958
                          va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   959
        return functions->CallCharMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   960
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   961
    jchar CallCharMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   962
                          const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   963
        return functions->CallCharMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   964
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   965
489c9b5090e2 Initial load
duke
parents:
diff changeset
   966
    jshort CallShortMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   967
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   968
        jshort result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   969
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   970
        result = functions->CallShortMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   971
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   972
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   973
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   974
    jshort CallShortMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   975
                            va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   976
        return functions->CallShortMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   977
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   978
    jshort CallShortMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   979
                            const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   980
        return functions->CallShortMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   981
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   982
489c9b5090e2 Initial load
duke
parents:
diff changeset
   983
    jint CallIntMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   984
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   985
        jint result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   986
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   987
        result = functions->CallIntMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   988
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   989
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   990
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   991
    jint CallIntMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   992
                        va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   993
        return functions->CallIntMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   994
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   995
    jint CallIntMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   996
                        const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
   997
        return functions->CallIntMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
   998
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
   999
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1000
    jlong CallLongMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1001
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1002
        jlong result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1003
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1004
        result = functions->CallLongMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1005
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1006
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1007
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1008
    jlong CallLongMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1009
                          va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1010
        return functions->CallLongMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1011
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1012
    jlong CallLongMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1013
                          const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1014
        return functions->CallLongMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1015
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1016
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1017
    jfloat CallFloatMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1018
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1019
        jfloat result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1020
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1021
        result = functions->CallFloatMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1022
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1023
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1024
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1025
    jfloat CallFloatMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1026
                            va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1027
        return functions->CallFloatMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1028
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1029
    jfloat CallFloatMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1030
                            const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1031
        return functions->CallFloatMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1032
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1033
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1034
    jdouble CallDoubleMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1035
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1036
        jdouble result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1037
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1038
        result = functions->CallDoubleMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1039
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1040
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1041
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1042
    jdouble CallDoubleMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1043
                        va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1044
        return functions->CallDoubleMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1045
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1046
    jdouble CallDoubleMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1047
                        const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1048
        return functions->CallDoubleMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1049
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1050
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1051
    void CallVoidMethod(jobject obj, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1052
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1053
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1054
        functions->CallVoidMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1055
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1056
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1057
    void CallVoidMethodV(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1058
                         va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1059
        functions->CallVoidMethodV(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1060
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1061
    void CallVoidMethodA(jobject obj, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1062
                         const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1063
        functions->CallVoidMethodA(this,obj,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1064
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1065
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1066
    jobject CallNonvirtualObjectMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1067
                                       jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1068
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1069
        jobject result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1070
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1071
        result = functions->CallNonvirtualObjectMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1072
                                                        methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1073
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1074
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1075
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1076
    jobject CallNonvirtualObjectMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1077
                                        jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1078
        return functions->CallNonvirtualObjectMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1079
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1080
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1081
    jobject CallNonvirtualObjectMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1082
                                        jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1083
        return functions->CallNonvirtualObjectMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1084
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1085
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1086
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1087
    jboolean CallNonvirtualBooleanMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1088
                                         jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1089
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1090
        jboolean result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1091
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1092
        result = functions->CallNonvirtualBooleanMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1093
                                                         methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1094
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1095
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1096
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1097
    jboolean CallNonvirtualBooleanMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1098
                                          jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1099
        return functions->CallNonvirtualBooleanMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1100
                                                       methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1101
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1102
    jboolean CallNonvirtualBooleanMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1103
                                          jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1104
        return functions->CallNonvirtualBooleanMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1105
                                                       methodID, args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1106
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1107
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1108
    jbyte CallNonvirtualByteMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1109
                                   jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1110
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1111
        jbyte result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1112
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1113
        result = functions->CallNonvirtualByteMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1114
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1115
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1116
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1117
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1118
    jbyte CallNonvirtualByteMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1119
                                    jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1120
        return functions->CallNonvirtualByteMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1121
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1122
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1123
    jbyte CallNonvirtualByteMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1124
                                    jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1125
        return functions->CallNonvirtualByteMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1126
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1127
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1128
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1129
    jchar CallNonvirtualCharMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1130
                                   jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1131
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1132
        jchar result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1133
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1134
        result = functions->CallNonvirtualCharMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1135
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1136
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1137
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1138
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1139
    jchar CallNonvirtualCharMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1140
                                    jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1141
        return functions->CallNonvirtualCharMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1142
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1143
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1144
    jchar CallNonvirtualCharMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1145
                                    jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1146
        return functions->CallNonvirtualCharMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1147
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1148
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1149
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1150
    jshort CallNonvirtualShortMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1151
                                     jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1152
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1153
        jshort result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1154
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1155
        result = functions->CallNonvirtualShortMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1156
                                                       methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1157
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1158
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1159
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1160
    jshort CallNonvirtualShortMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1161
                                      jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1162
        return functions->CallNonvirtualShortMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1163
                                                     methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1164
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1165
    jshort CallNonvirtualShortMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1166
                                      jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1167
        return functions->CallNonvirtualShortMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1168
                                                     methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1169
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1170
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1171
    jint CallNonvirtualIntMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1172
                                 jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1173
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1174
        jint result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1175
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1176
        result = functions->CallNonvirtualIntMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1177
                                                     methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1178
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1179
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1180
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1181
    jint CallNonvirtualIntMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1182
                                  jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1183
        return functions->CallNonvirtualIntMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1184
                                                   methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1185
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1186
    jint CallNonvirtualIntMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1187
                                  jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1188
        return functions->CallNonvirtualIntMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1189
                                                   methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1190
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1191
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1192
    jlong CallNonvirtualLongMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1193
                                   jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1194
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1195
        jlong result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1196
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1197
        result = functions->CallNonvirtualLongMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1198
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1199
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1200
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1201
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1202
    jlong CallNonvirtualLongMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1203
                                    jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1204
        return functions->CallNonvirtualLongMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1205
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1206
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1207
    jlong CallNonvirtualLongMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1208
                                    jmethodID methodID, const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1209
        return functions->CallNonvirtualLongMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1210
                                                    methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1211
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1212
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1213
    jfloat CallNonvirtualFloatMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1214
                                     jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1215
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1216
        jfloat result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1217
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1218
        result = functions->CallNonvirtualFloatMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1219
                                                       methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1220
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1221
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1222
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1223
    jfloat CallNonvirtualFloatMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1224
                                      jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1225
                                      va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1226
        return functions->CallNonvirtualFloatMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1227
                                                     methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1228
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1229
    jfloat CallNonvirtualFloatMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1230
                                      jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1231
                                      const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1232
        return functions->CallNonvirtualFloatMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1233
                                                     methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1234
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1235
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1236
    jdouble CallNonvirtualDoubleMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1237
                                       jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1238
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1239
        jdouble result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1240
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1241
        result = functions->CallNonvirtualDoubleMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1242
                                                        methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1243
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1244
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1245
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1246
    jdouble CallNonvirtualDoubleMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1247
                                        jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1248
                                        va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1249
        return functions->CallNonvirtualDoubleMethodV(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1250
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1251
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1252
    jdouble CallNonvirtualDoubleMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1253
                                        jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1254
                                        const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1255
        return functions->CallNonvirtualDoubleMethodA(this,obj,clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1256
                                                      methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1257
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1258
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1259
    void CallNonvirtualVoidMethod(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1260
                                  jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1261
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1262
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1263
        functions->CallNonvirtualVoidMethodV(this,obj,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1264
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1265
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1266
    void CallNonvirtualVoidMethodV(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1267
                                   jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1268
                                   va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1269
        functions->CallNonvirtualVoidMethodV(this,obj,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1270
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1271
    void CallNonvirtualVoidMethodA(jobject obj, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1272
                                   jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1273
                                   const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1274
        functions->CallNonvirtualVoidMethodA(this,obj,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1275
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1276
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1277
    jfieldID GetFieldID(jclass clazz, const char *name,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1278
                        const char *sig) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1279
        return functions->GetFieldID(this,clazz,name,sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1280
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1281
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1282
    jobject GetObjectField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1283
        return functions->GetObjectField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1284
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1285
    jboolean GetBooleanField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1286
        return functions->GetBooleanField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1287
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1288
    jbyte GetByteField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1289
        return functions->GetByteField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1290
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1291
    jchar GetCharField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1292
        return functions->GetCharField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1293
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1294
    jshort GetShortField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1295
        return functions->GetShortField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1296
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1297
    jint GetIntField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1298
        return functions->GetIntField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1299
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1300
    jlong GetLongField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1301
        return functions->GetLongField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1302
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1303
    jfloat GetFloatField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1304
        return functions->GetFloatField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1305
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1306
    jdouble GetDoubleField(jobject obj, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1307
        return functions->GetDoubleField(this,obj,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1308
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1309
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1310
    void SetObjectField(jobject obj, jfieldID fieldID, jobject val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1311
        functions->SetObjectField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1312
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1313
    void SetBooleanField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1314
                         jboolean val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1315
        functions->SetBooleanField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1316
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1317
    void SetByteField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1318
                      jbyte val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1319
        functions->SetByteField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1320
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1321
    void SetCharField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1322
                      jchar val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1323
        functions->SetCharField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1324
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1325
    void SetShortField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1326
                       jshort val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1327
        functions->SetShortField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1328
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1329
    void SetIntField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1330
                     jint val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1331
        functions->SetIntField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1332
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1333
    void SetLongField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1334
                      jlong val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1335
        functions->SetLongField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1336
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1337
    void SetFloatField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1338
                       jfloat val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1339
        functions->SetFloatField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1340
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1341
    void SetDoubleField(jobject obj, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1342
                        jdouble val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1343
        functions->SetDoubleField(this,obj,fieldID,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1344
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1345
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1346
    jmethodID GetStaticMethodID(jclass clazz, const char *name,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1347
                                const char *sig) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1348
        return functions->GetStaticMethodID(this,clazz,name,sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1349
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1350
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1351
    jobject CallStaticObjectMethod(jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1352
                             ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1353
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1354
        jobject result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1355
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1356
        result = functions->CallStaticObjectMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1357
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1358
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1359
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1360
    jobject CallStaticObjectMethodV(jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1361
                              va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1362
        return functions->CallStaticObjectMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1363
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1364
    jobject CallStaticObjectMethodA(jclass clazz, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1365
                              const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1366
        return functions->CallStaticObjectMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1367
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1368
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1369
    jboolean CallStaticBooleanMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1370
                                     jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1371
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1372
        jboolean result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1373
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1374
        result = functions->CallStaticBooleanMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1375
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1376
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1377
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1378
    jboolean CallStaticBooleanMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1379
                                      jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1380
        return functions->CallStaticBooleanMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1381
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1382
    jboolean CallStaticBooleanMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1383
                                      jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1384
        return functions->CallStaticBooleanMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1385
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1386
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1387
    jbyte CallStaticByteMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1388
                               jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1389
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1390
        jbyte result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1391
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1392
        result = functions->CallStaticByteMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1393
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1394
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1395
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1396
    jbyte CallStaticByteMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1397
                                jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1398
        return functions->CallStaticByteMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1399
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1400
    jbyte CallStaticByteMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1401
                                jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1402
        return functions->CallStaticByteMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1403
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1404
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1405
    jchar CallStaticCharMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1406
                               jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1407
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1408
        jchar result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1409
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1410
        result = functions->CallStaticCharMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1411
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1412
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1413
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1414
    jchar CallStaticCharMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1415
                                jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1416
        return functions->CallStaticCharMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1417
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1418
    jchar CallStaticCharMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1419
                                jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1420
        return functions->CallStaticCharMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1421
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1422
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1423
    jshort CallStaticShortMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1424
                                 jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1425
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1426
        jshort result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1427
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1428
        result = functions->CallStaticShortMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1429
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1430
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1431
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1432
    jshort CallStaticShortMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1433
                                  jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1434
        return functions->CallStaticShortMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1435
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1436
    jshort CallStaticShortMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1437
                                  jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1438
        return functions->CallStaticShortMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1439
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1440
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1441
    jint CallStaticIntMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1442
                             jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1443
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1444
        jint result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1445
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1446
        result = functions->CallStaticIntMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1447
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1448
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1449
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1450
    jint CallStaticIntMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1451
                              jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1452
        return functions->CallStaticIntMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1453
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1454
    jint CallStaticIntMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1455
                              jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1456
        return functions->CallStaticIntMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1457
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1458
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1459
    jlong CallStaticLongMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1460
                               jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1461
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1462
        jlong result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1463
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1464
        result = functions->CallStaticLongMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1465
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1466
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1467
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1468
    jlong CallStaticLongMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1469
                                jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1470
        return functions->CallStaticLongMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1471
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1472
    jlong CallStaticLongMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1473
                                jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1474
        return functions->CallStaticLongMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1475
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1476
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1477
    jfloat CallStaticFloatMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1478
                                 jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1479
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1480
        jfloat result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1481
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1482
        result = functions->CallStaticFloatMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1483
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1484
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1485
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1486
    jfloat CallStaticFloatMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1487
                                  jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1488
        return functions->CallStaticFloatMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1489
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1490
    jfloat CallStaticFloatMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1491
                                  jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1492
        return functions->CallStaticFloatMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1493
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1494
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1495
    jdouble CallStaticDoubleMethod(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1496
                                   jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1497
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1498
        jdouble result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1499
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1500
        result = functions->CallStaticDoubleMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1501
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1502
        return result;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1503
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1504
    jdouble CallStaticDoubleMethodV(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1505
                                    jmethodID methodID, va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1506
        return functions->CallStaticDoubleMethodV(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1507
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1508
    jdouble CallStaticDoubleMethodA(jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1509
                                    jmethodID methodID, const jvalue *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1510
        return functions->CallStaticDoubleMethodA(this,clazz,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1511
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1512
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1513
    void CallStaticVoidMethod(jclass cls, jmethodID methodID, ...) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1514
        va_list args;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1515
        va_start(args,methodID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1516
        functions->CallStaticVoidMethodV(this,cls,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1517
        va_end(args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1518
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1519
    void CallStaticVoidMethodV(jclass cls, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1520
                               va_list args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1521
        functions->CallStaticVoidMethodV(this,cls,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1522
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1523
    void CallStaticVoidMethodA(jclass cls, jmethodID methodID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1524
                               const jvalue * args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1525
        functions->CallStaticVoidMethodA(this,cls,methodID,args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1526
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1527
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1528
    jfieldID GetStaticFieldID(jclass clazz, const char *name,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1529
                              const char *sig) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1530
        return functions->GetStaticFieldID(this,clazz,name,sig);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1531
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1532
    jobject GetStaticObjectField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1533
        return functions->GetStaticObjectField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1534
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1535
    jboolean GetStaticBooleanField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1536
        return functions->GetStaticBooleanField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1537
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1538
    jbyte GetStaticByteField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1539
        return functions->GetStaticByteField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1540
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1541
    jchar GetStaticCharField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1542
        return functions->GetStaticCharField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1543
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1544
    jshort GetStaticShortField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1545
        return functions->GetStaticShortField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1546
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1547
    jint GetStaticIntField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1548
        return functions->GetStaticIntField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1549
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1550
    jlong GetStaticLongField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1551
        return functions->GetStaticLongField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1552
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1553
    jfloat GetStaticFloatField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1554
        return functions->GetStaticFloatField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1555
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1556
    jdouble GetStaticDoubleField(jclass clazz, jfieldID fieldID) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1557
        return functions->GetStaticDoubleField(this,clazz,fieldID);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1558
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1559
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1560
    void SetStaticObjectField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1561
                        jobject value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1562
      functions->SetStaticObjectField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1563
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1564
    void SetStaticBooleanField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1565
                        jboolean value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1566
      functions->SetStaticBooleanField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1567
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1568
    void SetStaticByteField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1569
                        jbyte value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1570
      functions->SetStaticByteField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1571
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1572
    void SetStaticCharField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1573
                        jchar value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1574
      functions->SetStaticCharField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1575
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1576
    void SetStaticShortField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1577
                        jshort value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1578
      functions->SetStaticShortField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1579
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1580
    void SetStaticIntField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1581
                        jint value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1582
      functions->SetStaticIntField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1583
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1584
    void SetStaticLongField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1585
                        jlong value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1586
      functions->SetStaticLongField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1587
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1588
    void SetStaticFloatField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1589
                        jfloat value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1590
      functions->SetStaticFloatField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1591
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1592
    void SetStaticDoubleField(jclass clazz, jfieldID fieldID,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1593
                        jdouble value) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1594
      functions->SetStaticDoubleField(this,clazz,fieldID,value);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1595
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1596
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1597
    jstring NewString(const jchar *unicode, jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1598
        return functions->NewString(this,unicode,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1599
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1600
    jsize GetStringLength(jstring str) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1601
        return functions->GetStringLength(this,str);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1602
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1603
    const jchar *GetStringChars(jstring str, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1604
        return functions->GetStringChars(this,str,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1605
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1606
    void ReleaseStringChars(jstring str, const jchar *chars) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1607
        functions->ReleaseStringChars(this,str,chars);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1608
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1609
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1610
    jstring NewStringUTF(const char *utf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1611
        return functions->NewStringUTF(this,utf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1612
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1613
    jsize GetStringUTFLength(jstring str) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1614
        return functions->GetStringUTFLength(this,str);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1615
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1616
    const char* GetStringUTFChars(jstring str, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1617
        return functions->GetStringUTFChars(this,str,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1618
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1619
    void ReleaseStringUTFChars(jstring str, const char* chars) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1620
        functions->ReleaseStringUTFChars(this,str,chars);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1621
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1622
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1623
    jsize GetArrayLength(jarray array) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1624
        return functions->GetArrayLength(this,array);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1625
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1626
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1627
    jobjectArray NewObjectArray(jsize len, jclass clazz,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1628
                                jobject init) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1629
        return functions->NewObjectArray(this,len,clazz,init);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1630
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1631
    jobject GetObjectArrayElement(jobjectArray array, jsize index) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1632
        return functions->GetObjectArrayElement(this,array,index);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1633
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1634
    void SetObjectArrayElement(jobjectArray array, jsize index,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1635
                               jobject val) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1636
        functions->SetObjectArrayElement(this,array,index,val);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1637
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1638
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1639
    jbooleanArray NewBooleanArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1640
        return functions->NewBooleanArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1641
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1642
    jbyteArray NewByteArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1643
        return functions->NewByteArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1644
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1645
    jcharArray NewCharArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1646
        return functions->NewCharArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1647
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1648
    jshortArray NewShortArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1649
        return functions->NewShortArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1650
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1651
    jintArray NewIntArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1652
        return functions->NewIntArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1653
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1654
    jlongArray NewLongArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1655
        return functions->NewLongArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1656
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1657
    jfloatArray NewFloatArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1658
        return functions->NewFloatArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1659
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1660
    jdoubleArray NewDoubleArray(jsize len) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1661
        return functions->NewDoubleArray(this,len);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1662
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1663
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1664
    jboolean * GetBooleanArrayElements(jbooleanArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1665
        return functions->GetBooleanArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1666
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1667
    jbyte * GetByteArrayElements(jbyteArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1668
        return functions->GetByteArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1669
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1670
    jchar * GetCharArrayElements(jcharArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1671
        return functions->GetCharArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1672
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1673
    jshort * GetShortArrayElements(jshortArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1674
        return functions->GetShortArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1675
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1676
    jint * GetIntArrayElements(jintArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1677
        return functions->GetIntArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1678
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1679
    jlong * GetLongArrayElements(jlongArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1680
        return functions->GetLongArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1681
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1682
    jfloat * GetFloatArrayElements(jfloatArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1683
        return functions->GetFloatArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1684
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1685
    jdouble * GetDoubleArrayElements(jdoubleArray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1686
        return functions->GetDoubleArrayElements(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1687
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1688
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1689
    void ReleaseBooleanArrayElements(jbooleanArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1690
                                     jboolean *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1691
                                     jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1692
        functions->ReleaseBooleanArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1693
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1694
    void ReleaseByteArrayElements(jbyteArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1695
                                  jbyte *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1696
                                  jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1697
        functions->ReleaseByteArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1698
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1699
    void ReleaseCharArrayElements(jcharArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1700
                                  jchar *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1701
                                  jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1702
        functions->ReleaseCharArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1703
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1704
    void ReleaseShortArrayElements(jshortArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1705
                                   jshort *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1706
                                   jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1707
        functions->ReleaseShortArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1708
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1709
    void ReleaseIntArrayElements(jintArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1710
                                 jint *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1711
                                 jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1712
        functions->ReleaseIntArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1713
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1714
    void ReleaseLongArrayElements(jlongArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1715
                                  jlong *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1716
                                  jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1717
        functions->ReleaseLongArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1718
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1719
    void ReleaseFloatArrayElements(jfloatArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1720
                                   jfloat *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1721
                                   jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1722
        functions->ReleaseFloatArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1723
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1724
    void ReleaseDoubleArrayElements(jdoubleArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1725
                                    jdouble *elems,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1726
                                    jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1727
        functions->ReleaseDoubleArrayElements(this,array,elems,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1728
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1729
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1730
    void GetBooleanArrayRegion(jbooleanArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1731
                               jsize start, jsize len, jboolean *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1732
        functions->GetBooleanArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1733
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1734
    void GetByteArrayRegion(jbyteArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1735
                            jsize start, jsize len, jbyte *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1736
        functions->GetByteArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1737
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1738
    void GetCharArrayRegion(jcharArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1739
                            jsize start, jsize len, jchar *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1740
        functions->GetCharArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1741
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1742
    void GetShortArrayRegion(jshortArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1743
                             jsize start, jsize len, jshort *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1744
        functions->GetShortArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1745
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1746
    void GetIntArrayRegion(jintArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1747
                           jsize start, jsize len, jint *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1748
        functions->GetIntArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1749
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1750
    void GetLongArrayRegion(jlongArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1751
                            jsize start, jsize len, jlong *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1752
        functions->GetLongArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1753
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1754
    void GetFloatArrayRegion(jfloatArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1755
                             jsize start, jsize len, jfloat *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1756
        functions->GetFloatArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1757
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1758
    void GetDoubleArrayRegion(jdoubleArray array,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1759
                              jsize start, jsize len, jdouble *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1760
        functions->GetDoubleArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1761
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1762
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1763
    void SetBooleanArrayRegion(jbooleanArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1764
                               const jboolean *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1765
        functions->SetBooleanArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1766
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1767
    void SetByteArrayRegion(jbyteArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1768
                            const jbyte *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1769
        functions->SetByteArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1770
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1771
    void SetCharArrayRegion(jcharArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1772
                            const jchar *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1773
        functions->SetCharArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1774
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1775
    void SetShortArrayRegion(jshortArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1776
                             const jshort *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1777
        functions->SetShortArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1778
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1779
    void SetIntArrayRegion(jintArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1780
                           const jint *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1781
        functions->SetIntArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1782
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1783
    void SetLongArrayRegion(jlongArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1784
                            const jlong *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1785
        functions->SetLongArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1786
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1787
    void SetFloatArrayRegion(jfloatArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1788
                             const jfloat *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1789
        functions->SetFloatArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1790
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1791
    void SetDoubleArrayRegion(jdoubleArray array, jsize start, jsize len,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1792
                              const jdouble *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1793
        functions->SetDoubleArrayRegion(this,array,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1794
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1795
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1796
    jint RegisterNatives(jclass clazz, const JNINativeMethod *methods,
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1797
                         jint nMethods) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1798
        return functions->RegisterNatives(this,clazz,methods,nMethods);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1799
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1800
    jint UnregisterNatives(jclass clazz) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1801
        return functions->UnregisterNatives(this,clazz);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1802
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1803
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1804
    jint MonitorEnter(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1805
        return functions->MonitorEnter(this,obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1806
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1807
    jint MonitorExit(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1808
        return functions->MonitorExit(this,obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1809
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1810
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1811
    jint GetJavaVM(JavaVM **vm) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1812
        return functions->GetJavaVM(this,vm);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1813
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1814
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1815
    void GetStringRegion(jstring str, jsize start, jsize len, jchar *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1816
        functions->GetStringRegion(this,str,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1817
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1818
    void GetStringUTFRegion(jstring str, jsize start, jsize len, char *buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1819
        functions->GetStringUTFRegion(this,str,start,len,buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1820
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1821
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1822
    void * GetPrimitiveArrayCritical(jarray array, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1823
        return functions->GetPrimitiveArrayCritical(this,array,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1824
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1825
    void ReleasePrimitiveArrayCritical(jarray array, void *carray, jint mode) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1826
        functions->ReleasePrimitiveArrayCritical(this,array,carray,mode);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1827
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1828
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1829
    const jchar * GetStringCritical(jstring string, jboolean *isCopy) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1830
        return functions->GetStringCritical(this,string,isCopy);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1831
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1832
    void ReleaseStringCritical(jstring string, const jchar *cstring) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1833
        functions->ReleaseStringCritical(this,string,cstring);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1834
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1835
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1836
    jweak NewWeakGlobalRef(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1837
        return functions->NewWeakGlobalRef(this,obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1838
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1839
    void DeleteWeakGlobalRef(jweak ref) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1840
        functions->DeleteWeakGlobalRef(this,ref);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1841
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1842
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1843
    jboolean ExceptionCheck() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1844
        return functions->ExceptionCheck(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1845
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1846
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1847
    jobject NewDirectByteBuffer(void* address, jlong capacity) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1848
        return functions->NewDirectByteBuffer(this, address, capacity);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1849
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1850
    void* GetDirectBufferAddress(jobject buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1851
        return functions->GetDirectBufferAddress(this, buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1852
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1853
    jlong GetDirectBufferCapacity(jobject buf) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1854
        return functions->GetDirectBufferCapacity(this, buf);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1855
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1856
    jobjectRefType GetObjectRefType(jobject obj) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1857
        return functions->GetObjectRefType(this, obj);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1858
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1859
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1860
#endif /* __cplusplus */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1861
};
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1862
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1863
typedef struct JavaVMOption {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1864
    char *optionString;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1865
    void *extraInfo;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1866
} JavaVMOption;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1867
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1868
typedef struct JavaVMInitArgs {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1869
    jint version;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1870
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1871
    jint nOptions;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1872
    JavaVMOption *options;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1873
    jboolean ignoreUnrecognized;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1874
} JavaVMInitArgs;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1875
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1876
typedef struct JavaVMAttachArgs {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1877
    jint version;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1878
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1879
    char *name;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1880
    jobject group;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1881
} JavaVMAttachArgs;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1882
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1883
/* These will be VM-specific. */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1884
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1885
#define JDK1_2
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1886
#define JDK1_4
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1887
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1888
/* End VM-specific. */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1889
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1890
struct JNIInvokeInterface_ {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1891
    void *reserved0;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1892
    void *reserved1;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1893
    void *reserved2;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1894
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1895
    jint (JNICALL *DestroyJavaVM)(JavaVM *vm);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1896
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1897
    jint (JNICALL *AttachCurrentThread)(JavaVM *vm, void **penv, void *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1898
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1899
    jint (JNICALL *DetachCurrentThread)(JavaVM *vm);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1900
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1901
    jint (JNICALL *GetEnv)(JavaVM *vm, void **penv, jint version);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1902
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1903
    jint (JNICALL *AttachCurrentThreadAsDaemon)(JavaVM *vm, void **penv, void *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1904
};
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1905
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1906
struct JavaVM_ {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1907
    const struct JNIInvokeInterface_ *functions;
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1908
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1909
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1910
    jint DestroyJavaVM() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1911
        return functions->DestroyJavaVM(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1912
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1913
    jint AttachCurrentThread(void **penv, void *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1914
        return functions->AttachCurrentThread(this, penv, args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1915
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1916
    jint DetachCurrentThread() {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1917
        return functions->DetachCurrentThread(this);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1918
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1919
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1920
    jint GetEnv(void **penv, jint version) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1921
        return functions->GetEnv(this, penv, version);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1922
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1923
    jint AttachCurrentThreadAsDaemon(void **penv, void *args) {
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1924
        return functions->AttachCurrentThreadAsDaemon(this, penv, args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1925
    }
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1926
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1927
};
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1928
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1929
#ifdef _JNI_IMPLEMENTATION_
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1930
#define _JNI_IMPORT_OR_EXPORT_ JNIEXPORT
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1931
#else
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1932
#define _JNI_IMPORT_OR_EXPORT_ JNIIMPORT
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1933
#endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1934
_JNI_IMPORT_OR_EXPORT_ jint JNICALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1935
JNI_GetDefaultJavaVMInitArgs(void *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1936
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1937
_JNI_IMPORT_OR_EXPORT_ jint JNICALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1938
JNI_CreateJavaVM(JavaVM **pvm, void **penv, void *args);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1939
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1940
_JNI_IMPORT_OR_EXPORT_ jint JNICALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1941
JNI_GetCreatedJavaVMs(JavaVM **, jsize, jsize *);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1942
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1943
/* Defined by native libraries. */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1944
JNIEXPORT jint JNICALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1945
JNI_OnLoad(JavaVM *vm, void *reserved);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1946
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1947
JNIEXPORT void JNICALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1948
JNI_OnUnload(JavaVM *vm, void *reserved);
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1949
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1950
#define JNI_VERSION_1_1 0x00010001
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1951
#define JNI_VERSION_1_2 0x00010002
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1952
#define JNI_VERSION_1_4 0x00010004
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1953
#define JNI_VERSION_1_6 0x00010006
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1954
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1955
#ifdef __cplusplus
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1956
} /* extern "C" */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1957
#endif /* __cplusplus */
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1958
489c9b5090e2 Initial load
duke
parents:
diff changeset
  1959
#endif /* !_JAVASOFT_JNI_H_ */