jni.xs

来自「UNIX下perl实现代码」· XS 代码 · 共 3,232 行 · 第 1/5 页

XS
3,232
字号
	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallNonvirtualShortMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjshortCallNonvirtualShortMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallNonvirtualShortMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjintCallNonvirtualIntMethod(obj,clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallNonvirtualIntMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjintCallNonvirtualIntMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallNonvirtualIntMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjlongCallNonvirtualLongMethod(obj,clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallNonvirtualLongMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjlongCallNonvirtualLongMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallNonvirtualLongMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjfloatCallNonvirtualFloatMethod(obj,clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallNonvirtualFloatMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjfloatCallNonvirtualFloatMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallNonvirtualFloatMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjdoubleCallNonvirtualDoubleMethod(obj,clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallNonvirtualDoubleMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjdoubleCallNonvirtualDoubleMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallNonvirtualDoubleMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALvoidCallNonvirtualVoidMethod(obj,clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    (*env)->CallNonvirtualVoidMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}voidCallNonvirtualVoidMethodA(obj,clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jobject			obj	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    (*env)->CallNonvirtualVoidMethodA(env, obj,clazz,methodID,args);	    RESTOREENV;	}jfieldIDGetFieldID(clazz,name,sig)	JNIEnv *		env = FETCHENV;	jclass			clazz	const char *		name	const char *		sig    CODE:	{	    RETVAL = (*env)->GetFieldID(env, clazz,name,sig);	    RESTOREENV;	}    OUTPUT:	RETVALjobjectGetObjectField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetObjectField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjbooleanGetBooleanField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetBooleanField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjbyteGetByteField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetByteField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjcharGetCharField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetCharField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjshortGetShortField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetShortField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjintGetIntField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetIntField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjlongGetLongField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetLongField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjfloatGetFloatField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetFloatField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALjdoubleGetDoubleField(obj,fieldID)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;    CODE:	{	    RETVAL = (*env)->GetDoubleField(env, obj,fieldID);	    RESTOREENV;	}    OUTPUT:	RETVALvoidSetObjectField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jobject			val    CODE:	{	    (*env)->SetObjectField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetBooleanField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jboolean		val    CODE:	{	    (*env)->SetBooleanField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetByteField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jbyte			val    CODE:	{	    (*env)->SetByteField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetCharField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jchar			val    CODE:	{	    (*env)->SetCharField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetShortField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jshort			val    CODE:	{	    (*env)->SetShortField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetIntField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jint			val    CODE:	{	    (*env)->SetIntField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetLongField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jlong			val    CODE:	{	    (*env)->SetLongField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetFloatField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jfloat			val    CODE:	{	    (*env)->SetFloatField(env, obj,fieldID,val);	    RESTOREENV;	}voidSetDoubleField(obj,fieldID,val)	JNIEnv *		env = FETCHENV;	jobject			obj	jfieldID		fieldID	char *			sig = 0;	jdouble			val    CODE:	{	    (*env)->SetDoubleField(env, obj,fieldID,val);	    RESTOREENV;	}jmethodIDGetStaticMethodID(clazz,name,sig)	JNIEnv *		env = FETCHENV;	jclass			clazz	const char *		name	const char *		sig    CODE:	{	    RETVAL = (*env)->GetStaticMethodID(env, clazz,name,sig);	    RESTOREENV;	}    OUTPUT:	RETVALjobjectCallStaticObjectMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticObjectMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjobjectCallStaticObjectMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticObjectMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjbooleanCallStaticBooleanMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticBooleanMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjbooleanCallStaticBooleanMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticBooleanMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjbyteCallStaticByteMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticByteMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjbyteCallStaticByteMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticByteMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjcharCallStaticCharMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticCharMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjcharCallStaticCharMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticCharMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjshortCallStaticShortMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticShortMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjshortCallStaticShortMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticShortMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjintCallStaticIntMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	int			argoff = $min_args;    CODE:	{	    jvalue * args = makeargs(sig, &ST(argoff), items - argoff);	    RETVAL = (*env)->CallStaticIntMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjintCallStaticIntMethodA(clazz,methodID,args)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID	char *			sig = 0;	jvalue *		args    CODE:	{	    RETVAL = (*env)->CallStaticIntMethodA(env, clazz,methodID,args);	    RESTOREENV;	}    OUTPUT:	RETVALjlongCallStaticLongMethod(clazz,methodID,...)	JNIEnv *		env = FETCHENV;	jclass			clazz	jmethodID		methodID

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?