Ruby 4.1.0dev (2026-11-10 revision 1f2a4bd5750bb3b685c24aee1fbd7530e895cf3f)
Data Fields
heap_page Struct Reference

Data Fields

struct free_region * free_region
 
uintptr_t start
 
uint64_t slot_size_reciprocal
 
unsigned short slot_size
 
unsigned short total_slots
 
unsigned short free_slots
 
unsigned short final_slots
 
unsigned short pinned_slots
 
struct { 
 
   unsigned int   before_sweep: 1 
 
   unsigned int   has_remembered_objects: 1 
 
   unsigned int   has_uncollectible_wb_unprotected_objects: 1 
 
   unsigned int   has_shref_objects: 1 
 
   unsigned int   has_shareable_objects: 1 
 
   unsigned int   body_zeroed: 1 
 
} flags 
 
rb_heap_t * heap
 
rb_objspace_t * objspace
 
struct heap_page * free_next
 
struct heap_page_body * body
 
struct arena_descriptor * arena
 
struct ccan_list_node page_node
 
bits_t wb_unprotected_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t mark_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t uncollectible_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t marking_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t remembered_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t shareable_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t shref_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t pinned_bits [HEAP_PAGE_BITMAP_LIMIT]
 
bits_t age_bits [HEAP_PAGE_BITMAP_LIMIT *RVALUE_AGE_BIT_COUNT]
 

Detailed Description

Definition at line 1152 of file default.c.

Field Documentation

◆ age_bits

bits_t heap_page::age_bits[HEAP_PAGE_BITMAP_LIMIT *RVALUE_AGE_BIT_COUNT]

Definition at line 1202 of file default.c.

◆ arena

struct arena_descriptor* heap_page::arena

Definition at line 1182 of file default.c.

◆ before_sweep

unsigned int heap_page::before_sweep

Definition at line 1166 of file default.c.

◆ body

struct heap_page_body* heap_page::body

Definition at line 1181 of file default.c.

◆ body_zeroed

unsigned int heap_page::body_zeroed

Definition at line 1171 of file default.c.

◆ final_slots

unsigned short heap_page::final_slots

Definition at line 1160 of file default.c.

◆ free_next

struct heap_page* heap_page::free_next

Definition at line 1180 of file default.c.

◆ free_region

struct free_region* heap_page::free_region

Definition at line 1154 of file default.c.

◆ free_slots

unsigned short heap_page::free_slots

Definition at line 1159 of file default.c.

◆ has_remembered_objects

unsigned int heap_page::has_remembered_objects

Definition at line 1167 of file default.c.

◆ has_shareable_objects

unsigned int heap_page::has_shareable_objects

Definition at line 1170 of file default.c.

◆ has_shref_objects

unsigned int heap_page::has_shref_objects

Definition at line 1169 of file default.c.

◆ has_uncollectible_wb_unprotected_objects

unsigned int heap_page::has_uncollectible_wb_unprotected_objects

Definition at line 1168 of file default.c.

◆ heap

rb_heap_t* heap_page::heap

Definition at line 1174 of file default.c.

◆ mark_bits

bits_t heap_page::mark_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1187 of file default.c.

◆ marking_bits

bits_t heap_page::marking_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1189 of file default.c.

◆ objspace

rb_objspace_t* heap_page::objspace

Definition at line 1178 of file default.c.

◆ page_node

struct ccan_list_node heap_page::page_node

Definition at line 1183 of file default.c.

◆ pinned_bits

bits_t heap_page::pinned_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1201 of file default.c.

◆ pinned_slots

unsigned short heap_page::pinned_slots

Definition at line 1161 of file default.c.

◆ remembered_bits

bits_t heap_page::remembered_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1191 of file default.c.

◆ shareable_bits

bits_t heap_page::shareable_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1197 of file default.c.

◆ shref_bits

bits_t heap_page::shref_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1198 of file default.c.

◆ slot_size

unsigned short heap_page::slot_size

Definition at line 1157 of file default.c.

◆ slot_size_reciprocal

uint64_t heap_page::slot_size_reciprocal

Definition at line 1156 of file default.c.

◆ start

uintptr_t heap_page::start

Definition at line 1155 of file default.c.

◆ total_slots

unsigned short heap_page::total_slots

Definition at line 1158 of file default.c.

◆ uncollectible_bits

bits_t heap_page::uncollectible_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1188 of file default.c.

◆ wb_unprotected_bits

bits_t heap_page::wb_unprotected_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 1185 of file default.c.


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