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