Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)
Data Fields
heap_page Struct Reference

Data Fields

short total_slots
 
short free_slots
 
short pinned_slots
 
short final_slots
 
struct {
   unsigned int   before_sweep: 1
 
   unsigned int   has_remembered_objects: 1
 
   unsigned int   has_uncollectible_shady_objects: 1
 
   unsigned int   in_tomb: 1
 
flags
 
struct heap_pagefree_next
 
RVALUEstart
 
RVALUEfreelist
 
struct 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 pinned_bits [HEAP_PAGE_BITMAP_LIMIT]
 

Detailed Description

Definition at line 825 of file gc.c.

Field Documentation

◆ before_sweep

unsigned int heap_page::before_sweep

Definition at line 831 of file gc.c.

◆ final_slots

short heap_page::final_slots

Definition at line 829 of file gc.c.

◆ 

struct { ... } heap_page::flags

◆ free_next

struct heap_page* heap_page::free_next

Definition at line 837 of file gc.c.

◆ free_slots

short heap_page::free_slots

Definition at line 827 of file gc.c.

◆ freelist

RVALUE* heap_page::freelist

Definition at line 839 of file gc.c.

Referenced by rb_gc_ractor_newobj_cache_clear().

◆ has_remembered_objects

unsigned int heap_page::has_remembered_objects

Definition at line 832 of file gc.c.

◆ has_uncollectible_shady_objects

unsigned int heap_page::has_uncollectible_shady_objects

Definition at line 833 of file gc.c.

◆ in_tomb

unsigned int heap_page::in_tomb

Definition at line 834 of file gc.c.

◆ mark_bits

bits_t heap_page::mark_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 844 of file gc.c.

◆ marking_bits

bits_t heap_page::marking_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 846 of file gc.c.

◆ page_node

struct list_node heap_page::page_node

Definition at line 840 of file gc.c.

◆ pinned_bits

bits_t heap_page::pinned_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 849 of file gc.c.

◆ pinned_slots

short heap_page::pinned_slots

Definition at line 828 of file gc.c.

◆ start

RVALUE* heap_page::start

Definition at line 838 of file gc.c.

Referenced by rb_gc_mark_locations().

◆ total_slots

short heap_page::total_slots

Definition at line 826 of file gc.c.

◆ uncollectible_bits

bits_t heap_page::uncollectible_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 845 of file gc.c.

◆ wb_unprotected_bits

bits_t heap_page::wb_unprotected_bits[HEAP_PAGE_BITMAP_LIMIT]

Definition at line 842 of file gc.c.


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