diff options
author | Koichi Sasada <[email protected]> | 2020-11-17 16:40:47 +0900 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2020-11-18 03:52:41 +0900 |
commit | 5e3259ea7490a2542d78c433eb8c9d44c7819e61 (patch) | |
tree | 1a280e725a2c66ca776086661e3b707fd73f4577 /ractor_pub.h | |
parent | 0683912db888b0421ce4c40ad450ccf75ad7e3f4 (diff) |
fix public interface
To make some kind of Ractor related extensions, some functions
should be exposed.
* include/ruby/thread_native.h
* rb_native_mutex_*
* rb_native_cond_*
* include/ruby/ractor.h
* RB_OBJ_SHAREABLE_P(obj)
* rb_ractor_shareable_p(obj)
* rb_ractor_std*()
* rb_cRactor
and rm ractor_pub.h
and rename srcdir/ractor.h to srcdir/ractor_core.h
(to avoid conflict with include/ruby/ractor.h)
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/3775
Diffstat (limited to 'ractor_pub.h')
-rw-r--r-- | ractor_pub.h | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/ractor_pub.h b/ractor_pub.h deleted file mode 100644 index f2869276f6..0000000000 --- a/ractor_pub.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef RACTOR_PUB_INCLUDED -#define RACTOR_PUB_INCLUDED - -RUBY_EXTERN bool ruby_multi_ractor; - -bool rb_ractor_main_p_(void); - -static inline bool -rb_ractor_main_p(void) -{ - if (!ruby_multi_ractor) { - return true; - } - else { - return rb_ractor_main_p_(); - } -} - -bool rb_ractor_shareable_p_continue(VALUE obj); - -#define RB_OBJ_SHAREABLE_P(obj) FL_TEST_RAW((obj), RUBY_FL_SHAREABLE) - -// TODO: deep frozen - -static inline bool -rb_ractor_shareable_p(VALUE obj) -{ - if (SPECIAL_CONST_P(obj)) { - return true; - } - else if (RB_OBJ_SHAREABLE_P(obj)) { - return true; - } - else { - return rb_ractor_shareable_p_continue(obj); - } -} - -VALUE rb_ractor_make_shareable(VALUE obj); - -RUBY_SYMBOL_EXPORT_BEGIN - -VALUE rb_ractor_stdin(void); -VALUE rb_ractor_stdout(void); -VALUE rb_ractor_stderr(void); -void rb_ractor_stdin_set(VALUE); -void rb_ractor_stdout_set(VALUE); -void rb_ractor_stderr_set(VALUE); - -RUBY_SYMBOL_EXPORT_END - -#endif |