Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)
gc.h
Go to the documentation of this file.
1#ifndef RBIMPL_INTERN_GC_H /*-*-C++-*-vi:se ft=cpp:*/
2#define RBIMPL_INTERN_GC_H
24#include "ruby/internal/value.h"
26
28
29/* gc.c */
30COLDFUNC NORETURN(void rb_memerror(void));
31PUREFUNC(int rb_during_gc(void));
33void rb_mark_tbl(struct st_table*);
34void rb_mark_tbl_no_pin(struct st_table*);
35void rb_mark_set(struct st_table*);
36void rb_mark_hash(struct st_table*);
39void rb_gc_mark(VALUE);
43void rb_gc(void);
47VALUE rb_gc_start(void);
50size_t rb_gc_count(void);
51size_t rb_gc_stat(VALUE);
53void rb_gc_adjust_memory_usage(ssize_t);
54
56
57#endif /* RBIMPL_INTERN_GC_H */
Various attribute-related macros.
#define COLDFUNC
Definition: attributes.h:110
#define PUREFUNC(x)
Definition: attributes.h:54
#define NORETURN(x)
Definition: attributes.h:152
struct RIMemo * ptr
Definition: debug.c:88
Tewaking visibility of C variables/functions.
#define RBIMPL_SYMBOL_EXPORT_END()
Counterpart of RBIMPL_SYMBOL_EXPORT_BEGIN.
Definition: dllexport.h:86
#define RBIMPL_SYMBOL_EXPORT_BEGIN()
Shortcut macro equivalent to RUBY_SYMBOL_EXPORT_BEGIN extern "C" {.
Definition: dllexport.h:77
void rb_memerror(void)
Definition: gc.c:10309
void rb_mark_tbl(struct st_table *)
Definition: gc.c:5893
void rb_gc_mark_maybe(VALUE)
Definition: gc.c:5931
VALUE rb_gc_disable(void)
Definition: gc.c:9925
VALUE rb_gc_start(void)
Definition: gc.c:9490
VALUE rb_gc_latest_gc_info(VALUE)
Definition: gc.c:9634
VALUE rb_gc_enable(void)
Definition: gc.c:9888
VALUE rb_define_finalizer(VALUE, VALUE)
Definition: gc.c:3604
VALUE rb_undefine_finalizer(VALUE)
Definition: gc.c:3453
int rb_during_gc(void)
Definition: gc.c:9505
size_t rb_gc_stat(VALUE)
Definition: gc.c:9853
void rb_gc(void)
Definition: gc.c:9497
VALUE rb_gc_location(VALUE)
Definition: gc.c:9003
void rb_gc_update_tbl_refs(st_table *ptr)
Definition: gc.c:8850
void rb_gc_adjust_memory_usage(ssize_t)
Definition: gc.c:11062
void rb_gc_mark(VALUE)
Definition: gc.c:6112
void rb_gc_mark_locations(const VALUE *, const VALUE *)
Definition: gc.c:5580
void rb_gc_force_recycle(VALUE)
Definition: gc.c:7968
void rb_gc_mark_movable(VALUE)
Definition: gc.c:6106
void rb_gc_copy_finalizer(VALUE, VALUE)
Definition: gc.c:3612
void rb_mark_set(struct st_table *)
Definition: gc.c:5686
void rb_mark_hash(struct st_table *)
Definition: gc.c:5750
size_t rb_gc_count(void)
Definition: gc.c:9529
void rb_mark_tbl_no_pin(struct st_table *)
Definition: gc.c:5899
#define const
Definition: strftime.c:108
Definition: st.h:79
Defines VALUE and ID.
unsigned long VALUE
Definition: value.h:38