19 lines
882 B
Java
19 lines
882 B
Java
package dev.zprestige.prestige.inject;
|
|
|
|
/** Natives registered by the injected prestige_native.dll (JVMTI): current class bytes and class redefinition. */
|
|
public final class NativeBridge {
|
|
private NativeBridge() {}
|
|
|
|
/** Bytes of the loaded class as the JVM currently has it (including changes made by earlier transformers). */
|
|
public static native byte[] classBytes(Class<?> type);
|
|
|
|
/** Appends a line to prestige-native.log, which the injector tails to show progress. */
|
|
public static native void log(String message);
|
|
|
|
/** Disables the class file load hook and unloads prestige_native.dll shortly afterwards; nothing may call the natives after this. */
|
|
public static native void release();
|
|
|
|
/** JVMTI RedefineClasses for one class; returns the JVMTI error code, 0 on success. */
|
|
public static native int redefine(Class<?> type, byte[] bytes);
|
|
}
|