Ruby 4.1.0dev (2026-09-14 revision c4e06b4e30d0dbdd1a9cd76f5d97fe1220b3a23c)
cont.h
1#ifndef INTERNAL_CONT_H /*-*-C-*-vi:se ft=c:*/
2#define INTERNAL_CONT_H
11#include "ruby/ruby.h" /* for VALUE */
12
13struct rb_thread_struct; /* in vm_core.h */
14struct rb_fiber_struct; /* in cont.c */
15struct rb_execution_context_struct; /* in vm_core.c */
16
17/* cont.c */
18void rb_fiber_reset_root_local_storage(struct rb_thread_struct *);
19void ruby_register_rollback_func_for_ensure(VALUE (*ensure_func)(VALUE), VALUE (*rollback_func)(VALUE));
20
21/* vm.c */
22void rb_free_shared_fiber_pool(void);
23
24// Copy locals from the current execution to the specified fiber.
25VALUE rb_fiber_inherit_storage(struct rb_execution_context_struct *ec, struct rb_fiber_struct *fiber);
26
27VALUE rb_fiberptr_self(struct rb_fiber_struct *fiber);
28unsigned int rb_fiberptr_blocking(struct rb_fiber_struct *fiber);
29struct rb_execution_context_struct * rb_fiberptr_get_ec(struct rb_fiber_struct *fiber);
30void rb_fiber_free_body(void *fiber); /* cont.c */
31#endif /* INTERNAL_CONT_H */
uintptr_t VALUE
Type that represents a Ruby object.
Definition value.h:40