|
Ruby
2.7.2p137(2020-10-01revision5445e0435260b449decf2ac16f9d09bae3cafe72)
|
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_page * | free_next |
| RVALUE * | start |
| RVALUE * | freelist |
| 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] |
| struct { ... } heap_page::flags |
| bits_t heap_page::mark_bits[HEAP_PAGE_BITMAP_LIMIT] |
| bits_t heap_page::marking_bits[HEAP_PAGE_BITMAP_LIMIT] |
| bits_t heap_page::pinned_bits[HEAP_PAGE_BITMAP_LIMIT] |
| bits_t heap_page::uncollectible_bits[HEAP_PAGE_BITMAP_LIMIT] |
| bits_t heap_page::wb_unprotected_bits[HEAP_PAGE_BITMAP_LIMIT] |