Ruby 2.1.5p273(2014-11-13revision48405)

- Main Page
- Modules
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Data Fields

Data Fields
heap_page Struct Reference

## Data Fields
struct heap_page_body * | body
RVALUE * | freelist
RVALUE * | start
size_t | final_slots
size_t | limit
struct heap_page * | next
struct heap_page * | prev
struct heap_page * | free_next
rb_heap_t * | heap
int | before_sweep
bits_t | mark_bits [HEAP_BITMAP_LIMIT]
bits_t | rememberset_bits [HEAP_BITMAP_LIMIT]
bits_t | oldgen_bits [HEAP_BITMAP_LIMIT]

## Detailed Description

Definition at line 563 of file gc.c.

## Field Documentation

int heap_page::before_sweep

Definition at line 573 of file gc.c.

Referenced by gc_page_sweep(), gc_sweep(), heap_is_swept_object(), and rb_gc_force_recycle().

struct heap_page_body* heap_page::body

Definition at line 564 of file gc.c.

Referenced by heap_page_allocate(), heap_page_free(), and objspace_each_objects().

size_t heap_page::final_slots

Definition at line 567 of file gc.c.

Referenced by finalize_list(), gc_page_sweep(), and heap_pages_free_unused_pages().

struct heap_page* heap_page::free_next

Definition at line 571 of file gc.c.

Referenced by gc_page_sweep(), heap_add_freepage(), and heap_get_freeobj_from_next_freepage().

RVALUE* heap_page::freelist

Definition at line 565 of file gc.c.

Referenced by gc_before_heap_sweep(), heap_add_freepage(), heap_get_freeobj_from_next_freepage(), and heap_page_add_freeobj().

rb_heap_t* heap_page::heap

Definition at line 572 of file gc.c.

Referenced by gc_after_sweep(), gc_before_sweep(), gc_rest_sweep(), heap_add_page(), heap_pages_free_unused_pages(), and heap_unlink_page().

size_t heap_page::limit

Definition at line 568 of file gc.c.

Referenced by count_objects(), gc_page_sweep(), heap_add_page(), heap_page_allocate(), heap_pages_free_unused_pages(), heap_unlink_page(), is_pointer_to_heap(), and objspace_each_objects().

bits_t heap_page::mark_bits[HEAP_BITMAP_LIMIT]

Definition at line 575 of file gc.c.

Referenced by gc_page_sweep(), gc_setup_mark_bits(), and rgengc_mark_and_rememberset_clear().

struct heap_page* heap_page::next

Definition at line 569 of file gc.c.

Referenced by free_stack_chunks(), gc_heap_lazy_sweep(), gc_sweep(), heap_add_page(), heap_unlink_page(), push_mark_stack_chunk(), rgengc_mark_and_rememberset_clear(), and rgengc_rememberset_mark().

bits_t heap_page::oldgen_bits[HEAP_BITMAP_LIMIT]

Definition at line 578 of file gc.c.

Referenced by gc_setup_mark_bits().

struct heap_page* heap_page::prev

Definition at line 570 of file gc.c.

Referenced by heap_add_page(), heap_unlink_page(), and pop_mark_stack_chunk().

bits_t heap_page::rememberset_bits[HEAP_BITMAP_LIMIT]

Definition at line 577 of file gc.c.

Referenced by rgengc_mark_and_rememberset_clear(), and rgengc_rememberset_mark().

RVALUE* heap_page::start

Definition at line 566 of file gc.c.

Referenced by count_objects(), gc_mark_locations(), gc_page_sweep(), heap_page_allocate(), is_pointer_to_heap(), objspace_each_objects(), and rgengc_rememberset_mark().

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

- gc.c