Coverage Report

Created: 2026-03-31 07:30

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/ruby/ractor.rbinc
Line
Count
Source
1
// -*- c -*-
2
// DO NOT MODIFY THIS FILE DIRECTLY.
3
// auto-generated file
4
//   by ./tool/mk_builtin_loader.rb
5
//   with ractor.rb
6
#include "internal/compilers.h"     /* for MAYBE_UNUSED */
7
#include "internal/warnings.h"      /* for COMPILER_WARNING_PUSH */
8
#include "ruby/ruby.h"              /* for VALUE */
9
#include "builtin.h"                /* for RB_BUILTIN_FUNCTION */
10
struct rb_execution_context_struct; /* in vm_core.h */
11
12
static VALUE builtin_inline_class_232(struct rb_execution_context_struct *ec, const VALUE self)
13
0
{
14
0
#line 232 "ractor.rb"
15
0
return RBOOL(ruby_single_main_ractor);
16
0
#line 17 "ractor.rbinc"
17
0
}
18
19
static VALUE builtin_inline_class_245(struct rb_execution_context_struct *ec, const VALUE self)
20
0
{
21
0
#line 245 "ractor.rb"
22
0
return 
23
0
      rb_ractor_self(rb_ec_ractor_ptr(ec));;
24
0
#line 25 "ractor.rbinc"
25
0
}
26
27
static VALUE builtin_inline_class_259(struct rb_execution_context_struct *ec, const VALUE self)
28
0
{
29
0
#line 259 "ractor.rb"
30
0
return 
31
0
      ULONG2NUM(GET_VM()->ractor.cnt);;
32
0
#line 33 "ractor.rbinc"
33
0
}
34
35
static VALUE builtin_inline_class_375(struct rb_execution_context_struct *ec, const VALUE self)
36
0
{
37
0
VALUE *const loc__ptr = (VALUE *)&ec->cfp->ep[-6];
38
0
MAYBE_UNUSED(const VALUE) loc = *loc__ptr;
39
0
#line 375 "ractor.rb"
40
0
return  RACTOR_PTR(self)->loc;
41
0
#line 42 "ractor.rbinc"
42
0
}
43
44
static VALUE builtin_inline_class_376(struct rb_execution_context_struct *ec, const VALUE self)
45
0
{
46
0
VALUE *const name__ptr = (VALUE *)&ec->cfp->ep[-5];
47
0
MAYBE_UNUSED(const VALUE) name = *name__ptr;
48
0
#line 376 "ractor.rb"
49
0
return  RACTOR_PTR(self)->name;
50
0
#line 51 "ractor.rbinc"
51
0
}
52
53
static VALUE builtin_inline_class_377(struct rb_execution_context_struct *ec, const VALUE self)
54
0
{
55
0
#line 377 "ractor.rb"
56
0
return  UINT2NUM(rb_ractor_id(RACTOR_PTR(self)));
57
0
#line 58 "ractor.rbinc"
58
0
}
59
60
static VALUE builtin_inline_class_378(struct rb_execution_context_struct *ec, const VALUE self)
61
0
{
62
0
#line 378 "ractor.rb"
63
0
return 
64
0
      rb_str_new2(ractor_status_str(RACTOR_PTR(self)->status_));
65
0
#line 66 "ractor.rbinc"
66
0
}
67
68
static VALUE builtin_inline_class_388(struct rb_execution_context_struct *ec, const VALUE self)
69
0
{
70
0
#line 388 "ractor.rb"
71
0
return RACTOR_PTR(self)->name;
72
0
#line 73 "ractor.rbinc"
73
0
}
74
75
static VALUE builtin_inline_class_419(struct rb_execution_context_struct *ec, const VALUE self)
76
0
{
77
0
VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-3];
78
0
MAYBE_UNUSED(const VALUE) obj = *obj__ptr;
79
0
#line 419 "ractor.rb"
80
0
return 
81
0
      RBOOL(rb_ractor_shareable_p(obj));;
82
0
#line 83 "ractor.rbinc"
83
0
}
84
85
static VALUE builtin_inline_class_461(struct rb_execution_context_struct *ec, const VALUE self)
86
0
{
87
0
VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5];
88
0
MAYBE_UNUSED(const VALUE) obj = *obj__ptr;
89
0
#line 461 "ractor.rb"
90
0
return 
91
0
        rb_ractor_make_shareable_copy(obj);;
92
0
#line 93 "ractor.rbinc"
93
0
}
94
95
static VALUE builtin_inline_class_465(struct rb_execution_context_struct *ec, const VALUE self)
96
0
{
97
0
VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5];
98
0
MAYBE_UNUSED(const VALUE) obj = *obj__ptr;
99
0
#line 465 "ractor.rb"
100
0
return 
101
0
        rb_ractor_make_shareable(obj);;
102
0
#line 103 "ractor.rbinc"
103
0
}
104
105
static VALUE builtin_inline_class_520(struct rb_execution_context_struct *ec, const VALUE self)
106
0
{
107
0
#line 520 "ractor.rb"
108
0
return 
109
0
      rb_ractor_self(GET_VM()->ractor.main_ractor);;
110
0
#line 111 "ractor.rbinc"
111
0
}
112
113
static VALUE builtin_inline_class_527(struct rb_execution_context_struct *ec, const VALUE self)
114
0
{
115
0
#line 527 "ractor.rb"
116
0
return 
117
0
      RBOOL(GET_VM()->ractor.main_ractor == rb_ec_ractor_ptr(ec));
118
0
#line 119 "ractor.rbinc"
119
0
}
120
121
static VALUE builtin_inline_class_567(struct rb_execution_context_struct *ec, const VALUE self)
122
0
{
123
0
#line 567 "ractor.rb"
124
0
return 
125
0
      ractor_default_port_value(RACTOR_PTR(self));
126
0
#line 127 "ractor.rbinc"
127
0
}
128
129
static VALUE builtin_inline_class_670(struct rb_execution_context_struct *ec, const VALUE self)
130
0
{
131
0
VALUE *const self__ptr = (VALUE *)&ec->cfp->ep[-4];
132
0
#line 670 "ractor.rb"
133
0
return 
134
0
      ractor_shareable_proc(ec, *LOCAL_PTR(self), false);
135
0
#line 136 "ractor.rbinc"
136
0
}
137
138
static VALUE builtin_inline_class_684(struct rb_execution_context_struct *ec, const VALUE self)
139
0
{
140
0
VALUE *const self__ptr = (VALUE *)&ec->cfp->ep[-4];
141
0
#line 684 "ractor.rb"
142
0
return 
143
0
      ractor_shareable_proc(ec, *LOCAL_PTR(self), true);
144
0
#line 145 "ractor.rbinc"
145
0
}
146
147
static VALUE builtin_inline_class_742(struct rb_execution_context_struct *ec, const VALUE self)
148
0
{
149
0
#line 742 "ractor.rb"
150
0
return 
151
0
        ractor_port_receive(ec, self);
152
0
#line 153 "ractor.rbinc"
153
0
}
154
155
static VALUE builtin_inline_class_785(struct rb_execution_context_struct *ec, const VALUE self)
156
0
{
157
0
VALUE *const move__ptr = (VALUE *)&ec->cfp->ep[-4];
158
0
MAYBE_UNUSED(const VALUE) move = *move__ptr;
159
0
VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5];
160
0
MAYBE_UNUSED(const VALUE) obj = *obj__ptr;
161
0
#line 785 "ractor.rb"
162
0
return 
163
0
        ractor_port_send(ec, self, obj, move);
164
0
#line 165 "ractor.rbinc"
165
0
}
166
167
static VALUE builtin_inline_class_807(struct rb_execution_context_struct *ec, const VALUE self)
168
0
{
169
0
#line 807 "ractor.rb"
170
0
return 
171
0
        ractor_port_close(ec, self);
172
0
#line 173 "ractor.rbinc"
173
0
}
174
175
static VALUE builtin_inline_class_818(struct rb_execution_context_struct *ec, const VALUE self)
176
0
{
177
0
#line 818 "ractor.rb"
178
0
return 
179
0
        ractor_port_closed_p(ec, self);;
180
0
#line 181 "ractor.rbinc"
181
0
}
182
183
static VALUE builtin_inline_class_828(struct rb_execution_context_struct *ec, const VALUE self)
184
0
{
185
0
#line 828 "ractor.rb"
186
0
return SIZET2NUM(rb_ractor_id((RACTOR_PORT_PTR(self)->r)));
187
0
#line 188 "ractor.rbinc"
188
0
}
189
190
static VALUE builtin_inline_class_830(struct rb_execution_context_struct *ec, const VALUE self)
191
0
{
192
0
#line 830 "ractor.rb"
193
0
return SIZET2NUM(ractor_port_id(RACTOR_PORT_PTR(self)));
194
0
#line 195 "ractor.rbinc"
195
0
}
196
197
void Init_builtin_ractor(void)
198
0
{
199
  // table definition
200
0
  static const struct rb_builtin_function ractor_table[] = {
201
0
    RB_BUILTIN_FUNCTION(0, _bi232, builtin_inline_class_232, 0),
202
0
    RB_BUILTIN_FUNCTION(1, ractor_create, ractor_create, 4),
203
0
    RB_BUILTIN_FUNCTION(2, _bi245, builtin_inline_class_245, 0),
204
0
    RB_BUILTIN_FUNCTION(3, _bi259, builtin_inline_class_259, 0),
205
0
    RB_BUILTIN_FUNCTION(4, ractor_select_internal, ractor_select_internal, 1),
206
0
    RB_BUILTIN_FUNCTION(5, _bi375, builtin_inline_class_375, 0),
207
0
    RB_BUILTIN_FUNCTION(6, _bi376, builtin_inline_class_376, 0),
208
0
    RB_BUILTIN_FUNCTION(7, _bi377, builtin_inline_class_377, 0),
209
0
    RB_BUILTIN_FUNCTION(8, _bi378, builtin_inline_class_378, 0),
210
0
    RB_BUILTIN_FUNCTION(9, _bi388, builtin_inline_class_388, 0),
211
0
    RB_BUILTIN_FUNCTION(10, _bi419, builtin_inline_class_419, 0),
212
0
    RB_BUILTIN_FUNCTION(11, _bi461, builtin_inline_class_461, 0),
213
0
    RB_BUILTIN_FUNCTION(12, _bi465, builtin_inline_class_465, 0),
214
0
    RB_BUILTIN_FUNCTION(13, ractor_local_value, ractor_local_value, 1),
215
0
    RB_BUILTIN_FUNCTION(14, ractor_local_value_set, ractor_local_value_set, 2),
216
0
    RB_BUILTIN_FUNCTION(15, ractor_local_value_store_if_absent, ractor_local_value_store_if_absent, 1),
217
0
    RB_BUILTIN_FUNCTION(16, _bi520, builtin_inline_class_520, 0),
218
0
    RB_BUILTIN_FUNCTION(17, _bi527, builtin_inline_class_527, 0),
219
0
    RB_BUILTIN_FUNCTION(18, ractor_require, ractor_require, 1),
220
0
    RB_BUILTIN_FUNCTION(19, _bi567, builtin_inline_class_567, 0),
221
0
    RB_BUILTIN_FUNCTION(20, ractor_value, ractor_value, 0),
222
0
    RB_BUILTIN_FUNCTION(21, ractor_monitor, ractor_monitor, 1),
223
0
    RB_BUILTIN_FUNCTION(22, ractor_unmonitor, ractor_unmonitor, 1),
224
0
    RB_BUILTIN_FUNCTION(23, _bi670, builtin_inline_class_670, 0),
225
0
    RB_BUILTIN_FUNCTION(24, _bi684, builtin_inline_class_684, 0),
226
0
    RB_BUILTIN_FUNCTION(25, _bi742, builtin_inline_class_742, 0),
227
0
    RB_BUILTIN_FUNCTION(26, _bi785, builtin_inline_class_785, 0),
228
0
    RB_BUILTIN_FUNCTION(27, _bi807, builtin_inline_class_807, 0),
229
0
    RB_BUILTIN_FUNCTION(28, _bi818, builtin_inline_class_818, 0),
230
0
    RB_BUILTIN_FUNCTION(29, _bi828, builtin_inline_class_828, 0),
231
0
    RB_BUILTIN_FUNCTION(30, _bi830, builtin_inline_class_830, 0),
232
0
    RB_BUILTIN_FUNCTION(-1, NULL, NULL, 0),
233
0
  };
234
235
  // arity_check
236
0
COMPILER_WARNING_PUSH
237
0
#if GCC_VERSION_SINCE(5, 1, 0) || defined __clang__
238
0
COMPILER_WARNING_ERROR(-Wincompatible-pointer-types)
239
0
#endif
240
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_232);
241
0
  if (0) rb_builtin_function_check_arity4(ractor_create);
242
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_245);
243
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_259);
244
0
  if (0) rb_builtin_function_check_arity1(ractor_select_internal);
245
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_375);
246
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_376);
247
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_377);
248
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_378);
249
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_388);
250
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_419);
251
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_461);
252
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_465);
253
0
  if (0) rb_builtin_function_check_arity1(ractor_local_value);
254
0
  if (0) rb_builtin_function_check_arity2(ractor_local_value_set);
255
0
  if (0) rb_builtin_function_check_arity1(ractor_local_value_store_if_absent);
256
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_520);
257
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_527);
258
0
  if (0) rb_builtin_function_check_arity1(ractor_require);
259
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_567);
260
0
  if (0) rb_builtin_function_check_arity0(ractor_value);
261
0
  if (0) rb_builtin_function_check_arity1(ractor_monitor);
262
0
  if (0) rb_builtin_function_check_arity1(ractor_unmonitor);
263
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_670);
264
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_684);
265
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_742);
266
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_785);
267
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_807);
268
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_818);
269
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_828);
270
0
  if (0) rb_builtin_function_check_arity0(builtin_inline_class_830);
271
0
COMPILER_WARNING_POP
272
273
  // load
274
0
  rb_load_with_builtin_functions("ractor", ractor_table);
275
0
}