384
385 /* Find a loaded class cached by the VM */
386 JNIEXPORT jclass JNICALL
387 JVM_FindLoadedClass(JNIEnv *env, jobject loader, jstring name);
388
389 /* Define a class */
390 JNIEXPORT jclass JNICALL
391 JVM_DefineClass(JNIEnv *env, const char *name, jobject loader, const jbyte *buf,
392 jsize len, jobject pd);
393
394 /* Define a class with a source (added in JDK1.5) */
395 JNIEXPORT jclass JNICALL
396 JVM_DefineClassWithSource(JNIEnv *env, const char *name, jobject loader,
397 const jbyte *buf, jsize len, jobject pd,
398 const char *source);
399
400 /*
401 * Module support funcions
402 */
403
404 JNIEXPORT void JNICALL
405 JVM_DefineModule(JNIEnv *env, jobject module, jboolean is_open, jstring version,
406 jstring location, jobjectArray packages);
407
408 JNIEXPORT void JNICALL
409 JVM_SetBootLoaderUnnamedModule(JNIEnv *env, jobject module);
410
411 JNIEXPORT void JNICALL
412 JVM_AddReadsModule(JNIEnv *env, jobject from_module, jobject to_module);
413
414 JNIEXPORT void JNICALL
415 JVM_AddModuleExports(JNIEnv *env, jobject from_module, jstring package, jobject to_module);
416
417 JNIEXPORT void JNICALL
418 JVM_AddModuleExportsToAll(JNIEnv *env, jobject from_module, jstring package);
419
420 JNIEXPORT void JNICALL
421 JVM_AddModuleExportsToAllUnnamed(JNIEnv *env, jobject from_module, jstring package);
422
423 JNIEXPORT void JNICALL
424 JVM_AddModulePackage(JNIEnv* env, jobject module, jstring package);
425
426 JNIEXPORT jobject JNICALL
427 JVM_GetModuleByPackageName(JNIEnv *env, jobject cl, jstring pkg);
428
429 /*
430 * Reflection support functions
431 */
432
433 JNIEXPORT jstring JNICALL
434 JVM_GetClassName(JNIEnv *env, jclass cls);
435
436 JNIEXPORT jobjectArray JNICALL
437 JVM_GetClassInterfaces(JNIEnv *env, jclass cls);
438
439 JNIEXPORT jboolean JNICALL
440 JVM_IsInterface(JNIEnv *env, jclass cls);
441
442 JNIEXPORT jobjectArray JNICALL
443 JVM_GetClassSigners(JNIEnv *env, jclass cls);
444
445 JNIEXPORT void JNICALL
446 JVM_SetClassSigners(JNIEnv *env, jclass cls, jobjectArray signers);
447
|
384
385 /* Find a loaded class cached by the VM */
386 JNIEXPORT jclass JNICALL
387 JVM_FindLoadedClass(JNIEnv *env, jobject loader, jstring name);
388
389 /* Define a class */
390 JNIEXPORT jclass JNICALL
391 JVM_DefineClass(JNIEnv *env, const char *name, jobject loader, const jbyte *buf,
392 jsize len, jobject pd);
393
394 /* Define a class with a source (added in JDK1.5) */
395 JNIEXPORT jclass JNICALL
396 JVM_DefineClassWithSource(JNIEnv *env, const char *name, jobject loader,
397 const jbyte *buf, jsize len, jobject pd,
398 const char *source);
399
400 /*
401 * Module support funcions
402 */
403
404 /*
405 * Define a module with the specified packages and bind the module to the
406 * given class loader.
407 * module: module to define
408 * is_open: specifies if module is open (currently ignored)
409 * version: the module version
410 * location: the module location
411 * packages: list of packages in the module
412 * num_packages: number of packages in the module
413 */
414 JNIEXPORT void JNICALL
415 JVM_DefineModule(JNIEnv *env, jobject module, jboolean is_open, jstring version,
416 jstring location, const char* const* packages, jsize num_packages);
417
418 /*
419 * Set the boot loader's unnamed module.
420 * module: boot loader's unnamed module
421 */
422 JNIEXPORT void JNICALL
423 JVM_SetBootLoaderUnnamedModule(JNIEnv *env, jobject module);
424
425 /*
426 * Do a qualified export of a package.
427 * from_module: module containing the package to export
428 * package: name of the package to export
429 * to_module: module to export the package to
430 */
431 JNIEXPORT void JNICALL
432 JVM_AddModuleExports(JNIEnv *env, jobject from_module, const char* package, jobject to_module);
433
434 /*
435 * Do an export of a package to all unnamed modules.
436 * from_module: module containing the package to export
437 * package: name of the package to export to all unnamed modules
438 */
439 JNIEXPORT void JNICALL
440 JVM_AddModuleExportsToAllUnnamed(JNIEnv *env, jobject from_module, const char* package);
441
442 /*
443 * Do an unqualified export of a package.
444 * from_module: module containing the package to export
445 * package: name of the package to export
446 */
447 JNIEXPORT void JNICALL
448 JVM_AddModuleExportsToAll(JNIEnv *env, jobject from_module, const char* package);
449
450 /*
451 * Add a module to the list of modules that a given module can read.
452 * from_module: module requesting read access
453 * source_module: module that from_module wants to read
454 */
455 JNIEXPORT void JNICALL
456 JVM_AddReadsModule(JNIEnv *env, jobject from_module, jobject source_module);
457
458 /*
459 * Add a package to a module.
460 * module: module that will contain the package
461 * package: package to add to the module
462 */
463 JNIEXPORT void JNICALL
464 JVM_AddModulePackage(JNIEnv* env, jobject module, const char* package);
465
466 /*
467 * Reflection support functions
468 */
469
470 JNIEXPORT jstring JNICALL
471 JVM_GetClassName(JNIEnv *env, jclass cls);
472
473 JNIEXPORT jobjectArray JNICALL
474 JVM_GetClassInterfaces(JNIEnv *env, jclass cls);
475
476 JNIEXPORT jboolean JNICALL
477 JVM_IsInterface(JNIEnv *env, jclass cls);
478
479 JNIEXPORT jobjectArray JNICALL
480 JVM_GetClassSigners(JNIEnv *env, jclass cls);
481
482 JNIEXPORT void JNICALL
483 JVM_SetClassSigners(JNIEnv *env, jclass cls, jobjectArray signers);
484
|