Ruby: MMTk_RubyUpcalls Struct Reference

Ruby 4.0.6p0 (2026-07-14 revision 03b6d3f8898a28604fe6cb00eae3226b821168f4)

Data Fields
MMTk_RubyUpcalls Struct Reference

## Data Fields
void(* | init_gc_worker_thread )(struct MMTk_GCThreadTLS *gc_worker_tls)
bool(* | is_mutator )(void)
void(* | stop_the_world )(void)
void(* | resume_mutators )(void)
void(* | block_for_gc )(MMTk_VMMutatorThread tls)
size_t(* | number_of_mutators )(void)
void(* | get_mutators )(void(*visit_mutator)(MMTk_Mutator *, void *), void *data)
void(* | scan_gc_roots )(void)
void(* | scan_objspace )(void)
void(* | scan_object_ruby_style )(MMTk_ObjectReference object)
void(* | call_gc_mark_children )(MMTk_ObjectReference object)
void(* | call_obj_free )(MMTk_ObjectReference object)
size_t(* | vm_live_bytes )(void)
void(* | update_global_tables )(int tbl_idx)
int(* | global_tables_count )(void)
void(* | update_finalizer_table )(void)
bool(* | special_const_p )(MMTk_ObjectReference object)
void(* | mutator_thread_panic_handler )(void)

## Detailed Description

Definition at line 59 of file mmtk.h.

## Field Documentation

## ◆ block_for_gc

void(* MMTk_RubyUpcalls::block_for_gc) (MMTk_VMMutatorThread tls)

Definition at line 64 of file mmtk.h.

## ◆ call_gc_mark_children

void(* MMTk_RubyUpcalls::call_gc_mark_children) (MMTk_ObjectReference object)

Definition at line 70 of file mmtk.h.

## ◆ call_obj_free

void(* MMTk_RubyUpcalls::call_obj_free) (MMTk_ObjectReference object)

Definition at line 71 of file mmtk.h.

## ◆ get_mutators

void(* MMTk_RubyUpcalls::get_mutators) (void(*visit_mutator)(MMTk_Mutator *, void *), void *data)

Definition at line 66 of file mmtk.h.

## ◆ global_tables_count

int(* MMTk_RubyUpcalls::global_tables_count) (void)

Definition at line 74 of file mmtk.h.

## ◆ init_gc_worker_thread

void(* MMTk_RubyUpcalls::init_gc_worker_thread) (struct MMTk_GCThreadTLS *gc_worker_tls)

Definition at line 60 of file mmtk.h.

## ◆ is_mutator

bool(* MMTk_RubyUpcalls::is_mutator) (void)

Definition at line 61 of file mmtk.h.

## ◆ mutator_thread_panic_handler

void(* MMTk_RubyUpcalls::mutator_thread_panic_handler) (void)

Definition at line 77 of file mmtk.h.

## ◆ number_of_mutators

size_t(* MMTk_RubyUpcalls::number_of_mutators) (void)

Definition at line 65 of file mmtk.h.

## ◆ resume_mutators

void(* MMTk_RubyUpcalls::resume_mutators) (void)

Definition at line 63 of file mmtk.h.

## ◆ scan_gc_roots

void(* MMTk_RubyUpcalls::scan_gc_roots) (void)

Definition at line 67 of file mmtk.h.

## ◆ scan_object_ruby_style

void(* MMTk_RubyUpcalls::scan_object_ruby_style) (MMTk_ObjectReference object)

Definition at line 69 of file mmtk.h.

## ◆ scan_objspace

void(* MMTk_RubyUpcalls::scan_objspace) (void)

Definition at line 68 of file mmtk.h.

## ◆ special_const_p

bool(* MMTk_RubyUpcalls::special_const_p) (MMTk_ObjectReference object)

Definition at line 76 of file mmtk.h.

## ◆ stop_the_world

void(* MMTk_RubyUpcalls::stop_the_world) (void)

Definition at line 62 of file mmtk.h.

## ◆ update_finalizer_table

void(* MMTk_RubyUpcalls::update_finalizer_table) (void)

Definition at line 75 of file mmtk.h.

## ◆ update_global_tables

void(* MMTk_RubyUpcalls::update_global_tables) (int tbl_idx)

Definition at line 73 of file mmtk.h.

## ◆ vm_live_bytes

size_t(* MMTk_RubyUpcalls::vm_live_bytes) (void)

Definition at line 72 of file mmtk.h.

The documentation for this struct was generated from the following file:

- gc/mmtk/mmtk.h