Ruby 2.0.0p353(2013-11-22revision43784)

- Main Page
- Modules
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Data Fields

Data Structures | Data Fields
rb_objspace Struct Reference

## Data Structures
struct | mark_func_data_struct

## Data Fields
struct {
size_t limit
size_t increase
} | malloc_params
struct {
size_t increment
struct heaps_slot * ptr
struct heaps_slot * sweep_slots
struct heaps_slot * free_slots
struct heaps_header ** sorted
size_t length
size_t used
struct heaps_free_bitmap * free_bitmap
RVALUE * range [2]
struct heaps_header * freed
size_t marked_num
size_t free_num
size_t free_min
size_t final_num
size_t do_heap_free
} | heap
struct {
int dont_gc
int dont_lazy_sweep
int during_gc
rb_atomic_t finalizing
} | flags
struct {
st_table * table
RVALUE * deferred
} | final
mark_stack_t | mark_stack
struct {
int run
gc_profile_record * record
size_t count
size_t size
double invoke_time
} | profile
struct gc_list * | global_list
size_t | total_allocated_object_num
size_t | total_freed_object_num
int | gc_stress
struct rb_objspace::mark_func_data_struct * | mark_func_data

## Detailed Description

Definition at line 208 of file gc.c.

## Field Documentation

size_t rb_objspace::count

Definition at line 248 of file gc.c.

Referenced by gc_count(), gc_marks(), gc_prof_timer_start(), gc_prof_timer_stop(), gc_profile_clear(), gc_profile_dump_on(), gc_profile_record_get(), gc_profile_total_time(), and gc_stat().

RVALUE* rb_objspace::deferred

Definition at line 242 of file gc.c.

size_t rb_objspace::do_heap_free

Definition at line 232 of file gc.c.

Referenced by before_gc_sweep(), and slot_sweep().

int rb_objspace::dont_gc

Definition at line 235 of file gc.c.

int rb_objspace::dont_lazy_sweep

Definition at line 236 of file gc.c.

Referenced by gc_prepare_free_objects(), and lazy_sweep_enable().

int rb_objspace::during_gc

Definition at line 237 of file gc.c.

struct { ... } rb_objspace::final

size_t rb_objspace::final_num

Definition at line 231 of file gc.c.

Referenced by gc_stat(), run_final(), and slot_sweep().

rb_atomic_t rb_objspace::finalizing

Definition at line 238 of file gc.c.

struct { ... } rb_objspace::flags

Referenced by gc_prepare_free_objects(), and lazy_sweep_enable().

struct heaps_free_bitmap* rb_objspace::free_bitmap

Definition at line 225 of file gc.c.

Referenced by allocate_sorted_heaps(), assign_heap_slot(), free_unused_heaps(), and rb_objspace_free().

size_t rb_objspace::free_min

Definition at line 230 of file gc.c.

Referenced by after_gc_sweep(), before_gc_sweep(), and gc_prepare_free_objects().

size_t rb_objspace::free_num

Definition at line 229 of file gc.c.

Referenced by after_gc_sweep(), before_gc_sweep(), finalize_list(), gc_stat(), rb_gc_force_recycle(), and slot_sweep().

struct heaps_slot* rb_objspace::free_slots

Definition at line 221 of file gc.c.

Referenced by before_gc_sweep(), link_free_heap_slot(), newobj(), and unlink_free_heap_slot().

struct heaps_header* rb_objspace::freed

Definition at line 227 of file gc.c.

int rb_objspace::gc_stress

Definition at line 256 of file gc.c.

struct gc_list* rb_objspace::global_list

Definition at line 252 of file gc.c.

struct { ... } rb_objspace::heap

Referenced by after_gc_sweep(), allocate_sorted_heaps(), assign_heap_slot(), before_gc_sweep(), count_objects(), finalize_list(), free_unused_heaps(), gc_mark_ptr(), gc_marks(), gc_prepare_free_objects(), gc_stat(), gc_sweep(), is_pointer_to_heap(), is_swept_object(), lazy_sweep(), link_free_heap_slot(), newobj(), objspace_each_objects(), rb_gc_force_recycle(), rb_objspace_call_finalizer(), rb_objspace_free(), rest_sweep(), run_final(), slot_sweep(), unlink_free_heap_slot(), and unlink_heap_slot().

size_t rb_objspace::increase

Definition at line 211 of file gc.c.

size_t rb_objspace::increment

Definition at line 218 of file gc.c.

Referenced by gc_stat().

double rb_objspace::invoke_time

Definition at line 250 of file gc.c.

Referenced by gc_prof_timer_start(), and init_heap().

size_t rb_objspace::length

Definition at line 223 of file gc.c.

Referenced by gc_stat().

size_t rb_objspace::limit

Definition at line 210 of file gc.c.

struct { ... } rb_objspace::malloc_params

Referenced by vm_malloc_fixup(), vm_xfree(), and vm_xrealloc().

struct rb_objspace::mark_func_data_struct * rb_objspace::mark_func_data

Referenced by gc_mark(), gc_mark_children(), gc_marks(), and rb_objspace_reachable_objects_from().

mark_stack_t rb_objspace::mark_stack

Definition at line 244 of file gc.c.

Referenced by gc_mark(), gc_mark_stacked_objects(), init_heap(), and rb_objspace_free().

size_t rb_objspace::marked_num

Definition at line 228 of file gc.c.

Referenced by after_gc_sweep(), gc_mark_ptr(), gc_marks(), and gc_prepare_free_objects().

struct { ... } rb_objspace::profile

Referenced by gc_prof_timer_start(), gc_prof_timer_stop(), gc_profile_clear(), gc_profile_disable(), gc_profile_dump_on(), gc_profile_enable(), gc_profile_enable_get(), gc_profile_record_get(), gc_profile_total_time(), init_heap(), and rb_objspace_free().

struct heaps_slot* rb_objspace::ptr

Definition at line 219 of file gc.c.

RVALUE* rb_objspace::range[2]

Definition at line 226 of file gc.c.

gc_profile_record* rb_objspace::record

Definition at line 247 of file gc.c.

Referenced by gc_prof_timer_start(), gc_prof_timer_stop(), gc_profile_clear(), gc_profile_dump_on(), gc_profile_record_get(), gc_profile_total_time(), and rb_objspace_free().

int rb_objspace::run

Definition at line 246 of file gc.c.

Referenced by gc_prof_timer_start(), gc_prof_timer_stop(), gc_profile_disable(), gc_profile_dump_on(), gc_profile_enable(), gc_profile_enable_get(), gc_profile_record_get(), and gc_profile_total_time().

size_t rb_objspace::size

Definition at line 249 of file gc.c.

Referenced by gc_prof_timer_start(), and gc_profile_clear().

struct heaps_header** rb_objspace::sorted

Definition at line 222 of file gc.c.

Referenced by allocate_sorted_heaps(), assign_heap_slot(), count_objects(), free_unused_heaps(), is_pointer_to_heap(), objspace_each_objects(), rb_objspace_call_finalizer(), and rb_objspace_free().

struct heaps_slot* rb_objspace::sweep_slots

Definition at line 220 of file gc.c.

Referenced by before_gc_sweep(), gc_prepare_free_objects(), gc_sweep(), is_swept_object(), lazy_sweep(), rest_sweep(), and unlink_heap_slot().

st_table* rb_objspace::table

Definition at line 241 of file gc.c.

size_t rb_objspace::total_allocated_object_num

Definition at line 254 of file gc.c.

Referenced by gc_stat(), newobj(), and objspace_live_num().

size_t rb_objspace::total_freed_object_num

Definition at line 255 of file gc.c.

Referenced by finalize_list(), gc_stat(), objspace_live_num(), rb_gc_force_recycle(), and slot_sweep().

size_t rb_objspace::used

Definition at line 224 of file gc.c.

Referenced by gc_stat().

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

- gc.c