Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)
variable.h
Go to the documentation of this file.
1#ifndef RBIMPL_VARIABLE_H /*-*-C++-*-vi:se ft=cpp:*/
2#define RBIMPL_VARIABLE_H
24#include "ruby/internal/value.h"
26
28
29typedef VALUE rb_gvar_getter_t(ID id, VALUE *data);
30typedef void rb_gvar_setter_t(VALUE val, ID id, VALUE *data);
31typedef void rb_gvar_marker_t(VALUE *var);
32
36
40
44
47
48void rb_define_variable(const char*,VALUE*);
54
56VALUE rb_gv_get(const char*);
59
61
62#endif /* RBIMPL_VARIABLE_H */
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_define_virtual_variable(const char *, rb_gvar_getter_t *, rb_gvar_setter_t *)
Definition: variable.c:593
rb_gvar_setter_t rb_gvar_var_setter
Definition: variable.h:42
rb_gvar_marker_t rb_gvar_var_marker
Definition: variable.h:43
VALUE rb_gv_set(const char *, VALUE)
Definition: variable.c:754
void rb_gvar_marker_t(VALUE *var)
Definition: variable.h:31
void rb_gvar_setter_t(VALUE val, ID id, VALUE *data)
Definition: variable.h:30
void rb_define_variable(const char *, VALUE *)
Definition: variable.c:581
void rb_define_global_const(const char *, VALUE)
Definition: variable.c:3162
rb_gvar_setter_t rb_gvar_val_setter
Definition: variable.h:38
rb_gvar_marker_t rb_gvar_undef_marker
Definition: variable.h:35
rb_gvar_setter_t rb_gvar_readonly_setter
Definition: variable.h:46
VALUE rb_iv_set(VALUE, const char *, VALUE)
Definition: variable.c:3580
rb_gvar_getter_t rb_gvar_undef_getter
Definition: variable.h:33
rb_gvar_marker_t rb_gvar_val_marker
Definition: variable.h:39
void rb_define_const(VALUE, const char *, VALUE)
Definition: variable.c:3150
void rb_define_readonly_variable(const char *, const VALUE *)
Definition: variable.c:587
VALUE rb_gv_get(const char *)
Definition: variable.c:768
void rb_define_hooked_variable(const char *, VALUE *, rb_gvar_getter_t *, rb_gvar_setter_t *)
Definition: variable.c:562
VALUE rb_iv_get(VALUE, const char *)
Definition: variable.c:3569
VALUE rb_gvar_getter_t(ID id, VALUE *data)
Definition: variable.h:29
rb_gvar_setter_t rb_gvar_undef_setter
Definition: variable.h:34
rb_gvar_getter_t rb_gvar_val_getter
Definition: variable.h:37
rb_gvar_getter_t rb_gvar_var_getter
Definition: variable.h:41
Defines RBIMPL_ATTR_NORETURN.
#define RBIMPL_ATTR_NORETURN()
Wraps (or simulates) [[noreturn]]
Definition: noreturn.h:38
#define const
Definition: strftime.c:108
Defines VALUE and ID.
unsigned long VALUE
Definition: value.h:38
unsigned long ID
Definition: value.h:39