debase-ruby_core_source 3.3.6 → 4.0.0.preview2
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.
- checksums.yaml +4 -4
- data/.ruby-version +1 -0
- data/CHANGELOG.md +10 -0
- data/Rakefile +3 -1
- data/debase-ruby_core_source.gemspec +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/builtin.h +7 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/darray.h +1 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/id.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/insns.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/insns_info.inc +310 -175
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/basic_operators.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/bits.h +82 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/encoding.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/error.h +26 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/fixnum.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/gc.h +14 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/imemo.h +6 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/io.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/parse.h +2 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/proc.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/ractor.h +4 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/sanitizers.h +31 -39
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/string.h +22 -10
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/thread.h +23 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/vm.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/method.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/optunifs.inc +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/parse.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/ast.h +427 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/defines.h +8 -7
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/diagnostic.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/extension.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/prism.h +47 -11
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/version.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism_compile.h +5 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/ractor_core.h +6 -6
- data/lib/debase/ruby_core_source/ruby-3.4.0-p-1/revision.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/rubyparser.h +3 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/thread_pthread.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/version.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vm.inc +151 -88
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vm_core.h +40 -12
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vm_sync.h +3 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vmtc.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/yjit.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/builtin.h +7 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/darray.h +101 -14
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/debug_counter.h +6 -4
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/dln.h +1 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/eval_intern.h +7 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/id.h +16 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/id_table.h +15 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/insns.inc +49 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/insns_info.inc +2432 -721
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/array.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/basic_operators.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/bignum.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/bits.h +82 -0
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/internal/box.h +81 -0
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/internal/class.h +805 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/cmdlineopt.h +3 -4
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/internal/concurrent_set.h +21 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/encoding.h +4 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/error.h +35 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/eval.h +8 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/fixnum.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/gc.h +54 -30
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/hash.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/imemo.h +94 -32
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/inits.h +4 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/io.h +30 -7
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/load.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/numeric.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/object.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/parse.h +18 -4
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/proc.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/ractor.h +4 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/re.h +7 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/sanitizers.h +88 -39
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/internal/set_table.h +70 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/signal.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/st.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/string.h +39 -18
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/struct.h +38 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/symbol.h +4 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/thread.h +42 -9
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/time.h +4 -1
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/variable.h +13 -11
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/internal/vm.h +6 -7
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal.h +0 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/iseq.h +19 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/known_errors.inc +103 -103
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/method.h +18 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/node.h +14 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/optunifs.inc +1 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/parse.h +37 -36
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/ast.h +2495 -507
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/defines.h +61 -7
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/diagnostic.h +31 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/extension.h +5 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/node.h +0 -21
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/options.h +186 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/parser.h +85 -40
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/prism.h +88 -16
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/prism/regexp.h +43 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/static_literals.h +3 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/util/pm_buffer.h +18 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/util/pm_char.h +1 -2
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/util/pm_constant_pool.h +0 -8
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/util/pm_integer.h +26 -15
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/util/pm_list.h +6 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/util/pm_newline_list.h +11 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/util/pm_string.h +39 -13
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism/version.h +3 -3
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/prism_compile.h +30 -12
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/ractor_core.h +47 -134
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/regenc.h +9 -4
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/regint.h +0 -5
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/regparse.h +2 -2
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/revision.h +5 -0
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/ruby_atomic.h +66 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/rubyparser.h +214 -250
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/shape.h +444 -0
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/symbol.h +8 -10
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/thread_pthread.h +36 -27
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/variable.h +8 -20
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vm.inc +884 -344
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vm_callinfo.h +110 -75
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vm_core.h +220 -106
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/vm_exec.h +15 -4
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vm_insnhelper.h +11 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vm_sync.h +23 -4
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-4.0.0-preview2}/vmtc.inc +42 -6
- data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/yjit.h +5 -3
- data/lib/debase/ruby_core_source/ruby-4.0.0-preview2/zjit.h +47 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- data/lib/debase/ruby_core_source.rb +4 -2
- data/test/deduce_source_dir_test.rb +31 -0
- metadata +307 -293
- 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/prism/regexp.h +0 -33
- 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/revision.h +0 -5
- 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-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_atomic.h +0 -23
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/addr2line.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ccan/check_type/check_type.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ccan/container_of/container_of.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ccan/list/list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ccan/str/str.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/constant.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/debug_counter.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/dln.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/encindex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/eval_intern.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/hrtime.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/id_table.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/array.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/bignum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/class.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/cmdlineopt.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/compar.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/compile.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/compilers.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/complex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/cont.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/dir.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/enc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/enum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/enumerator.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/eval.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/file.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/internal/hash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/inits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/load.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/loadpath.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/math.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/missing.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/numeric.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/object.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/process.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/random.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/range.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/rational.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/re.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/ruby_parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/serial.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/signal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/static_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/struct.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/symbol.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/time.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/transcode.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/util.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/variable.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal/warnings.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/internal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/iseq.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/known_errors.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/node_name.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/optinsn.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/parser_bits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/parser_node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/parser_st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/parser_value.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/encoding.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/options.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/pack.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/prettyprint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/regexp.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/static_literals.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/util/pm_buffer.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/util/pm_char.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/util/pm_integer.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/util/pm_list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/util/pm_memchr.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/util/pm_newline_list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/prism/util/pm_string.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/probes_helper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/regenc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/regint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/regparse.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/rjit.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/rjit_c.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ruby_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/ruby_atomic.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/shape.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/siphash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/symbol.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/thread_none.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/thread_win32.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/timev.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/transcode_data.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/variable.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/vm_call_iseq_optimized.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vm_callinfo.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/vm_debug.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/vm_exec.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p-1}/vm_insnhelper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p-1}/vm_opts.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/addr2line.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ccan/check_type/check_type.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ccan/container_of/container_of.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ccan/list/list.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ccan/str/str.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/constant.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/encindex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/hrtime.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/compar.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/compile.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/compilers.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/complex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/cont.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/dir.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/enc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/enum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/enumerator.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/file.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/loadpath.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/math.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/missing.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/process.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/random.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/range.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/rational.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/ruby_parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/serial.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/static_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/transcode.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/util.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/internal/warnings.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/node_name.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/optinsn.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/parser_bits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/parser_node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/parser_st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/parser_value.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/encoding.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/pack.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/prettyprint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/util/pm_memchr.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/probes_helper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/ruby_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/siphash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/thread_none.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/thread_win32.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/timev.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/transcode_data.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/version.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/vm_call_iseq_optimized.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/vm_debug.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.4.0-preview2 → ruby-4.0.0-preview2}/vm_opts.h +0 -0
|
@@ -224,8 +224,9 @@ typedef struct rb_parser_ast_token {
|
|
|
224
224
|
typedef void* rb_parser_ary_data;
|
|
225
225
|
|
|
226
226
|
enum rb_parser_ary_data_type {
|
|
227
|
-
PARSER_ARY_DATA_AST_TOKEN,
|
|
228
|
-
PARSER_ARY_DATA_SCRIPT_LINE
|
|
227
|
+
PARSER_ARY_DATA_AST_TOKEN = 1,
|
|
228
|
+
PARSER_ARY_DATA_SCRIPT_LINE,
|
|
229
|
+
PARSER_ARY_DATA_NODE
|
|
229
230
|
};
|
|
230
231
|
|
|
231
232
|
typedef struct rb_parser_ary {
|
|
@@ -247,6 +248,7 @@ typedef struct RNode_SCOPE {
|
|
|
247
248
|
|
|
248
249
|
rb_ast_id_table_t *nd_tbl;
|
|
249
250
|
struct RNode *nd_body;
|
|
251
|
+
struct RNode *nd_parent;
|
|
250
252
|
struct RNode_ARGS *nd_args;
|
|
251
253
|
} rb_node_scope_t;
|
|
252
254
|
|
|
@@ -264,6 +266,9 @@ typedef struct RNode_IF {
|
|
|
264
266
|
struct RNode *nd_cond;
|
|
265
267
|
struct RNode *nd_body;
|
|
266
268
|
struct RNode *nd_else;
|
|
269
|
+
rb_code_location_t if_keyword_loc;
|
|
270
|
+
rb_code_location_t then_keyword_loc;
|
|
271
|
+
rb_code_location_t end_keyword_loc;
|
|
267
272
|
} rb_node_if_t;
|
|
268
273
|
|
|
269
274
|
typedef struct RNode_UNLESS {
|
|
@@ -272,6 +277,9 @@ typedef struct RNode_UNLESS {
|
|
|
272
277
|
struct RNode *nd_cond;
|
|
273
278
|
struct RNode *nd_body;
|
|
274
279
|
struct RNode *nd_else;
|
|
280
|
+
rb_code_location_t keyword_loc;
|
|
281
|
+
rb_code_location_t then_keyword_loc;
|
|
282
|
+
rb_code_location_t end_keyword_loc;
|
|
275
283
|
} rb_node_unless_t;
|
|
276
284
|
|
|
277
285
|
typedef struct RNode_CASE {
|
|
@@ -279,6 +287,8 @@ typedef struct RNode_CASE {
|
|
|
279
287
|
|
|
280
288
|
struct RNode *nd_head;
|
|
281
289
|
struct RNode *nd_body;
|
|
290
|
+
rb_code_location_t case_keyword_loc;
|
|
291
|
+
rb_code_location_t end_keyword_loc;
|
|
282
292
|
} rb_node_case_t;
|
|
283
293
|
|
|
284
294
|
typedef struct RNode_CASE2 {
|
|
@@ -286,6 +296,8 @@ typedef struct RNode_CASE2 {
|
|
|
286
296
|
|
|
287
297
|
struct RNode *nd_head;
|
|
288
298
|
struct RNode *nd_body;
|
|
299
|
+
rb_code_location_t case_keyword_loc;
|
|
300
|
+
rb_code_location_t end_keyword_loc;
|
|
289
301
|
} rb_node_case2_t;
|
|
290
302
|
|
|
291
303
|
typedef struct RNode_CASE3 {
|
|
@@ -293,6 +305,8 @@ typedef struct RNode_CASE3 {
|
|
|
293
305
|
|
|
294
306
|
struct RNode *nd_head;
|
|
295
307
|
struct RNode *nd_body;
|
|
308
|
+
rb_code_location_t case_keyword_loc;
|
|
309
|
+
rb_code_location_t end_keyword_loc;
|
|
296
310
|
} rb_node_case3_t;
|
|
297
311
|
|
|
298
312
|
typedef struct RNode_WHEN {
|
|
@@ -301,6 +315,8 @@ typedef struct RNode_WHEN {
|
|
|
301
315
|
struct RNode *nd_head;
|
|
302
316
|
struct RNode *nd_body;
|
|
303
317
|
struct RNode *nd_next;
|
|
318
|
+
rb_code_location_t keyword_loc;
|
|
319
|
+
rb_code_location_t then_keyword_loc;
|
|
304
320
|
} rb_node_when_t;
|
|
305
321
|
|
|
306
322
|
typedef struct RNode_IN {
|
|
@@ -309,26 +325,21 @@ typedef struct RNode_IN {
|
|
|
309
325
|
struct RNode *nd_head;
|
|
310
326
|
struct RNode *nd_body;
|
|
311
327
|
struct RNode *nd_next;
|
|
328
|
+
rb_code_location_t in_keyword_loc;
|
|
329
|
+
rb_code_location_t then_keyword_loc;
|
|
330
|
+
rb_code_location_t operator_loc;
|
|
312
331
|
} rb_node_in_t;
|
|
313
332
|
|
|
314
|
-
|
|
315
|
-
typedef struct RNode_WHILE {
|
|
333
|
+
typedef struct RNode_LOOP {
|
|
316
334
|
NODE node;
|
|
317
335
|
|
|
318
336
|
struct RNode *nd_cond;
|
|
319
337
|
struct RNode *nd_body;
|
|
320
338
|
long nd_state;
|
|
321
|
-
|
|
339
|
+
rb_code_location_t keyword_loc;
|
|
340
|
+
rb_code_location_t closing_loc;
|
|
341
|
+
} rb_node_while_t, rb_node_until_t;
|
|
322
342
|
|
|
323
|
-
typedef struct RNode_UNTIL {
|
|
324
|
-
NODE node;
|
|
325
|
-
|
|
326
|
-
struct RNode *nd_cond;
|
|
327
|
-
struct RNode *nd_body;
|
|
328
|
-
long nd_state;
|
|
329
|
-
} rb_node_until_t;
|
|
330
|
-
|
|
331
|
-
/* RNode_ITER and RNode_FOR should be same structure */
|
|
332
343
|
typedef struct RNode_ITER {
|
|
333
344
|
NODE node;
|
|
334
345
|
|
|
@@ -341,6 +352,10 @@ typedef struct RNode_FOR {
|
|
|
341
352
|
|
|
342
353
|
struct RNode *nd_body;
|
|
343
354
|
struct RNode *nd_iter;
|
|
355
|
+
rb_code_location_t for_keyword_loc;
|
|
356
|
+
rb_code_location_t in_keyword_loc;
|
|
357
|
+
rb_code_location_t do_keyword_loc;
|
|
358
|
+
rb_code_location_t end_keyword_loc;
|
|
344
359
|
} rb_node_for_t;
|
|
345
360
|
|
|
346
361
|
typedef struct RNode_FOR_MASGN {
|
|
@@ -349,26 +364,13 @@ typedef struct RNode_FOR_MASGN {
|
|
|
349
364
|
struct RNode *nd_var;
|
|
350
365
|
} rb_node_for_masgn_t;
|
|
351
366
|
|
|
352
|
-
|
|
353
|
-
typedef struct RNode_BREAK {
|
|
354
|
-
NODE node;
|
|
355
|
-
|
|
356
|
-
struct RNode *nd_chain;
|
|
357
|
-
struct RNode *nd_stts;
|
|
358
|
-
} rb_node_break_t;
|
|
359
|
-
|
|
360
|
-
typedef struct RNode_NEXT {
|
|
367
|
+
typedef struct RNode_EXITS {
|
|
361
368
|
NODE node;
|
|
362
369
|
|
|
363
370
|
struct RNode *nd_chain;
|
|
364
371
|
struct RNode *nd_stts;
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
typedef struct RNode_REDO {
|
|
368
|
-
NODE node;
|
|
369
|
-
|
|
370
|
-
struct RNode *nd_chain;
|
|
371
|
-
} rb_node_redo_t;
|
|
372
|
+
rb_code_location_t keyword_loc;
|
|
373
|
+
} rb_node_exits_t, rb_node_break_t, rb_node_next_t, rb_node_redo_t;
|
|
372
374
|
|
|
373
375
|
typedef struct RNode_RETRY {
|
|
374
376
|
NODE node;
|
|
@@ -392,6 +394,7 @@ typedef struct RNode_RESBODY {
|
|
|
392
394
|
NODE node;
|
|
393
395
|
|
|
394
396
|
struct RNode *nd_args;
|
|
397
|
+
struct RNode *nd_exc_var;
|
|
395
398
|
struct RNode *nd_body;
|
|
396
399
|
struct RNode *nd_next;
|
|
397
400
|
} rb_node_resbody_t;
|
|
@@ -403,20 +406,13 @@ typedef struct RNode_ENSURE {
|
|
|
403
406
|
struct RNode *nd_ensr;
|
|
404
407
|
} rb_node_ensure_t;
|
|
405
408
|
|
|
406
|
-
|
|
407
|
-
typedef struct RNode_AND {
|
|
408
|
-
NODE node;
|
|
409
|
-
|
|
410
|
-
struct RNode *nd_1st;
|
|
411
|
-
struct RNode *nd_2nd;
|
|
412
|
-
} rb_node_and_t;
|
|
413
|
-
|
|
414
|
-
typedef struct RNode_OR {
|
|
409
|
+
typedef struct {
|
|
415
410
|
NODE node;
|
|
416
411
|
|
|
417
412
|
struct RNode *nd_1st;
|
|
418
413
|
struct RNode *nd_2nd;
|
|
419
|
-
|
|
414
|
+
rb_code_location_t operator_loc;
|
|
415
|
+
} rb_node_and_t, rb_node_or_t;
|
|
420
416
|
|
|
421
417
|
typedef struct RNode_MASGN {
|
|
422
418
|
NODE node;
|
|
@@ -477,6 +473,10 @@ typedef struct RNode_OP_ASGN1 {
|
|
|
477
473
|
ID nd_mid;
|
|
478
474
|
struct RNode *nd_index;
|
|
479
475
|
struct RNode *nd_rvalue;
|
|
476
|
+
rb_code_location_t call_operator_loc;
|
|
477
|
+
rb_code_location_t opening_loc;
|
|
478
|
+
rb_code_location_t closing_loc;
|
|
479
|
+
rb_code_location_t binary_operator_loc;
|
|
480
480
|
} rb_node_op_asgn1_t;
|
|
481
481
|
|
|
482
482
|
typedef struct RNode_OP_ASGN2 {
|
|
@@ -487,6 +487,9 @@ typedef struct RNode_OP_ASGN2 {
|
|
|
487
487
|
ID nd_vid;
|
|
488
488
|
ID nd_mid;
|
|
489
489
|
bool nd_aid;
|
|
490
|
+
rb_code_location_t call_operator_loc;
|
|
491
|
+
rb_code_location_t message_loc;
|
|
492
|
+
rb_code_location_t binary_operator_loc;
|
|
490
493
|
} rb_node_op_asgn2_t;
|
|
491
494
|
|
|
492
495
|
typedef struct RNode_OP_ASGN_AND {
|
|
@@ -553,6 +556,9 @@ typedef struct RNode_SUPER {
|
|
|
553
556
|
NODE node;
|
|
554
557
|
|
|
555
558
|
struct RNode *nd_args;
|
|
559
|
+
rb_code_location_t keyword_loc;
|
|
560
|
+
rb_code_location_t lparen_loc;
|
|
561
|
+
rb_code_location_t rparen_loc;
|
|
556
562
|
} rb_node_super_t;
|
|
557
563
|
|
|
558
564
|
typedef struct RNode_ZSUPER {
|
|
@@ -568,8 +574,6 @@ typedef struct RNode_ZSUPER {
|
|
|
568
574
|
* alen (length of list) | * nd_end (point to the last LIST)
|
|
569
575
|
* next -----------------+ * next
|
|
570
576
|
|
|
571
|
-
|
|
572
|
-
RNode_LIST and RNode_VALUES should be same structure
|
|
573
577
|
*/
|
|
574
578
|
typedef struct RNode_LIST {
|
|
575
579
|
NODE node;
|
|
@@ -586,14 +590,6 @@ typedef struct RNode_ZLIST {
|
|
|
586
590
|
NODE node;
|
|
587
591
|
} rb_node_zlist_t;
|
|
588
592
|
|
|
589
|
-
typedef struct RNode_VALUES {
|
|
590
|
-
NODE node;
|
|
591
|
-
|
|
592
|
-
struct RNode *nd_head;
|
|
593
|
-
long nd_alen;
|
|
594
|
-
struct RNode *nd_next;
|
|
595
|
-
} rb_node_values_t;
|
|
596
|
-
|
|
597
593
|
typedef struct RNode_HASH {
|
|
598
594
|
NODE node;
|
|
599
595
|
|
|
@@ -605,12 +601,16 @@ typedef struct RNode_RETURN {
|
|
|
605
601
|
NODE node;
|
|
606
602
|
|
|
607
603
|
struct RNode *nd_stts;
|
|
604
|
+
rb_code_location_t keyword_loc;
|
|
608
605
|
} rb_node_return_t;
|
|
609
606
|
|
|
610
607
|
typedef struct RNode_YIELD {
|
|
611
608
|
NODE node;
|
|
612
609
|
|
|
613
610
|
struct RNode *nd_head;
|
|
611
|
+
rb_code_location_t keyword_loc;
|
|
612
|
+
rb_code_location_t lparen_loc;
|
|
613
|
+
rb_code_location_t rparen_loc;
|
|
614
614
|
} rb_node_yield_t;
|
|
615
615
|
|
|
616
616
|
typedef struct RNode_LVAR {
|
|
@@ -661,14 +661,6 @@ typedef struct RNode_BACK_REF {
|
|
|
661
661
|
long nd_nth;
|
|
662
662
|
} rb_node_back_ref_t;
|
|
663
663
|
|
|
664
|
-
/* RNode_MATCH and RNode_REGX should be same structure */
|
|
665
|
-
typedef struct RNode_MATCH {
|
|
666
|
-
NODE node;
|
|
667
|
-
|
|
668
|
-
struct rb_parser_string *string;
|
|
669
|
-
int options;
|
|
670
|
-
} rb_node_match_t;
|
|
671
|
-
|
|
672
664
|
typedef struct RNode_MATCH2 {
|
|
673
665
|
NODE node;
|
|
674
666
|
|
|
@@ -724,59 +716,48 @@ typedef struct RNode_IMAGINARY {
|
|
|
724
716
|
enum rb_numeric_type type;
|
|
725
717
|
} rb_node_imaginary_t;
|
|
726
718
|
|
|
727
|
-
/* RNode_STR and RNode_XSTR should be same structure */
|
|
728
719
|
typedef struct RNode_STR {
|
|
729
720
|
NODE node;
|
|
730
721
|
|
|
731
722
|
struct rb_parser_string *string;
|
|
732
723
|
} rb_node_str_t;
|
|
733
724
|
|
|
734
|
-
/*
|
|
725
|
+
/* NODE_DSTR, NODE_DXSTR, NODE_DREGX, NODE_DSYM */
|
|
735
726
|
typedef struct RNode_DSTR {
|
|
736
727
|
NODE node;
|
|
737
728
|
|
|
738
729
|
struct rb_parser_string *string;
|
|
739
730
|
union {
|
|
740
731
|
long nd_alen;
|
|
732
|
+
long nd_cflag;
|
|
741
733
|
struct RNode *nd_end; /* Second dstr node has this structure. See also RNode_LIST */
|
|
742
734
|
} as;
|
|
743
735
|
struct RNode_LIST *nd_next;
|
|
744
736
|
} rb_node_dstr_t;
|
|
745
737
|
|
|
746
|
-
typedef
|
|
747
|
-
NODE node;
|
|
748
|
-
|
|
749
|
-
struct rb_parser_string *string;
|
|
750
|
-
} rb_node_xstr_t;
|
|
751
|
-
|
|
752
|
-
typedef struct RNode_DXSTR {
|
|
753
|
-
NODE node;
|
|
738
|
+
typedef rb_node_str_t rb_node_xstr_t;
|
|
754
739
|
|
|
755
|
-
|
|
756
|
-
long nd_alen;
|
|
757
|
-
struct RNode_LIST *nd_next;
|
|
758
|
-
} rb_node_dxstr_t;
|
|
740
|
+
typedef rb_node_dstr_t rb_node_dxstr_t;
|
|
759
741
|
|
|
760
742
|
typedef struct RNode_EVSTR {
|
|
761
743
|
NODE node;
|
|
762
744
|
|
|
763
745
|
struct RNode *nd_body;
|
|
746
|
+
rb_code_location_t opening_loc;
|
|
747
|
+
rb_code_location_t closing_loc;
|
|
764
748
|
} rb_node_evstr_t;
|
|
765
749
|
|
|
766
|
-
typedef struct RNode_REGX {
|
|
750
|
+
typedef struct RNode_REGX { /* also RNode_MATCH */
|
|
767
751
|
NODE node;
|
|
768
752
|
|
|
769
753
|
struct rb_parser_string *string;
|
|
770
754
|
int options;
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
755
|
+
rb_code_location_t opening_loc;
|
|
756
|
+
rb_code_location_t content_loc;
|
|
757
|
+
rb_code_location_t closing_loc;
|
|
758
|
+
} rb_node_regx_t, rb_node_match_t;
|
|
775
759
|
|
|
776
|
-
|
|
777
|
-
ID nd_cflag;
|
|
778
|
-
struct RNode_LIST *nd_next;
|
|
779
|
-
} rb_node_dregx_t;
|
|
760
|
+
typedef rb_node_dstr_t rb_node_dregx_t;
|
|
780
761
|
|
|
781
762
|
typedef struct RNode_ONCE {
|
|
782
763
|
NODE node;
|
|
@@ -858,6 +839,7 @@ typedef struct RNode_SPLAT {
|
|
|
858
839
|
NODE node;
|
|
859
840
|
|
|
860
841
|
struct RNode *nd_head;
|
|
842
|
+
rb_code_location_t operator_loc;
|
|
861
843
|
} rb_node_splat_t;
|
|
862
844
|
|
|
863
845
|
typedef struct RNode_BLOCK_PASS {
|
|
@@ -865,6 +847,8 @@ typedef struct RNode_BLOCK_PASS {
|
|
|
865
847
|
|
|
866
848
|
struct RNode *nd_head;
|
|
867
849
|
struct RNode *nd_body;
|
|
850
|
+
unsigned int forwarding: 1;
|
|
851
|
+
rb_code_location_t operator_loc;
|
|
868
852
|
} rb_node_block_pass_t;
|
|
869
853
|
|
|
870
854
|
typedef struct RNode_DEFN {
|
|
@@ -887,6 +871,7 @@ typedef struct RNode_ALIAS {
|
|
|
887
871
|
|
|
888
872
|
struct RNode *nd_1st;
|
|
889
873
|
struct RNode *nd_2nd;
|
|
874
|
+
rb_code_location_t keyword_loc;
|
|
890
875
|
} rb_node_alias_t;
|
|
891
876
|
|
|
892
877
|
typedef struct RNode_VALIAS {
|
|
@@ -894,12 +879,14 @@ typedef struct RNode_VALIAS {
|
|
|
894
879
|
|
|
895
880
|
ID nd_alias;
|
|
896
881
|
ID nd_orig;
|
|
882
|
+
rb_code_location_t keyword_loc;
|
|
897
883
|
} rb_node_valias_t;
|
|
898
884
|
|
|
899
885
|
typedef struct RNode_UNDEF {
|
|
900
886
|
NODE node;
|
|
901
887
|
|
|
902
|
-
|
|
888
|
+
rb_parser_ary_t *nd_undefs;
|
|
889
|
+
rb_code_location_t keyword_loc;
|
|
903
890
|
} rb_node_undef_t;
|
|
904
891
|
|
|
905
892
|
typedef struct RNode_CLASS {
|
|
@@ -908,6 +895,9 @@ typedef struct RNode_CLASS {
|
|
|
908
895
|
struct RNode *nd_cpath;
|
|
909
896
|
struct RNode *nd_body;
|
|
910
897
|
struct RNode *nd_super;
|
|
898
|
+
rb_code_location_t class_keyword_loc;
|
|
899
|
+
rb_code_location_t inheritance_operator_loc;
|
|
900
|
+
rb_code_location_t end_keyword_loc;
|
|
911
901
|
} rb_node_class_t;
|
|
912
902
|
|
|
913
903
|
typedef struct RNode_MODULE {
|
|
@@ -915,6 +905,8 @@ typedef struct RNode_MODULE {
|
|
|
915
905
|
|
|
916
906
|
struct RNode *nd_cpath;
|
|
917
907
|
struct RNode *nd_body;
|
|
908
|
+
rb_code_location_t module_keyword_loc;
|
|
909
|
+
rb_code_location_t end_keyword_loc;
|
|
918
910
|
} rb_node_module_t;
|
|
919
911
|
|
|
920
912
|
typedef struct RNode_SCLASS {
|
|
@@ -922,6 +914,9 @@ typedef struct RNode_SCLASS {
|
|
|
922
914
|
|
|
923
915
|
struct RNode *nd_recv;
|
|
924
916
|
struct RNode *nd_body;
|
|
917
|
+
rb_code_location_t class_keyword_loc;
|
|
918
|
+
rb_code_location_t operator_loc;
|
|
919
|
+
rb_code_location_t end_keyword_loc;
|
|
925
920
|
} rb_node_sclass_t;
|
|
926
921
|
|
|
927
922
|
typedef struct RNode_COLON2 {
|
|
@@ -929,42 +924,26 @@ typedef struct RNode_COLON2 {
|
|
|
929
924
|
|
|
930
925
|
struct RNode *nd_head;
|
|
931
926
|
ID nd_mid;
|
|
927
|
+
rb_code_location_t delimiter_loc;
|
|
928
|
+
rb_code_location_t name_loc;
|
|
932
929
|
} rb_node_colon2_t;
|
|
933
930
|
|
|
934
931
|
typedef struct RNode_COLON3 {
|
|
935
932
|
NODE node;
|
|
936
933
|
|
|
937
934
|
ID nd_mid;
|
|
935
|
+
rb_code_location_t delimiter_loc;
|
|
936
|
+
rb_code_location_t name_loc;
|
|
938
937
|
} rb_node_colon3_t;
|
|
939
938
|
|
|
940
|
-
/*
|
|
941
|
-
typedef struct
|
|
942
|
-
NODE node;
|
|
943
|
-
|
|
944
|
-
struct RNode *nd_beg;
|
|
945
|
-
struct RNode *nd_end;
|
|
946
|
-
} rb_node_dot2_t;
|
|
947
|
-
|
|
948
|
-
typedef struct RNode_DOT3 {
|
|
939
|
+
/* NODE_DOT2, NODE_DOT3, NODE_FLIP2, NODE_FLIP3 */
|
|
940
|
+
typedef struct RNode_DOTS {
|
|
949
941
|
NODE node;
|
|
950
942
|
|
|
951
943
|
struct RNode *nd_beg;
|
|
952
944
|
struct RNode *nd_end;
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
typedef struct RNode_FLIP2 {
|
|
956
|
-
NODE node;
|
|
957
|
-
|
|
958
|
-
struct RNode *nd_beg;
|
|
959
|
-
struct RNode *nd_end;
|
|
960
|
-
} rb_node_flip2_t;
|
|
961
|
-
|
|
962
|
-
typedef struct RNode_FLIP3 {
|
|
963
|
-
NODE node;
|
|
964
|
-
|
|
965
|
-
struct RNode *nd_beg;
|
|
966
|
-
struct RNode *nd_end;
|
|
967
|
-
} rb_node_flip3_t;
|
|
945
|
+
rb_code_location_t operator_loc;
|
|
946
|
+
} rb_node_dot2_t, rb_node_dot3_t, rb_node_flip2_t, rb_node_flip3_t;
|
|
968
947
|
|
|
969
948
|
typedef struct RNode_SELF {
|
|
970
949
|
NODE node;
|
|
@@ -992,12 +971,16 @@ typedef struct RNode_DEFINED {
|
|
|
992
971
|
NODE node;
|
|
993
972
|
|
|
994
973
|
struct RNode *nd_head;
|
|
974
|
+
rb_code_location_t keyword_loc;
|
|
995
975
|
} rb_node_defined_t;
|
|
996
976
|
|
|
997
977
|
typedef struct RNode_POSTEXE {
|
|
998
978
|
NODE node;
|
|
999
979
|
|
|
1000
980
|
struct RNode *nd_body;
|
|
981
|
+
rb_code_location_t keyword_loc;
|
|
982
|
+
rb_code_location_t opening_loc;
|
|
983
|
+
rb_code_location_t closing_loc;
|
|
1001
984
|
} rb_node_postexe_t;
|
|
1002
985
|
|
|
1003
986
|
typedef struct RNode_SYM {
|
|
@@ -1006,13 +989,7 @@ typedef struct RNode_SYM {
|
|
|
1006
989
|
struct rb_parser_string *string;
|
|
1007
990
|
} rb_node_sym_t;
|
|
1008
991
|
|
|
1009
|
-
typedef
|
|
1010
|
-
NODE node;
|
|
1011
|
-
|
|
1012
|
-
struct rb_parser_string *string;
|
|
1013
|
-
long nd_alen;
|
|
1014
|
-
struct RNode_LIST *nd_next;
|
|
1015
|
-
} rb_node_dsym_t;
|
|
992
|
+
typedef rb_node_dstr_t rb_node_dsym_t;
|
|
1016
993
|
|
|
1017
994
|
typedef struct RNode_ATTRASGN {
|
|
1018
995
|
NODE node;
|
|
@@ -1026,6 +1003,9 @@ typedef struct RNode_LAMBDA {
|
|
|
1026
1003
|
NODE node;
|
|
1027
1004
|
|
|
1028
1005
|
struct RNode *nd_body;
|
|
1006
|
+
rb_code_location_t operator_loc;
|
|
1007
|
+
rb_code_location_t opening_loc;
|
|
1008
|
+
rb_code_location_t closing_loc;
|
|
1029
1009
|
} rb_node_lambda_t;
|
|
1030
1010
|
|
|
1031
1011
|
typedef struct RNode_ARYPTN {
|
|
@@ -1073,121 +1053,121 @@ typedef struct RNode_ERROR {
|
|
|
1073
1053
|
NODE node;
|
|
1074
1054
|
} rb_node_error_t;
|
|
1075
1055
|
|
|
1076
|
-
#define RNODE(obj) ((
|
|
1077
|
-
|
|
1078
|
-
#define RNODE_SCOPE(node) ((
|
|
1079
|
-
#define RNODE_BLOCK(node) ((
|
|
1080
|
-
#define RNODE_IF(node) ((
|
|
1081
|
-
#define RNODE_UNLESS(node) ((
|
|
1082
|
-
#define RNODE_CASE(node) ((
|
|
1083
|
-
#define RNODE_CASE2(node) ((
|
|
1084
|
-
#define RNODE_CASE3(node) ((
|
|
1085
|
-
#define RNODE_WHEN(node) ((
|
|
1086
|
-
#define RNODE_IN(node) ((
|
|
1087
|
-
#define RNODE_WHILE(node) ((
|
|
1088
|
-
#define RNODE_UNTIL(node) ((
|
|
1089
|
-
#define RNODE_ITER(node) ((
|
|
1090
|
-
#define RNODE_FOR(node) ((
|
|
1091
|
-
#define RNODE_FOR_MASGN(node) ((
|
|
1092
|
-
#define RNODE_BREAK(node) ((
|
|
1093
|
-
#define RNODE_NEXT(node) ((
|
|
1094
|
-
#define RNODE_REDO(node) ((
|
|
1095
|
-
#define RNODE_RETRY(node) ((
|
|
1096
|
-
#define RNODE_BEGIN(node) ((
|
|
1097
|
-
#define RNODE_RESCUE(node) ((
|
|
1098
|
-
#define RNODE_RESBODY(node) ((
|
|
1099
|
-
#define RNODE_ENSURE(node) ((
|
|
1100
|
-
#define RNODE_AND(node) ((
|
|
1101
|
-
#define RNODE_OR(node) ((
|
|
1102
|
-
#define RNODE_MASGN(node) ((
|
|
1103
|
-
#define RNODE_LASGN(node) ((
|
|
1104
|
-
#define RNODE_DASGN(node) ((
|
|
1105
|
-
#define RNODE_GASGN(node) ((
|
|
1106
|
-
#define RNODE_IASGN(node) ((
|
|
1107
|
-
#define RNODE_CDECL(node) ((
|
|
1108
|
-
#define RNODE_CVASGN(node) ((
|
|
1109
|
-
#define RNODE_OP_ASGN1(node) ((
|
|
1110
|
-
#define RNODE_OP_ASGN2(node) ((
|
|
1111
|
-
#define RNODE_OP_ASGN_AND(node) ((
|
|
1112
|
-
#define RNODE_OP_ASGN_OR(node) ((
|
|
1113
|
-
#define RNODE_OP_CDECL(node) ((
|
|
1114
|
-
#define RNODE_CALL(node) ((
|
|
1115
|
-
#define RNODE_OPCALL(node) ((
|
|
1116
|
-
#define RNODE_FCALL(node) ((
|
|
1117
|
-
#define RNODE_VCALL(node) ((
|
|
1118
|
-
#define RNODE_QCALL(node) ((
|
|
1119
|
-
#define RNODE_SUPER(node) ((
|
|
1120
|
-
#define RNODE_ZSUPER(node) ((
|
|
1121
|
-
#define RNODE_LIST(node) ((
|
|
1122
|
-
#define RNODE_ZLIST(node) ((
|
|
1123
|
-
#define RNODE_HASH(node) ((
|
|
1124
|
-
#define RNODE_RETURN(node) ((
|
|
1125
|
-
#define RNODE_YIELD(node) ((
|
|
1126
|
-
#define RNODE_LVAR(node) ((
|
|
1127
|
-
#define RNODE_DVAR(node) ((
|
|
1128
|
-
#define RNODE_GVAR(node) ((
|
|
1129
|
-
#define RNODE_IVAR(node) ((
|
|
1130
|
-
#define RNODE_CONST(node) ((
|
|
1131
|
-
#define RNODE_CVAR(node) ((
|
|
1132
|
-
#define RNODE_NTH_REF(node) ((
|
|
1133
|
-
#define RNODE_BACK_REF(node) ((
|
|
1134
|
-
#define RNODE_MATCH(node) ((
|
|
1135
|
-
#define RNODE_MATCH2(node) ((
|
|
1136
|
-
#define RNODE_MATCH3(node) ((
|
|
1137
|
-
#define RNODE_INTEGER(node) ((
|
|
1138
|
-
#define RNODE_FLOAT(node) ((
|
|
1139
|
-
#define RNODE_RATIONAL(node) ((
|
|
1140
|
-
#define RNODE_IMAGINARY(node) ((
|
|
1141
|
-
#define RNODE_STR(node) ((
|
|
1142
|
-
#define RNODE_DSTR(node) ((
|
|
1143
|
-
#define RNODE_XSTR(node) ((
|
|
1144
|
-
#define RNODE_DXSTR(node) ((
|
|
1145
|
-
#define RNODE_EVSTR(node) ((
|
|
1146
|
-
#define RNODE_REGX(node) ((
|
|
1147
|
-
#define RNODE_DREGX(node) ((
|
|
1148
|
-
#define RNODE_ONCE(node) ((
|
|
1149
|
-
#define RNODE_ARGS(node) ((
|
|
1150
|
-
#define RNODE_ARGS_AUX(node) ((
|
|
1151
|
-
#define RNODE_OPT_ARG(node) ((
|
|
1152
|
-
#define RNODE_KW_ARG(node) ((
|
|
1153
|
-
#define RNODE_POSTARG(node) ((
|
|
1154
|
-
#define RNODE_ARGSCAT(node) ((
|
|
1155
|
-
#define RNODE_ARGSPUSH(node) ((
|
|
1156
|
-
#define RNODE_SPLAT(node) ((
|
|
1157
|
-
#define RNODE_BLOCK_PASS(node) ((
|
|
1158
|
-
#define RNODE_DEFN(node) ((
|
|
1159
|
-
#define RNODE_DEFS(node) ((
|
|
1160
|
-
#define RNODE_ALIAS(node) ((
|
|
1161
|
-
#define RNODE_VALIAS(node) ((
|
|
1162
|
-
#define RNODE_UNDEF(node) ((
|
|
1163
|
-
#define RNODE_CLASS(node) ((
|
|
1164
|
-
#define RNODE_MODULE(node) ((
|
|
1165
|
-
#define RNODE_SCLASS(node) ((
|
|
1166
|
-
#define RNODE_COLON2(node) ((
|
|
1167
|
-
#define RNODE_COLON3(node) ((
|
|
1168
|
-
#define RNODE_DOT2(node) ((
|
|
1169
|
-
#define RNODE_DOT3(node) ((
|
|
1170
|
-
#define RNODE_FLIP2(node) ((
|
|
1171
|
-
#define RNODE_FLIP3(node) ((
|
|
1172
|
-
#define RNODE_SELF(node) ((
|
|
1173
|
-
#define RNODE_NIL(node) ((
|
|
1174
|
-
#define RNODE_TRUE(node) ((
|
|
1175
|
-
#define RNODE_FALSE(node) ((
|
|
1176
|
-
#define RNODE_ERRINFO(node) ((
|
|
1177
|
-
#define RNODE_DEFINED(node) ((
|
|
1178
|
-
#define RNODE_POSTEXE(node) ((
|
|
1179
|
-
#define RNODE_SYM(node) ((
|
|
1180
|
-
#define RNODE_DSYM(node) ((
|
|
1181
|
-
#define RNODE_ATTRASGN(node) ((
|
|
1182
|
-
#define RNODE_LAMBDA(node) ((
|
|
1183
|
-
#define RNODE_ARYPTN(node) ((
|
|
1184
|
-
#define RNODE_HSHPTN(node) ((
|
|
1185
|
-
#define RNODE_FNDPTN(node) ((
|
|
1186
|
-
#define RNODE_LINE(node) ((
|
|
1187
|
-
#define RNODE_FILE(node) ((
|
|
1188
|
-
#define RNODE_ENCODING(node) ((
|
|
1189
|
-
|
|
1190
|
-
/* FL : 0..4: T_TYPES, 5: KEEP_WB, 6: PROMOTED, 7: FINALIZE, 8: UNUSED,
|
|
1056
|
+
#define RNODE(obj) ((NODE *)(obj))
|
|
1057
|
+
|
|
1058
|
+
#define RNODE_SCOPE(node) ((rb_node_scope_t *)(node))
|
|
1059
|
+
#define RNODE_BLOCK(node) ((rb_node_block_t *)(node))
|
|
1060
|
+
#define RNODE_IF(node) ((rb_node_if_t *)(node))
|
|
1061
|
+
#define RNODE_UNLESS(node) ((rb_node_unless_t *)(node))
|
|
1062
|
+
#define RNODE_CASE(node) ((rb_node_case_t *)(node))
|
|
1063
|
+
#define RNODE_CASE2(node) ((rb_node_case2_t *)(node))
|
|
1064
|
+
#define RNODE_CASE3(node) ((rb_node_case3_t *)(node))
|
|
1065
|
+
#define RNODE_WHEN(node) ((rb_node_when_t *)(node))
|
|
1066
|
+
#define RNODE_IN(node) ((rb_node_in_t *)(node))
|
|
1067
|
+
#define RNODE_WHILE(node) ((rb_node_while_t *)(node))
|
|
1068
|
+
#define RNODE_UNTIL(node) ((rb_node_until_t *)(node))
|
|
1069
|
+
#define RNODE_ITER(node) ((rb_node_iter_t *)(node))
|
|
1070
|
+
#define RNODE_FOR(node) ((rb_node_for_t *)(node))
|
|
1071
|
+
#define RNODE_FOR_MASGN(node) ((rb_node_for_masgn_t *)(node))
|
|
1072
|
+
#define RNODE_BREAK(node) ((rb_node_break_t *)(node))
|
|
1073
|
+
#define RNODE_NEXT(node) ((rb_node_next_t *)(node))
|
|
1074
|
+
#define RNODE_REDO(node) ((rb_node_redo_t *)(node))
|
|
1075
|
+
#define RNODE_RETRY(node) ((rb_node_retry_t *)(node))
|
|
1076
|
+
#define RNODE_BEGIN(node) ((rb_node_begin_t *)(node))
|
|
1077
|
+
#define RNODE_RESCUE(node) ((rb_node_rescue_t *)(node))
|
|
1078
|
+
#define RNODE_RESBODY(node) ((rb_node_resbody_t *)(node))
|
|
1079
|
+
#define RNODE_ENSURE(node) ((rb_node_ensure_t *)(node))
|
|
1080
|
+
#define RNODE_AND(node) ((rb_node_and_t *)(node))
|
|
1081
|
+
#define RNODE_OR(node) ((rb_node_or_t *)(node))
|
|
1082
|
+
#define RNODE_MASGN(node) ((rb_node_masgn_t *)(node))
|
|
1083
|
+
#define RNODE_LASGN(node) ((rb_node_lasgn_t *)(node))
|
|
1084
|
+
#define RNODE_DASGN(node) ((rb_node_dasgn_t *)(node))
|
|
1085
|
+
#define RNODE_GASGN(node) ((rb_node_gasgn_t *)(node))
|
|
1086
|
+
#define RNODE_IASGN(node) ((rb_node_iasgn_t *)(node))
|
|
1087
|
+
#define RNODE_CDECL(node) ((rb_node_cdecl_t *)(node))
|
|
1088
|
+
#define RNODE_CVASGN(node) ((rb_node_cvasgn_t *)(node))
|
|
1089
|
+
#define RNODE_OP_ASGN1(node) ((rb_node_op_asgn1_t *)(node))
|
|
1090
|
+
#define RNODE_OP_ASGN2(node) ((rb_node_op_asgn2_t *)(node))
|
|
1091
|
+
#define RNODE_OP_ASGN_AND(node) ((rb_node_op_asgn_and_t *)(node))
|
|
1092
|
+
#define RNODE_OP_ASGN_OR(node) ((rb_node_op_asgn_or_t *)(node))
|
|
1093
|
+
#define RNODE_OP_CDECL(node) ((rb_node_op_cdecl_t *)(node))
|
|
1094
|
+
#define RNODE_CALL(node) ((rb_node_call_t *)(node))
|
|
1095
|
+
#define RNODE_OPCALL(node) ((rb_node_opcall_t *)(node))
|
|
1096
|
+
#define RNODE_FCALL(node) ((rb_node_fcall_t *)(node))
|
|
1097
|
+
#define RNODE_VCALL(node) ((rb_node_vcall_t *)(node))
|
|
1098
|
+
#define RNODE_QCALL(node) ((rb_node_qcall_t *)(node))
|
|
1099
|
+
#define RNODE_SUPER(node) ((rb_node_super_t *)(node))
|
|
1100
|
+
#define RNODE_ZSUPER(node) ((rb_node_zsuper_t *)(node))
|
|
1101
|
+
#define RNODE_LIST(node) ((rb_node_list_t *)(node))
|
|
1102
|
+
#define RNODE_ZLIST(node) ((rb_node_zlist_t *)(node))
|
|
1103
|
+
#define RNODE_HASH(node) ((rb_node_hash_t *)(node))
|
|
1104
|
+
#define RNODE_RETURN(node) ((rb_node_return_t *)(node))
|
|
1105
|
+
#define RNODE_YIELD(node) ((rb_node_yield_t *)(node))
|
|
1106
|
+
#define RNODE_LVAR(node) ((rb_node_lvar_t *)(node))
|
|
1107
|
+
#define RNODE_DVAR(node) ((rb_node_dvar_t *)(node))
|
|
1108
|
+
#define RNODE_GVAR(node) ((rb_node_gvar_t *)(node))
|
|
1109
|
+
#define RNODE_IVAR(node) ((rb_node_ivar_t *)(node))
|
|
1110
|
+
#define RNODE_CONST(node) ((rb_node_const_t *)(node))
|
|
1111
|
+
#define RNODE_CVAR(node) ((rb_node_cvar_t *)(node))
|
|
1112
|
+
#define RNODE_NTH_REF(node) ((rb_node_nth_ref_t *)(node))
|
|
1113
|
+
#define RNODE_BACK_REF(node) ((rb_node_back_ref_t *)(node))
|
|
1114
|
+
#define RNODE_MATCH(node) ((rb_node_match_t *)(node))
|
|
1115
|
+
#define RNODE_MATCH2(node) ((rb_node_match2_t *)(node))
|
|
1116
|
+
#define RNODE_MATCH3(node) ((rb_node_match3_t *)(node))
|
|
1117
|
+
#define RNODE_INTEGER(node) ((rb_node_integer_t *)(node))
|
|
1118
|
+
#define RNODE_FLOAT(node) ((rb_node_float_t *)(node))
|
|
1119
|
+
#define RNODE_RATIONAL(node) ((rb_node_rational_t *)(node))
|
|
1120
|
+
#define RNODE_IMAGINARY(node) ((rb_node_imaginary_t *)(node))
|
|
1121
|
+
#define RNODE_STR(node) ((rb_node_str_t *)(node))
|
|
1122
|
+
#define RNODE_DSTR(node) ((rb_node_dstr_t *)(node))
|
|
1123
|
+
#define RNODE_XSTR(node) ((rb_node_xstr_t *)(node))
|
|
1124
|
+
#define RNODE_DXSTR(node) ((rb_node_dxstr_t *)(node))
|
|
1125
|
+
#define RNODE_EVSTR(node) ((rb_node_evstr_t *)(node))
|
|
1126
|
+
#define RNODE_REGX(node) ((rb_node_regx_t *)(node))
|
|
1127
|
+
#define RNODE_DREGX(node) ((rb_node_dregx_t *)(node))
|
|
1128
|
+
#define RNODE_ONCE(node) ((rb_node_once_t *)(node))
|
|
1129
|
+
#define RNODE_ARGS(node) ((rb_node_args_t *)(node))
|
|
1130
|
+
#define RNODE_ARGS_AUX(node) ((rb_node_args_aux_t *)(node))
|
|
1131
|
+
#define RNODE_OPT_ARG(node) ((rb_node_opt_arg_t *)(node))
|
|
1132
|
+
#define RNODE_KW_ARG(node) ((rb_node_kw_arg_t *)(node))
|
|
1133
|
+
#define RNODE_POSTARG(node) ((rb_node_postarg_t *)(node))
|
|
1134
|
+
#define RNODE_ARGSCAT(node) ((rb_node_argscat_t *)(node))
|
|
1135
|
+
#define RNODE_ARGSPUSH(node) ((rb_node_argspush_t *)(node))
|
|
1136
|
+
#define RNODE_SPLAT(node) ((rb_node_splat_t *)(node))
|
|
1137
|
+
#define RNODE_BLOCK_PASS(node) ((rb_node_block_pass_t *)(node))
|
|
1138
|
+
#define RNODE_DEFN(node) ((rb_node_defn_t *)(node))
|
|
1139
|
+
#define RNODE_DEFS(node) ((rb_node_defs_t *)(node))
|
|
1140
|
+
#define RNODE_ALIAS(node) ((rb_node_alias_t *)(node))
|
|
1141
|
+
#define RNODE_VALIAS(node) ((rb_node_valias_t *)(node))
|
|
1142
|
+
#define RNODE_UNDEF(node) ((rb_node_undef_t *)(node))
|
|
1143
|
+
#define RNODE_CLASS(node) ((rb_node_class_t *)(node))
|
|
1144
|
+
#define RNODE_MODULE(node) ((rb_node_module_t *)(node))
|
|
1145
|
+
#define RNODE_SCLASS(node) ((rb_node_sclass_t *)(node))
|
|
1146
|
+
#define RNODE_COLON2(node) ((rb_node_colon2_t *)(node))
|
|
1147
|
+
#define RNODE_COLON3(node) ((rb_node_colon3_t *)(node))
|
|
1148
|
+
#define RNODE_DOT2(node) ((rb_node_dot2_t *)(node))
|
|
1149
|
+
#define RNODE_DOT3(node) ((rb_node_dot3_t *)(node))
|
|
1150
|
+
#define RNODE_FLIP2(node) ((rb_node_flip2_t *)(node))
|
|
1151
|
+
#define RNODE_FLIP3(node) ((rb_node_flip3_t *)(node))
|
|
1152
|
+
#define RNODE_SELF(node) ((rb_node_self_t *)(node))
|
|
1153
|
+
#define RNODE_NIL(node) ((rb_node_nil_t *)(node))
|
|
1154
|
+
#define RNODE_TRUE(node) ((rb_node_true_t *)(node))
|
|
1155
|
+
#define RNODE_FALSE(node) ((rb_node_false_t *)(node))
|
|
1156
|
+
#define RNODE_ERRINFO(node) ((rb_node_errinfo_t *)(node))
|
|
1157
|
+
#define RNODE_DEFINED(node) ((rb_node_defined_t *)(node))
|
|
1158
|
+
#define RNODE_POSTEXE(node) ((rb_node_postexe_t *)(node))
|
|
1159
|
+
#define RNODE_SYM(node) ((rb_node_sym_t *)(node))
|
|
1160
|
+
#define RNODE_DSYM(node) ((rb_node_dsym_t *)(node))
|
|
1161
|
+
#define RNODE_ATTRASGN(node) ((rb_node_attrasgn_t *)(node))
|
|
1162
|
+
#define RNODE_LAMBDA(node) ((rb_node_lambda_t *)(node))
|
|
1163
|
+
#define RNODE_ARYPTN(node) ((rb_node_aryptn_t *)(node))
|
|
1164
|
+
#define RNODE_HSHPTN(node) ((rb_node_hshptn_t *)(node))
|
|
1165
|
+
#define RNODE_FNDPTN(node) ((rb_node_fndptn_t *)(node))
|
|
1166
|
+
#define RNODE_LINE(node) ((rb_node_line_t *)(node))
|
|
1167
|
+
#define RNODE_FILE(node) ((rb_node_file_t *)(node))
|
|
1168
|
+
#define RNODE_ENCODING(node) ((rb_node_encoding_t *)(node))
|
|
1169
|
+
|
|
1170
|
+
/* FL : 0..4: T_TYPES, 5: KEEP_WB, 6: PROMOTED, 7: FINALIZE, 8..10: UNUSED, 11: FREEZE */
|
|
1191
1171
|
/* NODE_FL: 0..4: UNUSED, 5: UNUSED, 6: UNUSED, 7: NODE_FL_NEWLINE,
|
|
1192
1172
|
* 8..14: nd_type,
|
|
1193
1173
|
* 15..: nd_line
|
|
@@ -1197,9 +1177,9 @@ typedef struct RNode_ERROR {
|
|
|
1197
1177
|
#define NODE_TYPESHIFT 8
|
|
1198
1178
|
#define NODE_TYPEMASK (((VALUE)0x7f)<<NODE_TYPESHIFT)
|
|
1199
1179
|
|
|
1200
|
-
#define nd_fl_newline(n) (n)->flags & NODE_FL_NEWLINE
|
|
1201
|
-
#define nd_set_fl_newline(n) (n)->flags |= NODE_FL_NEWLINE
|
|
1202
|
-
#define nd_unset_fl_newline(n) (n)->flags &= ~NODE_FL_NEWLINE
|
|
1180
|
+
#define nd_fl_newline(n) ((n)->flags & NODE_FL_NEWLINE)
|
|
1181
|
+
#define nd_set_fl_newline(n) ((n)->flags |= NODE_FL_NEWLINE)
|
|
1182
|
+
#define nd_unset_fl_newline(n) ((n)->flags &= ~NODE_FL_NEWLINE)
|
|
1203
1183
|
|
|
1204
1184
|
#define nd_type(n) ((int) ((RNODE(n)->flags & NODE_TYPEMASK)>>NODE_TYPESHIFT))
|
|
1205
1185
|
#define nd_set_type(n,t) \
|
|
@@ -1240,6 +1220,8 @@ typedef struct parser_params rb_parser_t;
|
|
|
1240
1220
|
typedef struct rb_imemo_tmpbuf_struct rb_imemo_tmpbuf_t;
|
|
1241
1221
|
#endif
|
|
1242
1222
|
|
|
1223
|
+
typedef NODE *(*rb_parser_assignable_func)(struct parser_params *p, ID id, NODE *val, const rb_code_location_t *loc);
|
|
1224
|
+
|
|
1243
1225
|
#ifdef UNIVERSAL_PARSER
|
|
1244
1226
|
typedef struct rb_parser_config_struct {
|
|
1245
1227
|
/* Memory */
|
|
@@ -1257,14 +1239,12 @@ typedef struct rb_parser_config_struct {
|
|
|
1257
1239
|
|
|
1258
1240
|
// VALUE rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg);
|
|
1259
1241
|
VALUE (*compile_callback)(VALUE (*func)(VALUE), VALUE arg);
|
|
1260
|
-
NODE *(*reg_named_capture_assign)(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc);
|
|
1242
|
+
NODE *(*reg_named_capture_assign)(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc, rb_parser_assignable_func assignable);
|
|
1261
1243
|
|
|
1262
1244
|
/* Variable */
|
|
1263
1245
|
VALUE (*attr_get)(VALUE obj, ID id);
|
|
1264
1246
|
|
|
1265
1247
|
/* Array */
|
|
1266
|
-
VALUE (*ary_new)(void);
|
|
1267
|
-
VALUE (*ary_push)(VALUE ary, VALUE elem);
|
|
1268
1248
|
VALUE (*ary_new_from_args)(long n, ...);
|
|
1269
1249
|
VALUE (*ary_unshift)(VALUE ary, VALUE item);
|
|
1270
1250
|
|
|
@@ -1284,30 +1264,22 @@ typedef struct rb_parser_config_struct {
|
|
|
1284
1264
|
const char *(*id2name)(ID id);
|
|
1285
1265
|
VALUE (*id2str)(ID id);
|
|
1286
1266
|
VALUE (*id2sym)(ID x);
|
|
1287
|
-
ID (*sym2id)(VALUE sym);
|
|
1288
1267
|
|
|
1289
1268
|
/* String */
|
|
1290
1269
|
RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 2, 3)
|
|
1291
1270
|
VALUE (*str_catf)(VALUE str, const char *format, ...);
|
|
1292
1271
|
VALUE (*str_cat_cstr)(VALUE str, const char *ptr);
|
|
1293
|
-
void (*str_modify)(VALUE str);
|
|
1294
|
-
void (*str_set_len)(VALUE str, long len);
|
|
1295
|
-
VALUE (*str_cat)(VALUE str, const char *ptr, long len);
|
|
1296
1272
|
VALUE (*str_resize)(VALUE str, long len);
|
|
1297
1273
|
VALUE (*str_new)(const char *ptr, long len);
|
|
1298
1274
|
VALUE (*str_new_cstr)(const char *ptr);
|
|
1299
1275
|
VALUE (*str_to_interned_str)(VALUE);
|
|
1300
|
-
int (*is_ascii_string)(VALUE str);
|
|
1301
1276
|
VALUE (*enc_str_new)(const char *ptr, long len, rb_encoding *enc);
|
|
1302
1277
|
RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 2, 0)
|
|
1303
1278
|
VALUE (*str_vcatf)(VALUE str, const char *fmt, va_list ap);
|
|
1304
|
-
char *(*string_value_cstr)(volatile VALUE *ptr);
|
|
1305
1279
|
RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 1, 2)
|
|
1306
1280
|
VALUE (*rb_sprintf)(const char *format, ...);
|
|
1307
1281
|
char *(*rstring_ptr)(VALUE str);
|
|
1308
|
-
char *(*rstring_end)(VALUE str);
|
|
1309
1282
|
long (*rstring_len)(VALUE str);
|
|
1310
|
-
VALUE (*obj_as_string)(VALUE);
|
|
1311
1283
|
|
|
1312
1284
|
/* Numeric */
|
|
1313
1285
|
VALUE (*int2num)(int v);
|
|
@@ -1334,16 +1306,12 @@ typedef struct rb_parser_config_struct {
|
|
|
1334
1306
|
rb_encoding* (*enc_get)(VALUE obj);
|
|
1335
1307
|
int (*enc_asciicompat)(rb_encoding *enc);
|
|
1336
1308
|
rb_encoding *(*utf8_encoding)(void);
|
|
1337
|
-
VALUE (*enc_associate)(VALUE obj, rb_encoding *enc);
|
|
1338
1309
|
rb_encoding *(*ascii8bit_encoding)(void);
|
|
1339
1310
|
int (*enc_codelen)(int c, rb_encoding *enc);
|
|
1340
1311
|
int (*enc_mbcput)(unsigned int c, void *buf, rb_encoding *enc);
|
|
1341
|
-
int (*enc_mbclen)(const char *p, const char *e, rb_encoding *enc);
|
|
1342
1312
|
int (*enc_find_index)(const char *name);
|
|
1343
1313
|
rb_encoding *(*enc_from_index)(int idx);
|
|
1344
1314
|
int (*enc_isspace)(OnigCodePoint c, rb_encoding *enc);
|
|
1345
|
-
rb_encoding *(*usascii_encoding)(void);
|
|
1346
|
-
int enc_coderange_broken;
|
|
1347
1315
|
int (*enc_mbminlen)(rb_encoding *enc);
|
|
1348
1316
|
bool (*enc_isascii)(OnigCodePoint c, rb_encoding *enc);
|
|
1349
1317
|
OnigCodePoint (*enc_mbc_to_codepoint)(const char *p, const char *e, rb_encoding *enc);
|
|
@@ -1364,7 +1332,6 @@ typedef struct rb_parser_config_struct {
|
|
|
1364
1332
|
/* Eval */
|
|
1365
1333
|
VALUE (*errinfo)(void);
|
|
1366
1334
|
void (*set_errinfo)(VALUE err);
|
|
1367
|
-
void (*exc_raise)(VALUE mesg);
|
|
1368
1335
|
VALUE (*make_exception)(int argc, const VALUE *argv);
|
|
1369
1336
|
|
|
1370
1337
|
/* GC */
|
|
@@ -1422,9 +1389,6 @@ rb_parser_t *rb_ruby_parser_allocate(const rb_parser_config_t *config);
|
|
|
1422
1389
|
rb_parser_t *rb_ruby_parser_new(const rb_parser_config_t *config);
|
|
1423
1390
|
#endif
|
|
1424
1391
|
|
|
1425
|
-
long rb_parser_string_length(rb_parser_string_t *str);
|
|
1426
|
-
char *rb_parser_string_pointer(rb_parser_string_t *str);
|
|
1427
|
-
|
|
1428
1392
|
RUBY_SYMBOL_EXPORT_END
|
|
1429
1393
|
|
|
1430
1394
|
#endif /* RUBY_RUBYPARSER_H */
|