debase-ruby_core_source 3.3.6 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of debase-ruby_core_source might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.ruby-version +1 -0
- data/CHANGELOG.md +6 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/builtin.h +7 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/darray.h +1 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/id.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/insns.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/insns_info.inc +310 -175
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/basic_operators.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/bits.h +82 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/encoding.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/error.h +26 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/fixnum.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/gc.h +14 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/imemo.h +6 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/io.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/parse.h +2 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/proc.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/ractor.h +4 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/sanitizers.h +31 -39
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/string.h +22 -10
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/thread.h +23 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/vm.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/method.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/optunifs.inc +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/parse.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/ast.h +427 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/defines.h +8 -7
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/diagnostic.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/extension.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/prism.h +47 -11
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/version.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism_compile.h +5 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/ractor_core.h +6 -6
- data/lib/debase/ruby_core_source/ruby-3.4.0/revision.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/rubyparser.h +3 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/thread_pthread.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/version.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm.inc +151 -88
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_core.h +40 -12
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_sync.h +3 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vmtc.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/yjit.h +1 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- metadata +147 -293
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/id.h +0 -343
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/array.h +0 -151
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/basic_operators.h +0 -63
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/bits.h +0 -568
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/class.h +0 -283
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/error.h +0 -216
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/fixnum.h +0 -184
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/gc.h +0 -334
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/hash.h +0 -191
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/imemo.h +0 -260
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/io.h +0 -140
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/parse.h +0 -117
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/ractor.h +0 -6
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/sanitizers.h +0 -297
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/string.h +0 -182
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/thread.h +0 -79
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/internal/vm.h +0 -137
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/method.h +0 -255
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/ast.h +0 -6245
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/defines.h +0 -206
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/diagnostic.h +0 -433
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/extension.h +0 -19
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/node.h +0 -150
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/options.h +0 -305
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/parser.h +0 -891
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/static_literals.h +0 -120
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_char.h +0 -205
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_constant_pool.h +0 -226
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_integer.h +0 -119
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_newline_list.h +0 -102
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string.h +0 -174
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism/version.h +0 -29
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/prism_compile.h +0 -88
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/ractor_core.h +0 -393
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/rubyparser.h +0 -1430
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/shape.h +0 -233
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/thread_pthread.h +0 -166
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_core.h +0 -2236
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +0 -40
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +0 -63
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +0 -142
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +0 -791
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +0 -17
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/id_table.h +0 -39
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +0 -244
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +0 -65
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +0 -29
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +0 -34
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +0 -107
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +0 -29
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +0 -35
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +0 -16
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +0 -19
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +0 -18
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +0 -21
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +0 -33
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +0 -38
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +0 -47
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +0 -18
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +0 -16
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +0 -23
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +0 -19
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +0 -274
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +0 -63
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +0 -30
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +0 -124
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +0 -17
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +0 -40
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +0 -71
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +0 -28
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +0 -102
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +0 -23
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +0 -24
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +0 -11
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +0 -16
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +0 -127
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +0 -45
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +0 -34
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +0 -23
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +0 -27
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +0 -72
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +0 -16
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal.h +0 -108
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/iseq.h +0 -340
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node.h +0 -111
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +0 -162
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +0 -106
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +0 -283
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +0 -163
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +0 -34
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +0 -218
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +0 -97
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +0 -29
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +0 -32
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +0 -46
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +0 -14
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +0 -23
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +0 -21
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +0 -124
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +0 -67
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/addr2line.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/check_type/check_type.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/container_of/container_of.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/list/list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ccan/str/str.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/constant.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/debug_counter.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/dln.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/encindex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/eval_intern.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/hrtime.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/id_table.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/array.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/bignum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/class.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/cmdlineopt.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compar.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compile.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/compilers.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/complex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/cont.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/dir.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/enumerator.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/eval.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/file.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/internal/hash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/inits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/load.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/loadpath.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/math.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/missing.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/numeric.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/object.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/process.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/random.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/range.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/rational.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/re.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/ruby_parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/serial.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/signal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/static_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/struct.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/symbol.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/time.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/transcode.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/util.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/variable.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal/warnings.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/internal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/iseq.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/known_errors.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/node_name.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/optinsn.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_bits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/parser_value.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/encoding.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/options.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/pack.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/prettyprint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/regexp.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/static_literals.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_buffer.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_char.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_integer.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_memchr.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_newline_list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/prism/util/pm_string.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/probes_helper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/regenc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/regint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/regparse.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/rjit.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/rjit_c.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ruby_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/ruby_atomic.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/shape.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/siphash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/symbol.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/thread_none.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/thread_win32.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/timev.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/transcode_data.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/variable.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_call_iseq_optimized.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_callinfo.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_debug.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_exec.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0}/vm_insnhelper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0}/vm_opts.h +0 -0
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
#ifndef RUBY_METHOD_H
|
|
2
|
-
#define RUBY_METHOD_H 1
|
|
3
|
-
/**********************************************************************
|
|
4
|
-
|
|
5
|
-
method.h -
|
|
6
|
-
|
|
7
|
-
$Author$
|
|
8
|
-
created at: Wed Jul 15 20:02:33 2009
|
|
9
|
-
|
|
10
|
-
Copyright (C) 2009 Koichi Sasada
|
|
11
|
-
|
|
12
|
-
**********************************************************************/
|
|
13
|
-
|
|
14
|
-
#include "internal.h"
|
|
15
|
-
#include "internal/imemo.h"
|
|
16
|
-
#include "internal/compilers.h"
|
|
17
|
-
#include "internal/static_assert.h"
|
|
18
|
-
|
|
19
|
-
#ifndef END_OF_ENUMERATION
|
|
20
|
-
# if defined(__GNUC__) &&! defined(__STRICT_ANSI__)
|
|
21
|
-
# define END_OF_ENUMERATION(key)
|
|
22
|
-
# else
|
|
23
|
-
# define END_OF_ENUMERATION(key) END_OF_##key##_PLACEHOLDER = 0
|
|
24
|
-
# endif
|
|
25
|
-
#endif
|
|
26
|
-
|
|
27
|
-
/* cref */
|
|
28
|
-
|
|
29
|
-
typedef enum {
|
|
30
|
-
METHOD_VISI_UNDEF = 0x00,
|
|
31
|
-
METHOD_VISI_PUBLIC = 0x01,
|
|
32
|
-
METHOD_VISI_PRIVATE = 0x02,
|
|
33
|
-
METHOD_VISI_PROTECTED = 0x03,
|
|
34
|
-
|
|
35
|
-
METHOD_VISI_MASK = 0x03
|
|
36
|
-
} rb_method_visibility_t;
|
|
37
|
-
|
|
38
|
-
typedef struct rb_scope_visi_struct {
|
|
39
|
-
BITFIELD(rb_method_visibility_t, method_visi, 3);
|
|
40
|
-
unsigned int module_func : 1;
|
|
41
|
-
} rb_scope_visibility_t;
|
|
42
|
-
|
|
43
|
-
/*! CREF (Class REFerence) */
|
|
44
|
-
typedef struct rb_cref_struct {
|
|
45
|
-
VALUE flags;
|
|
46
|
-
VALUE refinements;
|
|
47
|
-
VALUE klass_or_self;
|
|
48
|
-
struct rb_cref_struct * next;
|
|
49
|
-
const rb_scope_visibility_t scope_visi;
|
|
50
|
-
} rb_cref_t;
|
|
51
|
-
|
|
52
|
-
/* method data type */
|
|
53
|
-
|
|
54
|
-
typedef struct rb_method_entry_struct {
|
|
55
|
-
VALUE flags;
|
|
56
|
-
VALUE defined_class;
|
|
57
|
-
struct rb_method_definition_struct * const def;
|
|
58
|
-
ID called_id;
|
|
59
|
-
VALUE owner;
|
|
60
|
-
} rb_method_entry_t;
|
|
61
|
-
|
|
62
|
-
typedef struct rb_callable_method_entry_struct { /* same fields with rb_method_entry_t */
|
|
63
|
-
VALUE flags;
|
|
64
|
-
const VALUE defined_class;
|
|
65
|
-
struct rb_method_definition_struct * const def;
|
|
66
|
-
ID called_id;
|
|
67
|
-
const VALUE owner;
|
|
68
|
-
} rb_callable_method_entry_t;
|
|
69
|
-
|
|
70
|
-
#define METHOD_ENTRY_VISI(me) (rb_method_visibility_t)(((me)->flags & (IMEMO_FL_USER0 | IMEMO_FL_USER1)) >> (IMEMO_FL_USHIFT+0))
|
|
71
|
-
#define METHOD_ENTRY_BASIC(me) (int) (((me)->flags & (IMEMO_FL_USER2 )) >> (IMEMO_FL_USHIFT+2))
|
|
72
|
-
#define METHOD_ENTRY_COMPLEMENTED(me) ((me)->flags & IMEMO_FL_USER3)
|
|
73
|
-
#define METHOD_ENTRY_COMPLEMENTED_SET(me) ((me)->flags |= IMEMO_FL_USER3)
|
|
74
|
-
#define METHOD_ENTRY_CACHED(me) ((me)->flags & IMEMO_FL_USER4)
|
|
75
|
-
#define METHOD_ENTRY_CACHED_SET(me) ((me)->flags |= IMEMO_FL_USER4)
|
|
76
|
-
#define METHOD_ENTRY_INVALIDATED(me) ((me)->flags & IMEMO_FL_USER5)
|
|
77
|
-
#define METHOD_ENTRY_INVALIDATED_SET(me) ((me)->flags |= IMEMO_FL_USER5)
|
|
78
|
-
|
|
79
|
-
static inline void
|
|
80
|
-
METHOD_ENTRY_VISI_SET(rb_method_entry_t *me, rb_method_visibility_t visi)
|
|
81
|
-
{
|
|
82
|
-
VM_ASSERT((int)visi >= 0 && visi <= 3);
|
|
83
|
-
me->flags = (me->flags & ~(IMEMO_FL_USER0 | IMEMO_FL_USER1)) | (visi << (IMEMO_FL_USHIFT+0));
|
|
84
|
-
}
|
|
85
|
-
static inline void
|
|
86
|
-
METHOD_ENTRY_BASIC_SET(rb_method_entry_t *me, unsigned int basic)
|
|
87
|
-
{
|
|
88
|
-
VM_ASSERT(basic <= 1);
|
|
89
|
-
me->flags = (me->flags & ~(IMEMO_FL_USER2 )) | (basic << (IMEMO_FL_USHIFT+2));
|
|
90
|
-
}
|
|
91
|
-
static inline void
|
|
92
|
-
METHOD_ENTRY_FLAGS_SET(rb_method_entry_t *me, rb_method_visibility_t visi, unsigned int basic)
|
|
93
|
-
{
|
|
94
|
-
VM_ASSERT((int)visi >= 0 && visi <= 3);
|
|
95
|
-
VM_ASSERT(basic <= 1);
|
|
96
|
-
me->flags =
|
|
97
|
-
(me->flags & ~(IMEMO_FL_USER0|IMEMO_FL_USER1|IMEMO_FL_USER2)) |
|
|
98
|
-
((visi << (IMEMO_FL_USHIFT+0)) | (basic << (IMEMO_FL_USHIFT+2)));
|
|
99
|
-
}
|
|
100
|
-
static inline void
|
|
101
|
-
METHOD_ENTRY_FLAGS_COPY(rb_method_entry_t *dst, const rb_method_entry_t *src)
|
|
102
|
-
{
|
|
103
|
-
dst->flags =
|
|
104
|
-
(dst->flags & ~(IMEMO_FL_USER0|IMEMO_FL_USER1|IMEMO_FL_USER2
|
|
105
|
-
|IMEMO_FL_USER3)) |
|
|
106
|
-
(src->flags & (IMEMO_FL_USER0|IMEMO_FL_USER1|IMEMO_FL_USER2|IMEMO_FL_USER3));
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
typedef enum {
|
|
110
|
-
VM_METHOD_TYPE_ISEQ, /*!< Ruby method */
|
|
111
|
-
VM_METHOD_TYPE_CFUNC, /*!< C method */
|
|
112
|
-
VM_METHOD_TYPE_ATTRSET, /*!< attr_writer or attr_accessor */
|
|
113
|
-
VM_METHOD_TYPE_IVAR, /*!< attr_reader or attr_accessor */
|
|
114
|
-
VM_METHOD_TYPE_BMETHOD,
|
|
115
|
-
VM_METHOD_TYPE_ZSUPER,
|
|
116
|
-
VM_METHOD_TYPE_ALIAS,
|
|
117
|
-
VM_METHOD_TYPE_UNDEF,
|
|
118
|
-
VM_METHOD_TYPE_NOTIMPLEMENTED,
|
|
119
|
-
VM_METHOD_TYPE_OPTIMIZED, /*!< Kernel#send, Proc#call, etc */
|
|
120
|
-
VM_METHOD_TYPE_MISSING, /*!< wrapper for method_missing(id) */
|
|
121
|
-
VM_METHOD_TYPE_REFINED, /*!< refinement */
|
|
122
|
-
|
|
123
|
-
END_OF_ENUMERATION(VM_METHOD_TYPE)
|
|
124
|
-
} rb_method_type_t;
|
|
125
|
-
#define VM_METHOD_TYPE_MINIMUM_BITS 4
|
|
126
|
-
STATIC_ASSERT(VM_METHOD_TYPE_MINIMUM_BITS,
|
|
127
|
-
VM_METHOD_TYPE_REFINED <= (1<<VM_METHOD_TYPE_MINIMUM_BITS));
|
|
128
|
-
|
|
129
|
-
#ifndef rb_iseq_t
|
|
130
|
-
typedef struct rb_iseq_struct rb_iseq_t;
|
|
131
|
-
#define rb_iseq_t rb_iseq_t
|
|
132
|
-
#endif
|
|
133
|
-
|
|
134
|
-
typedef struct rb_method_iseq_struct {
|
|
135
|
-
const rb_iseq_t * iseqptr; /*!< iseq pointer, should be separated from iseqval */
|
|
136
|
-
rb_cref_t * cref; /*!< class reference, should be marked */
|
|
137
|
-
} rb_method_iseq_t; /* check rb_add_method_iseq() when modify the fields */
|
|
138
|
-
|
|
139
|
-
typedef VALUE (*rb_cfunc_t)(ANYARGS);
|
|
140
|
-
typedef struct rb_method_cfunc_struct {
|
|
141
|
-
rb_cfunc_t func;
|
|
142
|
-
VALUE (*invoker)(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS));
|
|
143
|
-
int argc;
|
|
144
|
-
} rb_method_cfunc_t;
|
|
145
|
-
|
|
146
|
-
typedef struct rb_method_attr_struct {
|
|
147
|
-
ID id;
|
|
148
|
-
VALUE location; /* should be marked */
|
|
149
|
-
} rb_method_attr_t;
|
|
150
|
-
|
|
151
|
-
typedef struct rb_method_alias_struct {
|
|
152
|
-
struct rb_method_entry_struct * original_me; /* original_me->klass is original owner */
|
|
153
|
-
} rb_method_alias_t;
|
|
154
|
-
|
|
155
|
-
typedef struct rb_method_refined_struct {
|
|
156
|
-
struct rb_method_entry_struct * orig_me;
|
|
157
|
-
} rb_method_refined_t;
|
|
158
|
-
|
|
159
|
-
typedef struct rb_method_bmethod_struct {
|
|
160
|
-
VALUE proc; /* should be marked */
|
|
161
|
-
struct rb_hook_list_struct *hooks;
|
|
162
|
-
VALUE defined_ractor;
|
|
163
|
-
} rb_method_bmethod_t;
|
|
164
|
-
|
|
165
|
-
enum method_optimized_type {
|
|
166
|
-
OPTIMIZED_METHOD_TYPE_SEND,
|
|
167
|
-
OPTIMIZED_METHOD_TYPE_CALL,
|
|
168
|
-
OPTIMIZED_METHOD_TYPE_BLOCK_CALL,
|
|
169
|
-
OPTIMIZED_METHOD_TYPE_STRUCT_AREF,
|
|
170
|
-
OPTIMIZED_METHOD_TYPE_STRUCT_ASET,
|
|
171
|
-
OPTIMIZED_METHOD_TYPE__MAX
|
|
172
|
-
};
|
|
173
|
-
|
|
174
|
-
typedef struct rb_method_optimized {
|
|
175
|
-
enum method_optimized_type type;
|
|
176
|
-
unsigned int index;
|
|
177
|
-
} rb_method_optimized_t;
|
|
178
|
-
|
|
179
|
-
struct rb_method_definition_struct {
|
|
180
|
-
BITFIELD(rb_method_type_t, type, VM_METHOD_TYPE_MINIMUM_BITS);
|
|
181
|
-
unsigned int iseq_overload: 1;
|
|
182
|
-
unsigned int no_redef_warning: 1;
|
|
183
|
-
unsigned int aliased : 1;
|
|
184
|
-
int reference_count : 28;
|
|
185
|
-
|
|
186
|
-
union {
|
|
187
|
-
rb_method_iseq_t iseq;
|
|
188
|
-
rb_method_cfunc_t cfunc;
|
|
189
|
-
rb_method_attr_t attr;
|
|
190
|
-
rb_method_alias_t alias;
|
|
191
|
-
rb_method_refined_t refined;
|
|
192
|
-
rb_method_bmethod_t bmethod;
|
|
193
|
-
rb_method_optimized_t optimized;
|
|
194
|
-
} body;
|
|
195
|
-
|
|
196
|
-
ID original_id;
|
|
197
|
-
uintptr_t method_serial;
|
|
198
|
-
};
|
|
199
|
-
|
|
200
|
-
struct rb_id_table;
|
|
201
|
-
|
|
202
|
-
typedef struct rb_method_definition_struct rb_method_definition_t;
|
|
203
|
-
STATIC_ASSERT(sizeof_method_def, offsetof(rb_method_definition_t, body) <= 8);
|
|
204
|
-
|
|
205
|
-
#define UNDEFINED_METHOD_ENTRY_P(me) (!(me) || !(me)->def || (me)->def->type == VM_METHOD_TYPE_UNDEF)
|
|
206
|
-
#define UNDEFINED_REFINED_METHOD_P(def) \
|
|
207
|
-
((def)->type == VM_METHOD_TYPE_REFINED && \
|
|
208
|
-
UNDEFINED_METHOD_ENTRY_P((def)->body.refined.orig_me))
|
|
209
|
-
|
|
210
|
-
void rb_add_method(VALUE klass, ID mid, rb_method_type_t type, void *option, rb_method_visibility_t visi);
|
|
211
|
-
void rb_add_method_cfunc(VALUE klass, ID mid, VALUE (*func)(ANYARGS), int argc, rb_method_visibility_t visi);
|
|
212
|
-
void rb_add_method_iseq(VALUE klass, ID mid, const rb_iseq_t *iseq, rb_cref_t *cref, rb_method_visibility_t visi);
|
|
213
|
-
void rb_add_method_optimized(VALUE klass, ID mid, enum method_optimized_type, unsigned int index, rb_method_visibility_t visi);
|
|
214
|
-
void rb_add_refined_method_entry(VALUE refined_class, ID mid);
|
|
215
|
-
|
|
216
|
-
rb_method_entry_t *rb_method_entry_set(VALUE klass, ID mid, const rb_method_entry_t *, rb_method_visibility_t noex);
|
|
217
|
-
rb_method_entry_t *rb_method_entry_create(ID called_id, VALUE klass, rb_method_visibility_t visi, rb_method_definition_t *def);
|
|
218
|
-
|
|
219
|
-
const rb_method_entry_t *rb_method_entry_at(VALUE obj, ID id);
|
|
220
|
-
|
|
221
|
-
const rb_method_entry_t *rb_method_entry(VALUE klass, ID id);
|
|
222
|
-
const rb_method_entry_t *rb_method_entry_with_refinements(VALUE klass, ID id, VALUE *defined_class);
|
|
223
|
-
const rb_method_entry_t *rb_method_entry_without_refinements(VALUE klass, ID id, VALUE *defined_class);
|
|
224
|
-
const rb_method_entry_t *rb_resolve_refined_method(VALUE refinements, const rb_method_entry_t *me);
|
|
225
|
-
RUBY_SYMBOL_EXPORT_BEGIN
|
|
226
|
-
const rb_method_entry_t *rb_resolve_me_location(const rb_method_entry_t *, VALUE[5]);
|
|
227
|
-
RUBY_SYMBOL_EXPORT_END
|
|
228
|
-
|
|
229
|
-
const rb_callable_method_entry_t *rb_callable_method_entry(VALUE klass, ID id);
|
|
230
|
-
const rb_callable_method_entry_t *rb_callable_method_entry_or_negative(VALUE klass, ID id);
|
|
231
|
-
const rb_callable_method_entry_t *rb_callable_method_entry_with_refinements(VALUE klass, ID id, VALUE *defined_class);
|
|
232
|
-
const rb_callable_method_entry_t *rb_callable_method_entry_without_refinements(VALUE klass, ID id, VALUE *defined_class);
|
|
233
|
-
|
|
234
|
-
int rb_method_entry_arity(const rb_method_entry_t *me);
|
|
235
|
-
int rb_method_entry_eq(const rb_method_entry_t *m1, const rb_method_entry_t *m2);
|
|
236
|
-
st_index_t rb_hash_method_entry(st_index_t hash, const rb_method_entry_t *me);
|
|
237
|
-
|
|
238
|
-
VALUE rb_method_entry_location(const rb_method_entry_t *me);
|
|
239
|
-
|
|
240
|
-
void rb_free_method_entry(const rb_method_entry_t *me);
|
|
241
|
-
|
|
242
|
-
const rb_method_entry_t *rb_method_entry_clone(const rb_method_entry_t *me);
|
|
243
|
-
const rb_callable_method_entry_t *rb_method_entry_complement_defined_class(const rb_method_entry_t *src_me, ID called_id, VALUE defined_class);
|
|
244
|
-
void rb_method_entry_copy(rb_method_entry_t *dst, const rb_method_entry_t *src);
|
|
245
|
-
|
|
246
|
-
void rb_method_table_insert(VALUE klass, struct rb_id_table *table, ID method_id, const rb_method_entry_t *me);
|
|
247
|
-
|
|
248
|
-
void rb_scope_visibility_set(rb_method_visibility_t);
|
|
249
|
-
|
|
250
|
-
VALUE rb_unnamed_parameters(int arity);
|
|
251
|
-
|
|
252
|
-
void rb_clear_method_cache(VALUE klass_or_module, ID mid);
|
|
253
|
-
void rb_clear_all_refinement_method_cache(void);
|
|
254
|
-
|
|
255
|
-
#endif /* RUBY_METHOD_H */
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/* -*- C -*- */
|
|
2
|
-
|
|
3
|
-
/* This is an auto-generated file and is a part of the programming language
|
|
4
|
-
* Ruby. The person who created a program to generate this file (``I''
|
|
5
|
-
* hereafter) would like to refrain from defining licensing of this generated
|
|
6
|
-
* source code.
|
|
7
|
-
*
|
|
8
|
-
* This file consists of many small parts of codes copyrighted by each author,
|
|
9
|
-
* not only the ``I'' person. Those original authors agree with some
|
|
10
|
-
* open-source license. I believe that the license we agree is the condition
|
|
11
|
-
* mentioned in the file COPYING. It states "4. You may modify and include
|
|
12
|
-
* the part of the software into any other software ...". But the problem is,
|
|
13
|
-
* the license never makes it clear if such modified parts still remain in the
|
|
14
|
-
* same license, or not. The fact that we agree with the source code's
|
|
15
|
-
* licensing terms does not automatically define that of generated ones. This
|
|
16
|
-
* is the reason why this file is under an unclear situation. All what I know
|
|
17
|
-
* is that above provision guarantees this file to exist.
|
|
18
|
-
*
|
|
19
|
-
* Please let me hesitate to declare something about this nuanced contract. I
|
|
20
|
-
* am not in the position to take over other authors' license to merge into my
|
|
21
|
-
* one. Changing them to (say) GPLv3 is not doable by myself. Perhaps someday
|
|
22
|
-
* it might turn out to be okay to say this file is under a license. I wish
|
|
23
|
-
* the situation would become more clear in the future. */
|
|
24
|
-
|
|
25
|
-
/*******************************************************************/
|
|
26
|
-
/*******************************************************************/
|
|
27
|
-
/*******************************************************************/
|
|
28
|
-
/**
|
|
29
|
-
This file is for threaded code.
|
|
30
|
-
|
|
31
|
-
----
|
|
32
|
-
This file is auto generated by insns2vm.rb
|
|
33
|
-
DO NOT TOUCH!
|
|
34
|
-
|
|
35
|
-
If you want to fix something, you must edit "tool/ruby_vm/views/optunifs.inc.erb"
|
|
36
|
-
or tool/insns2vm.rb
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
|
-
/* Let .bss section automatically initialize this variable */
|
|
40
|
-
/* cf. Section 6.7.8 of ISO/IEC 9899:1999 */
|
|
41
|
-
static const int *const *const unified_insns_data[212];
|
|
42
|
-
|
|
43
|
-
ASSERT_VM_INSTRUCTION_SIZE(unified_insns_data);
|
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
/* A Bison parser, made by Lrama 0.6.9. */
|
|
2
|
-
|
|
3
|
-
/* Bison interface for Yacc-like parsers in C
|
|
4
|
-
|
|
5
|
-
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
|
|
6
|
-
Inc.
|
|
7
|
-
|
|
8
|
-
This program is free software: you can redistribute it and/or modify
|
|
9
|
-
it under the terms of the GNU General Public License as published by
|
|
10
|
-
the Free Software Foundation, either version 3 of the License, or
|
|
11
|
-
(at your option) any later version.
|
|
12
|
-
|
|
13
|
-
This program is distributed in the hope that it will be useful,
|
|
14
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
-
GNU General Public License for more details.
|
|
17
|
-
|
|
18
|
-
You should have received a copy of the GNU General Public License
|
|
19
|
-
along with this program. If not, see <https://www.gnu.org/licenses/>. */
|
|
20
|
-
|
|
21
|
-
/* As a special exception, you may create a larger work that contains
|
|
22
|
-
part or all of the Bison parser skeleton and distribute that work
|
|
23
|
-
under terms of your choice, so long as that work isn't itself a
|
|
24
|
-
parser generator using the skeleton or a modified version thereof
|
|
25
|
-
as a parser skeleton. Alternatively, if you modify or redistribute
|
|
26
|
-
the parser skeleton itself, you may (at your option) remove this
|
|
27
|
-
special exception, which will cause the skeleton and the resulting
|
|
28
|
-
Bison output files to be licensed under the GNU General Public
|
|
29
|
-
License without this special exception.
|
|
30
|
-
|
|
31
|
-
This special exception was added by the Free Software Foundation in
|
|
32
|
-
version 2.2 of Bison. */
|
|
33
|
-
|
|
34
|
-
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
|
|
35
|
-
especially those whose name start with YY_ or yy_. They are
|
|
36
|
-
private implementation details that can be changed or removed. */
|
|
37
|
-
#ifndef YY_YY_PARSE_H_INCLUDED
|
|
38
|
-
# define YY_YY_PARSE_H_INCLUDED
|
|
39
|
-
/* Debug traces. */
|
|
40
|
-
#ifndef YYDEBUG
|
|
41
|
-
# define YYDEBUG 0
|
|
42
|
-
#endif
|
|
43
|
-
#if YYDEBUG && !defined(yydebug)
|
|
44
|
-
extern int yydebug;
|
|
45
|
-
#endif
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
/* Token kinds. */
|
|
49
|
-
#ifndef YYTOKENTYPE
|
|
50
|
-
# define YYTOKENTYPE
|
|
51
|
-
enum yytokentype
|
|
52
|
-
{
|
|
53
|
-
YYEMPTY = -2,
|
|
54
|
-
END_OF_INPUT = 0, /* "end-of-input" */
|
|
55
|
-
YYerror = 256, /* error */
|
|
56
|
-
YYUNDEF = 257, /* "invalid token" */
|
|
57
|
-
keyword_class = 258, /* "'class'" */
|
|
58
|
-
keyword_module = 259, /* "'module'" */
|
|
59
|
-
keyword_def = 260, /* "'def'" */
|
|
60
|
-
keyword_undef = 261, /* "'undef'" */
|
|
61
|
-
keyword_begin = 262, /* "'begin'" */
|
|
62
|
-
keyword_rescue = 263, /* "'rescue'" */
|
|
63
|
-
keyword_ensure = 264, /* "'ensure'" */
|
|
64
|
-
keyword_end = 265, /* "'end'" */
|
|
65
|
-
keyword_if = 266, /* "'if'" */
|
|
66
|
-
keyword_unless = 267, /* "'unless'" */
|
|
67
|
-
keyword_then = 268, /* "'then'" */
|
|
68
|
-
keyword_elsif = 269, /* "'elsif'" */
|
|
69
|
-
keyword_else = 270, /* "'else'" */
|
|
70
|
-
keyword_case = 271, /* "'case'" */
|
|
71
|
-
keyword_when = 272, /* "'when'" */
|
|
72
|
-
keyword_while = 273, /* "'while'" */
|
|
73
|
-
keyword_until = 274, /* "'until'" */
|
|
74
|
-
keyword_for = 275, /* "'for'" */
|
|
75
|
-
keyword_break = 276, /* "'break'" */
|
|
76
|
-
keyword_next = 277, /* "'next'" */
|
|
77
|
-
keyword_redo = 278, /* "'redo'" */
|
|
78
|
-
keyword_retry = 279, /* "'retry'" */
|
|
79
|
-
keyword_in = 280, /* "'in'" */
|
|
80
|
-
keyword_do = 281, /* "'do'" */
|
|
81
|
-
keyword_do_cond = 282, /* "'do' for condition" */
|
|
82
|
-
keyword_do_block = 283, /* "'do' for block" */
|
|
83
|
-
keyword_do_LAMBDA = 284, /* "'do' for lambda" */
|
|
84
|
-
keyword_return = 285, /* "'return'" */
|
|
85
|
-
keyword_yield = 286, /* "'yield'" */
|
|
86
|
-
keyword_super = 287, /* "'super'" */
|
|
87
|
-
keyword_self = 288, /* "'self'" */
|
|
88
|
-
keyword_nil = 289, /* "'nil'" */
|
|
89
|
-
keyword_true = 290, /* "'true'" */
|
|
90
|
-
keyword_false = 291, /* "'false'" */
|
|
91
|
-
keyword_and = 292, /* "'and'" */
|
|
92
|
-
keyword_or = 293, /* "'or'" */
|
|
93
|
-
keyword_not = 294, /* "'not'" */
|
|
94
|
-
modifier_if = 295, /* "'if' modifier" */
|
|
95
|
-
modifier_unless = 296, /* "'unless' modifier" */
|
|
96
|
-
modifier_while = 297, /* "'while' modifier" */
|
|
97
|
-
modifier_until = 298, /* "'until' modifier" */
|
|
98
|
-
modifier_rescue = 299, /* "'rescue' modifier" */
|
|
99
|
-
keyword_alias = 300, /* "'alias'" */
|
|
100
|
-
keyword_defined = 301, /* "'defined?'" */
|
|
101
|
-
keyword_BEGIN = 302, /* "'BEGIN'" */
|
|
102
|
-
keyword_END = 303, /* "'END'" */
|
|
103
|
-
keyword__LINE__ = 304, /* "'__LINE__'" */
|
|
104
|
-
keyword__FILE__ = 305, /* "'__FILE__'" */
|
|
105
|
-
keyword__ENCODING__ = 306, /* "'__ENCODING__'" */
|
|
106
|
-
tIDENTIFIER = 307, /* "local variable or method" */
|
|
107
|
-
tFID = 308, /* "method" */
|
|
108
|
-
tGVAR = 309, /* "global variable" */
|
|
109
|
-
tIVAR = 310, /* "instance variable" */
|
|
110
|
-
tCONSTANT = 311, /* "constant" */
|
|
111
|
-
tCVAR = 312, /* "class variable" */
|
|
112
|
-
tLABEL = 313, /* "label" */
|
|
113
|
-
tINTEGER = 314, /* "integer literal" */
|
|
114
|
-
tFLOAT = 315, /* "float literal" */
|
|
115
|
-
tRATIONAL = 316, /* "rational literal" */
|
|
116
|
-
tIMAGINARY = 317, /* "imaginary literal" */
|
|
117
|
-
tCHAR = 318, /* "char literal" */
|
|
118
|
-
tNTH_REF = 319, /* "numbered reference" */
|
|
119
|
-
tBACK_REF = 320, /* "back reference" */
|
|
120
|
-
tSTRING_CONTENT = 321, /* "literal content" */
|
|
121
|
-
tREGEXP_END = 322, /* tREGEXP_END */
|
|
122
|
-
tDUMNY_END = 323, /* "dummy end" */
|
|
123
|
-
tSP = 324, /* "escaped space" */
|
|
124
|
-
tUPLUS = 132, /* "unary+" */
|
|
125
|
-
tUMINUS = 133, /* "unary-" */
|
|
126
|
-
tPOW = 134, /* "**" */
|
|
127
|
-
tCMP = 135, /* "<=>" */
|
|
128
|
-
tEQ = 140, /* "==" */
|
|
129
|
-
tEQQ = 141, /* "===" */
|
|
130
|
-
tNEQ = 142, /* "!=" */
|
|
131
|
-
tGEQ = 139, /* ">=" */
|
|
132
|
-
tLEQ = 138, /* "<=" */
|
|
133
|
-
tANDOP = 148, /* "&&" */
|
|
134
|
-
tOROP = 149, /* "||" */
|
|
135
|
-
tMATCH = 143, /* "=~" */
|
|
136
|
-
tNMATCH = 144, /* "!~" */
|
|
137
|
-
tDOT2 = 128, /* ".." */
|
|
138
|
-
tDOT3 = 129, /* "..." */
|
|
139
|
-
tBDOT2 = 130, /* "(.." */
|
|
140
|
-
tBDOT3 = 131, /* "(..." */
|
|
141
|
-
tAREF = 145, /* "[]" */
|
|
142
|
-
tASET = 146, /* "[]=" */
|
|
143
|
-
tLSHFT = 136, /* "<<" */
|
|
144
|
-
tRSHFT = 137, /* ">>" */
|
|
145
|
-
tANDDOT = 150, /* "&." */
|
|
146
|
-
tCOLON2 = 147, /* "::" */
|
|
147
|
-
tCOLON3 = 325, /* ":: at EXPR_BEG" */
|
|
148
|
-
tOP_ASGN = 326, /* "operator-assignment" */
|
|
149
|
-
tASSOC = 327, /* "=>" */
|
|
150
|
-
tLPAREN = 328, /* "(" */
|
|
151
|
-
tLPAREN_ARG = 329, /* "( arg" */
|
|
152
|
-
tRPAREN = 330, /* ")" */
|
|
153
|
-
tLBRACK = 331, /* "[" */
|
|
154
|
-
tLBRACE = 332, /* "{" */
|
|
155
|
-
tLBRACE_ARG = 333, /* "{ arg" */
|
|
156
|
-
tSTAR = 334, /* "*" */
|
|
157
|
-
tDSTAR = 335, /* "**arg" */
|
|
158
|
-
tAMPER = 336, /* "&" */
|
|
159
|
-
tLAMBDA = 337, /* "->" */
|
|
160
|
-
tSYMBEG = 338, /* "symbol literal" */
|
|
161
|
-
tSTRING_BEG = 339, /* "string literal" */
|
|
162
|
-
tXSTRING_BEG = 340, /* "backtick literal" */
|
|
163
|
-
tREGEXP_BEG = 341, /* "regexp literal" */
|
|
164
|
-
tWORDS_BEG = 342, /* "word list" */
|
|
165
|
-
tQWORDS_BEG = 343, /* "verbatim word list" */
|
|
166
|
-
tSYMBOLS_BEG = 344, /* "symbol list" */
|
|
167
|
-
tQSYMBOLS_BEG = 345, /* "verbatim symbol list" */
|
|
168
|
-
tSTRING_END = 346, /* "terminator" */
|
|
169
|
-
tSTRING_DEND = 347, /* "'}'" */
|
|
170
|
-
tSTRING_DBEG = 348, /* tSTRING_DBEG */
|
|
171
|
-
tSTRING_DVAR = 349, /* tSTRING_DVAR */
|
|
172
|
-
tLAMBEG = 350, /* tLAMBEG */
|
|
173
|
-
tLABEL_END = 351, /* tLABEL_END */
|
|
174
|
-
tIGNORED_NL = 352, /* tIGNORED_NL */
|
|
175
|
-
tCOMMENT = 353, /* tCOMMENT */
|
|
176
|
-
tEMBDOC_BEG = 354, /* tEMBDOC_BEG */
|
|
177
|
-
tEMBDOC = 355, /* tEMBDOC */
|
|
178
|
-
tEMBDOC_END = 356, /* tEMBDOC_END */
|
|
179
|
-
tHEREDOC_BEG = 357, /* tHEREDOC_BEG */
|
|
180
|
-
tHEREDOC_END = 358, /* tHEREDOC_END */
|
|
181
|
-
k__END__ = 359, /* k__END__ */
|
|
182
|
-
tLOWEST = 360, /* tLOWEST */
|
|
183
|
-
tUMINUS_NUM = 361, /* tUMINUS_NUM */
|
|
184
|
-
tLAST_TOKEN = 362 /* tLAST_TOKEN */
|
|
185
|
-
};
|
|
186
|
-
typedef enum yytokentype yytoken_kind_t;
|
|
187
|
-
#endif
|
|
188
|
-
|
|
189
|
-
/* Value type. */
|
|
190
|
-
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
|
191
|
-
union YYSTYPE
|
|
192
|
-
{
|
|
193
|
-
#line 2755 "parse.y"
|
|
194
|
-
|
|
195
|
-
NODE *node;
|
|
196
|
-
rb_node_fcall_t *node_fcall;
|
|
197
|
-
rb_node_args_t *node_args;
|
|
198
|
-
rb_node_args_aux_t *node_args_aux;
|
|
199
|
-
rb_node_opt_arg_t *node_opt_arg;
|
|
200
|
-
rb_node_kw_arg_t *node_kw_arg;
|
|
201
|
-
rb_node_block_pass_t *node_block_pass;
|
|
202
|
-
rb_node_masgn_t *node_masgn;
|
|
203
|
-
rb_node_def_temp_t *node_def_temp;
|
|
204
|
-
rb_node_exits_t *node_exits;
|
|
205
|
-
ID id;
|
|
206
|
-
int num;
|
|
207
|
-
st_table *tbl;
|
|
208
|
-
st_table *labels;
|
|
209
|
-
const struct vtable *vars;
|
|
210
|
-
struct rb_strterm_struct *strterm;
|
|
211
|
-
struct lex_context ctxt;
|
|
212
|
-
|
|
213
|
-
#line 214 "parse.h"
|
|
214
|
-
|
|
215
|
-
};
|
|
216
|
-
typedef union YYSTYPE YYSTYPE;
|
|
217
|
-
# define YYSTYPE_IS_TRIVIAL 1
|
|
218
|
-
# define YYSTYPE_IS_DECLARED 1
|
|
219
|
-
#endif
|
|
220
|
-
|
|
221
|
-
/* Location type. */
|
|
222
|
-
#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
|
|
223
|
-
typedef struct YYLTYPE YYLTYPE;
|
|
224
|
-
struct YYLTYPE
|
|
225
|
-
{
|
|
226
|
-
int first_line;
|
|
227
|
-
int first_column;
|
|
228
|
-
int last_line;
|
|
229
|
-
int last_column;
|
|
230
|
-
};
|
|
231
|
-
# define YYLTYPE_IS_DECLARED 1
|
|
232
|
-
# define YYLTYPE_IS_TRIVIAL 1
|
|
233
|
-
#endif
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
int yyparse (struct parser_params *p);
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
#endif /* !YY_YY_PARSE_H_INCLUDED */
|
|
243
|
-
|