Fields
internal: *mut jvmtiEnv
Implementations
sourceimpl JvmtiEnv
impl JvmtiEnv
pub fn set_event_notification_mode(
&self,
event_type: jvmtiEvent,
event_thread: jthread,
enabled: bool
) -> JvmtiResult<()>
pub fn get_all_threads(&self) -> JvmtiResult<&[jthread]>
pub fn suspend_thread(&self, thread: jthread) -> JvmtiResult<()>
pub fn resume_thread(&self, thread: jthread) -> JvmtiResult<()>
pub fn stop_thread(&self, thread: jthread, exception: jobject) -> JvmtiResult<()>
pub fn interrupt_thread(&self, thread: jthread) -> JvmtiResult<()>
pub fn get_thread_info(&self, thread: jthread) -> JvmtiResult<jvmtiThreadInfo>
pub fn get_owned_monitor_info(&self, thread: jthread) -> JvmtiResult<&[jobject]>
pub fn get_current_contended_monitor(
&self,
thread: jthread
) -> JvmtiResult<jobject>
pub fn run_agent_thread(
&self,
thread: jthread,
_proc: jvmtiStartFunction,
arg: *const c_void,
priority: jint
) -> JvmtiResult<()>
pub fn get_top_thread_groups(&self) -> JvmtiResult<&[jthreadGroup]>
pub fn get_thread_group_info(
&self,
group: jthreadGroup
) -> JvmtiResult<jvmtiThreadGroupInfo>
pub fn get_thread_group_children(
&self,
group: jthreadGroup
) -> JvmtiResult<(&[jthread], &[jthreadGroup])>
pub fn get_frame_count(&self, thread: jthread) -> JvmtiResult<jint>
pub fn get_thread_state(&self, thread: jthread) -> JvmtiResult<jint>
pub fn get_current_thread(&self) -> JvmtiResult<jthread>
pub fn get_frame_location(
&self,
thread: jthread,
depth: jint
) -> JvmtiResult<(jmethodID, jlocation)>
pub fn notify_frame_pop(&self, thread: jthread, depth: jint) -> JvmtiResult<()>
pub fn get_local_object(
&self,
thread: jthread,
depth: jint,
slot: jint
) -> JvmtiResult<jobject>
pub fn get_local_int(
&self,
thread: jthread,
depth: jint,
slot: jint
) -> JvmtiResult<jint>
pub fn get_local_long(
&self,
thread: jthread,
depth: jint,
slot: jint
) -> JvmtiResult<jlong>
pub fn get_local_float(
&self,
thread: jthread,
depth: jint,
slot: jint
) -> JvmtiResult<jfloat>
pub fn get_local_double(
&self,
thread: jthread,
depth: jint,
slot: jint
) -> JvmtiResult<jdouble>
pub fn create_raw_monitor(&self, name: &str) -> JvmtiResult<jrawMonitorID>
pub fn destroy_raw_monitor(&self, monitor: jrawMonitorID) -> JvmtiResult<()>
pub fn raw_monitor_enter(&self, monitor: jrawMonitorID) -> JvmtiResult<()>
pub fn raw_monitor_exit(&self, monitor: jrawMonitorID) -> JvmtiResult<()>
pub fn raw_monitor_wait(
&self,
monitor: jrawMonitorID,
millis: jlong
) -> JvmtiResult<()>
pub fn raw_monitor_notify(&self, monitor: jrawMonitorID) -> JvmtiResult<()>
pub fn raw_monitor_notify_all(&self, monitor: jrawMonitorID) -> JvmtiResult<()>
pub fn set_break_point(
&self,
method: jmethodID,
location: jlocation
) -> JvmtiResult<()>
pub fn clear_breakpoint(
&self,
method: jmethodID,
location: jlocation
) -> JvmtiResult<()>
pub fn set_field_access_watch(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<()>
pub fn clear_field_access_watch(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<()>
pub fn set_field_modification_watch(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<()>
pub fn clear_field_modification_watch(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<()>
pub fn is_modifiable_class(&self, class: jclass) -> JvmtiResult<bool>
pub fn allocate(&self, size: jlong) -> JvmtiResult<*mut c_uchar>
pub fn deallocate(&self, mem: *mut c_uchar) -> JvmtiResult<()>
sourcepub fn get_class_signature(
&self,
class: jclass
) -> JvmtiResult<(String, Option<String>)>
pub fn get_class_signature(
&self,
class: jclass
) -> JvmtiResult<(String, Option<String>)>
Returns name, generic
pub fn get_class_status(&self, class: jclass) -> JvmtiResult<jint>
pub fn get_source_file_name(&self, class: jclass) -> JvmtiResult<String>
pub fn get_class_modifiers(&self, class: jclass) -> JvmtiResult<jint>
pub fn get_class_methods(&self, class: jclass) -> JvmtiResult<&[jmethodID]>
pub fn get_class_fields(&self, class: jclass) -> JvmtiResult<&[jfieldID]>
pub fn get_implemented_interfaces(&self, class: jclass) -> JvmtiResult<&[jclass]>
pub fn is_interface(&self, class: jclass) -> JvmtiResult<bool>
pub fn is_array_class(&self, class: jclass) -> JvmtiResult<bool>
pub fn get_class_loader(&self, class: jclass) -> JvmtiResult<jobject>
pub fn get_object_hash_code(&self, object: jobject) -> JvmtiResult<jint>
pub fn get_object_monitor_usage(
&self,
object: jobject
) -> JvmtiResult<jvmtiMonitorUsage>
sourcepub fn get_field_name(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<(String, String, Option<String>)>
pub fn get_field_name(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<(String, String, Option<String>)>
Returns name, signature, generic
pub fn get_field_declaring_class(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<jclass>
pub fn get_field_modifiers(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<jint>
pub fn is_field_synthetic(
&self,
class: jclass,
field: jfieldID
) -> JvmtiResult<bool>
sourcepub fn get_method_name(
&self,
method: jmethodID
) -> JvmtiResult<(String, String, Option<String>)>
pub fn get_method_name(
&self,
method: jmethodID
) -> JvmtiResult<(String, String, Option<String>)>
Returns name, signature, generic
pub fn get_method_declaring_class(
&self,
method: jmethodID
) -> JvmtiResult<jclass>
pub fn get_method_modifiers(&self, method: jmethodID) -> JvmtiResult<jint>
pub fn get_max_locals(&self, method: jmethodID) -> JvmtiResult<jint>
pub fn get_arguments_size(&self, method: jmethodID) -> JvmtiResult<jint>
pub fn get_line_number_table(
&self,
method: jmethodID
) -> JvmtiResult<&[jvmtiLineNumberEntry]>
sourcepub fn get_method_location(
&self,
method: jmethodID
) -> JvmtiResult<(jlocation, jlocation)>
pub fn get_method_location(
&self,
method: jmethodID
) -> JvmtiResult<(jlocation, jlocation)>
Returns start location, end location
pub fn get_local_variable_table(
&self,
method: jmethodID
) -> JvmtiResult<&[jvmtiLocalVariableEntry]>
pub fn set_native_method_prefix(&self, prefix: &str) -> JvmtiResult<()>
pub fn set_native_method_prefixes(&self, prefixes: &[&str]) -> JvmtiResult<()>
pub fn get_bytecodes(&self, method: jmethodID) -> JvmtiResult<&[c_uchar]>
pub fn is_method_native(&self, method: jmethodID) -> JvmtiResult<bool>
pub fn is_method_synthetic(&self, method: jmethodID) -> JvmtiResult<bool>
pub fn get_loaded_classes(&self) -> JvmtiResult<&[jclass]>
pub fn get_class_loader_classes(
&self,
initiating_loader: jobject
) -> JvmtiResult<&[jclass]>
pub fn pop_frame(&self, thread: jthread) -> JvmtiResult<()>
pub fn force_early_return_object(
&self,
thread: jthread,
value: jobject
) -> JvmtiResult<()>
pub fn force_early_return_int(
&self,
thread: jthread,
value: jint
) -> JvmtiResult<()>
pub fn force_early_return_long(
&self,
thread: jthread,
value: jlong
) -> JvmtiResult<()>
pub fn force_early_return_float(
&self,
thread: jthread,
value: jfloat
) -> JvmtiResult<()>
pub fn force_early_return_double(
&self,
thread: jthread,
value: jdouble
) -> JvmtiResult<()>
pub fn force_early_return_void(&self, thread: jthread) -> JvmtiResult<()>
pub fn redefine_classes(
&self,
class_definitions: Vec<jvmtiClassDefinition>
) -> JvmtiResult<()>
pub fn get_version_number(&self) -> JvmtiResult<jint>
pub fn get_capabilities(&self) -> JvmtiResult<jvmtiCapabilities>
pub fn get_source_debug_extension(&self, class: jclass) -> JvmtiResult<String>
pub fn is_method_obsolete(&self, method: jmethodID) -> JvmtiResult<bool>
pub fn suspend_thread_list(
&self,
request_list: Vec<jthread>
) -> JvmtiResult<jvmtiError>
pub fn resume_thread_list(
&self,
request_list: Vec<jthread>
) -> JvmtiResult<jvmtiError>
pub fn get_all_stack_traces(
&self,
max_frame_count: i32
) -> JvmtiResult<&[jvmtiStackInfo]>
pub fn get_thread_list_stack_traces(
&self,
thread_list: Vec<jthread>,
max_frame_count: i32
) -> JvmtiResult<*mut jvmtiStackInfo>
pub fn get_thread_local_storage(
&self,
thread: jthread
) -> JvmtiResult<*mut c_void>
pub fn set_thread_local_storage(
&self,
thread: jthread,
data: *const c_void
) -> JvmtiResult<()>
pub fn get_stack_trace(&self)
pub fn get_tag(&self, object: jobject) -> JvmtiResult<jlong>
pub fn set_tag(&self, object: jobject, tag: jlong) -> JvmtiResult<()>
pub fn force_garbage_collection(&self) -> JvmtiResult<()>
pub fn iterate_over_objects_reachable_from_object(
&self,
object: jobject,
object_reference_callback: jvmtiObjectReferenceCallback,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn iterate_over_reachable_objects(
&self,
heap_root_callback: jvmtiHeapRootCallback,
stack_ref_callback: jvmtiStackReferenceCallback,
object_ref_callback: jvmtiObjectReferenceCallback,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn iterate_over_heap(
&self,
object_filter: jvmtiHeapObjectFilter,
heap_object_callback: jvmtiHeapObjectCallback,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn iterate_over_instances_of_class(
&self,
class: jclass,
object_filter: jvmtiHeapObjectFilter,
heap_object_callback: jvmtiHeapObjectCallback,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn follow_references(
&self,
heap_filter: i32,
class: jclass,
initial_object: jobject,
callbacks: *const jvmtiHeapCallbacks,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn iterate_through_heap(
&self,
heap_filter: jint,
class: jclass,
callbacks: *const jvmtiHeapCallbacks,
user_data: *const c_void
) -> JvmtiResult<()>
pub fn set_jni_function_table(
&self,
function_table: *const JNINativeInterface_
) -> JvmtiResult<()>
pub fn get_jni_function_table(&self) -> JvmtiResult<*mut JNINativeInterface_>
pub fn set_event_callbacks(
&self,
callback: JvmtiEventCallbacks
) -> JvmtiResult<()>
pub fn generate_events(&self, event_type: jvmtiEvent) -> JvmtiResult<()>
pub fn get_extension_functions(
&self
) -> JvmtiResult<&[jvmtiExtensionFunctionInfo]>
pub fn get_extension_events(&self) -> JvmtiResult<&[jvmtiExtensionEventInfo]>
pub fn set_extension_event_callback(
&self,
extension_event_index: i32,
callback: jvmtiExtensionEvent
) -> JvmtiResult<()>
pub fn dispose_environment(&self) -> JvmtiResult<()>
pub fn get_error_name(&self, error: jvmtiError) -> JvmtiResult<String>
pub fn get_jlocation_format(&self) -> JvmtiResult<jvmtiJlocationFormat>
pub fn get_system_properties(&self) -> JvmtiResult<()>
pub fn get_system_property(&self, property: &str) -> JvmtiResult<String>
pub fn set_system_property(&self, property: &str, value: &str) -> JvmtiResult<()>
pub fn get_phase(&self) -> JvmtiResult<jvmtiPhase>
pub fn get_current_thread_cpu_timer_info(&self) -> JvmtiResult<jvmtiTimerInfo>
pub fn get_current_cpu_time(&self) -> JvmtiResult<jlong>
pub fn get_thread_cpu_timer_info(&self) -> JvmtiResult<jvmtiTimerInfo>
pub fn get_thread_cpu_time(&self, thread: jthread) -> JvmtiResult<jlong>
pub fn get_timer_info(&self) -> JvmtiResult<jvmtiTimerInfo>
pub fn get_time(&self) -> JvmtiResult<jlong>
pub fn get_potential_capabilities(&self) -> JvmtiResult<jvmtiCapabilities>
pub fn add_capabilities(
&self,
capabilities: jvmtiCapabilities
) -> JvmtiResult<()>
pub fn relinquish_capabilities(
&self,
capabilities: jvmtiCapabilities
) -> JvmtiResult<()>
pub fn get_available_processors(&self) -> JvmtiResult<jint>
sourcepub fn get_class_version_numbers(
&self,
class: jclass
) -> JvmtiResult<(jint, jint)>
pub fn get_class_version_numbers(
&self,
class: jclass
) -> JvmtiResult<(jint, jint)>
Returns major, minor
pub fn get_constant_pool(&self, class: jclass) -> JvmtiResult<(jint, &[c_uchar])>
pub fn get_environment_local_storage(&self) -> JvmtiResult<*mut c_void>
pub fn set_environment_local_storage(
&self,
data: *const c_void
) -> JvmtiResult<()>
pub fn add_to_bootstrap_class_loader_search(
&self,
segment: &str
) -> JvmtiResult<()>
pub fn set_verbose_flag(
&self,
flag: jvmtiVerboseFlag,
value: bool
) -> JvmtiResult<()>
pub fn add_to_system_class_loader_search(&self, segment: &str) -> JvmtiResult<()>
pub fn retransform_classes(&self, classes: Vec<jclass>) -> JvmtiResult<()>
pub fn get_owned_monitor_stack_depth_info(
&self,
thread: jthread
) -> JvmtiResult<&[jvmtiMonitorStackDepthInfo]>
pub fn get_object_size(&self, object: jobject) -> JvmtiResult<jlong>
pub fn get_local_instance(
&self,
thread: jthread,
depth: i32
) -> JvmtiResult<jobject>
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for JvmtiEnv
impl !Send for JvmtiEnv
impl !Sync for JvmtiEnv
impl Unpin for JvmtiEnv
impl UnwindSafe for JvmtiEnv
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more