datadog-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.
- checksums.yaml +4 -4
- data/CHANGELOG.datadog.md +12 -1
- data/datadog-ruby_core_source.gemspec +7 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id.h +5 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/basic_operators.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bits.h +82 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/encoding.h +2 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/fixnum.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/gc.h +14 -6
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/imemo.h +6 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/io.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/proc.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ractor.h +4 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/sanitizers.h +31 -39
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/string.h +22 -10
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/thread.h +23 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/vm.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/method.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/ast.h +427 -3
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/defines.h +8 -7
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/diagnostic.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prism.h +47 -11
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/version.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism_compile.h +5 -5
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ractor_core.h +6 -6
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/rubyparser.h +3 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_pthread.h +0 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_core.h +40 -12
- data/lib/datadog/ruby_core_source/version.rb +1 -1
- data/lib/datadog/ruby_core_source.rb +14 -1
- metadata +110 -476
- data/.github/workflows/publish.yml +0 -18
- data/.gitignore +0 -7
- data/.idea/vcs.xml +0 -28
- data/CHANGELOG.md +0 -284
- data/CONTRIBUTING.md +0 -2
- data/Gemfile +0 -4
- data/Rakefile +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/id.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/array.h +0 -151
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/basic_operators.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/bits.h +0 -568
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/class.h +0 -283
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/error.h +0 -216
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/fixnum.h +0 -184
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/gc.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/hash.h +0 -191
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/imemo.h +0 -260
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/io.h +0 -140
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/parse.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/sanitizers.h +0 -297
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/string.h +0 -182
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/thread.h +0 -79
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/vm.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/ast.h +0 -6245
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/defines.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/diagnostic.h +0 -433
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/extension.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/node.h +0 -150
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/options.h +0 -305
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/parser.h +0 -891
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/static_literals.h +0 -120
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_char.h +0 -205
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_constant_pool.h +0 -226
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_integer.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_newline_list.h +0 -102
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string.h +0 -174
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/version.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism_compile.h +0 -88
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/ractor_core.h +0 -393
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rubyparser.h +0 -1430
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/shape.h +0 -233
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_pthread.h +0 -166
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_core.h +0 -2236
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +0 -40
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +0 -142
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +0 -17
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/id_table.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +0 -65
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +0 -107
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +0 -35
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +0 -18
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +0 -33
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +0 -38
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +0 -47
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +0 -18
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +0 -274
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +0 -30
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +0 -124
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ractor.h +0 -6
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +0 -17
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +0 -40
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +0 -71
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +0 -28
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +0 -102
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +0 -24
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +0 -11
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +0 -127
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +0 -45
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +0 -27
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/iseq.h +0 -340
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/method.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node.h +0 -111
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +0 -162
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +0 -106
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +0 -283
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +0 -163
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +0 -218
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +0 -97
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +0 -46
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +0 -14
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +0 -124
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +0 -67
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/id_table.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compar.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compile.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/complex.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cont.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/dir.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enc.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/eval.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/file.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/inits.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/load.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/math.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/missing.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/object.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/process.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/random.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/range.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/rational.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/re.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/serial.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/signal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/struct.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/time.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/util.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/variable.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/iseq.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_value.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/pack.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/thread_none.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_debug.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_opts.h +0 -0
@@ -1,163 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @file pack.h
|
3
|
-
*
|
4
|
-
* A pack template string parser.
|
5
|
-
*/
|
6
|
-
#ifndef PRISM_PACK_H
|
7
|
-
#define PRISM_PACK_H
|
8
|
-
|
9
|
-
#include "prism/defines.h"
|
10
|
-
|
11
|
-
// We optionally support parsing String#pack templates. For systems that don't
|
12
|
-
// want or need this functionality, it can be turned off with the
|
13
|
-
// PRISM_EXCLUDE_PACK define.
|
14
|
-
#ifdef PRISM_EXCLUDE_PACK
|
15
|
-
|
16
|
-
void pm_pack_parse(void);
|
17
|
-
|
18
|
-
#else
|
19
|
-
|
20
|
-
#include <stdint.h>
|
21
|
-
#include <stdlib.h>
|
22
|
-
|
23
|
-
/** The version of the pack template language that we are parsing. */
|
24
|
-
typedef enum pm_pack_version {
|
25
|
-
PM_PACK_VERSION_3_2_0
|
26
|
-
} pm_pack_version;
|
27
|
-
|
28
|
-
/** The type of pack template we are parsing. */
|
29
|
-
typedef enum pm_pack_variant {
|
30
|
-
PM_PACK_VARIANT_PACK,
|
31
|
-
PM_PACK_VARIANT_UNPACK
|
32
|
-
} pm_pack_variant;
|
33
|
-
|
34
|
-
/** A directive within the pack template. */
|
35
|
-
typedef enum pm_pack_type {
|
36
|
-
PM_PACK_SPACE,
|
37
|
-
PM_PACK_COMMENT,
|
38
|
-
PM_PACK_INTEGER,
|
39
|
-
PM_PACK_UTF8,
|
40
|
-
PM_PACK_BER,
|
41
|
-
PM_PACK_FLOAT,
|
42
|
-
PM_PACK_STRING_SPACE_PADDED,
|
43
|
-
PM_PACK_STRING_NULL_PADDED,
|
44
|
-
PM_PACK_STRING_NULL_TERMINATED,
|
45
|
-
PM_PACK_STRING_MSB,
|
46
|
-
PM_PACK_STRING_LSB,
|
47
|
-
PM_PACK_STRING_HEX_HIGH,
|
48
|
-
PM_PACK_STRING_HEX_LOW,
|
49
|
-
PM_PACK_STRING_UU,
|
50
|
-
PM_PACK_STRING_MIME,
|
51
|
-
PM_PACK_STRING_BASE64,
|
52
|
-
PM_PACK_STRING_FIXED,
|
53
|
-
PM_PACK_STRING_POINTER,
|
54
|
-
PM_PACK_MOVE,
|
55
|
-
PM_PACK_BACK,
|
56
|
-
PM_PACK_NULL,
|
57
|
-
PM_PACK_END
|
58
|
-
} pm_pack_type;
|
59
|
-
|
60
|
-
/** The signness of a pack directive. */
|
61
|
-
typedef enum pm_pack_signed {
|
62
|
-
PM_PACK_UNSIGNED,
|
63
|
-
PM_PACK_SIGNED,
|
64
|
-
PM_PACK_SIGNED_NA
|
65
|
-
} pm_pack_signed;
|
66
|
-
|
67
|
-
/** The endianness of a pack directive. */
|
68
|
-
typedef enum pm_pack_endian {
|
69
|
-
PM_PACK_AGNOSTIC_ENDIAN,
|
70
|
-
PM_PACK_LITTLE_ENDIAN, // aka 'VAX', or 'V'
|
71
|
-
PM_PACK_BIG_ENDIAN, // aka 'network', or 'N'
|
72
|
-
PM_PACK_NATIVE_ENDIAN,
|
73
|
-
PM_PACK_ENDIAN_NA
|
74
|
-
} pm_pack_endian;
|
75
|
-
|
76
|
-
/** The size of an integer pack directive. */
|
77
|
-
typedef enum pm_pack_size {
|
78
|
-
PM_PACK_SIZE_SHORT,
|
79
|
-
PM_PACK_SIZE_INT,
|
80
|
-
PM_PACK_SIZE_LONG,
|
81
|
-
PM_PACK_SIZE_LONG_LONG,
|
82
|
-
PM_PACK_SIZE_8,
|
83
|
-
PM_PACK_SIZE_16,
|
84
|
-
PM_PACK_SIZE_32,
|
85
|
-
PM_PACK_SIZE_64,
|
86
|
-
PM_PACK_SIZE_P,
|
87
|
-
PM_PACK_SIZE_NA
|
88
|
-
} pm_pack_size;
|
89
|
-
|
90
|
-
/** The type of length of a pack directive. */
|
91
|
-
typedef enum pm_pack_length_type {
|
92
|
-
PM_PACK_LENGTH_FIXED,
|
93
|
-
PM_PACK_LENGTH_MAX,
|
94
|
-
PM_PACK_LENGTH_RELATIVE, // special case for unpack @*
|
95
|
-
PM_PACK_LENGTH_NA
|
96
|
-
} pm_pack_length_type;
|
97
|
-
|
98
|
-
/** The type of encoding for a pack template string. */
|
99
|
-
typedef enum pm_pack_encoding {
|
100
|
-
PM_PACK_ENCODING_START,
|
101
|
-
PM_PACK_ENCODING_ASCII_8BIT,
|
102
|
-
PM_PACK_ENCODING_US_ASCII,
|
103
|
-
PM_PACK_ENCODING_UTF_8
|
104
|
-
} pm_pack_encoding;
|
105
|
-
|
106
|
-
/** The result of parsing a pack template. */
|
107
|
-
typedef enum pm_pack_result {
|
108
|
-
PM_PACK_OK,
|
109
|
-
PM_PACK_ERROR_UNSUPPORTED_DIRECTIVE,
|
110
|
-
PM_PACK_ERROR_UNKNOWN_DIRECTIVE,
|
111
|
-
PM_PACK_ERROR_LENGTH_TOO_BIG,
|
112
|
-
PM_PACK_ERROR_BANG_NOT_ALLOWED,
|
113
|
-
PM_PACK_ERROR_DOUBLE_ENDIAN
|
114
|
-
} pm_pack_result;
|
115
|
-
|
116
|
-
/**
|
117
|
-
* Parse a single directive from a pack or unpack format string.
|
118
|
-
*
|
119
|
-
* @param variant (in) pack or unpack
|
120
|
-
* @param format (in, out) the start of the next directive to parse on calling,
|
121
|
-
* and advanced beyond the parsed directive on return, or as much of it as
|
122
|
-
* was consumed until an error was encountered
|
123
|
-
* @param format_end (in) the end of the format string
|
124
|
-
* @param type (out) the type of the directive
|
125
|
-
* @param signed_type (out) whether the value is signed
|
126
|
-
* @param endian (out) the endianness of the value
|
127
|
-
* @param size (out) the size of the value
|
128
|
-
* @param length_type (out) what kind of length is specified
|
129
|
-
* @param length (out) the length of the directive
|
130
|
-
* @param encoding (in, out) takes the current encoding of the string which
|
131
|
-
* would result from parsing the whole format string, and returns a possibly
|
132
|
-
* changed directive - the encoding should be `PM_PACK_ENCODING_START` when
|
133
|
-
* pm_pack_parse is called for the first directive in a format string
|
134
|
-
*
|
135
|
-
* @return `PM_PACK_OK` on success or `PM_PACK_ERROR_*` on error
|
136
|
-
* @note Consult Ruby documentation for the meaning of directives.
|
137
|
-
*/
|
138
|
-
PRISM_EXPORTED_FUNCTION pm_pack_result
|
139
|
-
pm_pack_parse(
|
140
|
-
pm_pack_variant variant,
|
141
|
-
const char **format,
|
142
|
-
const char *format_end,
|
143
|
-
pm_pack_type *type,
|
144
|
-
pm_pack_signed *signed_type,
|
145
|
-
pm_pack_endian *endian,
|
146
|
-
pm_pack_size *size,
|
147
|
-
pm_pack_length_type *length_type,
|
148
|
-
uint64_t *length,
|
149
|
-
pm_pack_encoding *encoding
|
150
|
-
);
|
151
|
-
|
152
|
-
/**
|
153
|
-
* Prism abstracts sizes away from the native system - this converts an abstract
|
154
|
-
* size to a native size.
|
155
|
-
*
|
156
|
-
* @param size The abstract size to convert.
|
157
|
-
* @return The native size.
|
158
|
-
*/
|
159
|
-
PRISM_EXPORTED_FUNCTION size_t pm_size_to_native(pm_pack_size size);
|
160
|
-
|
161
|
-
#endif
|
162
|
-
|
163
|
-
#endif
|
@@ -1,34 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @file prettyprint.h
|
3
|
-
*
|
4
|
-
* An AST node pretty-printer.
|
5
|
-
*/
|
6
|
-
#ifndef PRISM_PRETTYPRINT_H
|
7
|
-
#define PRISM_PRETTYPRINT_H
|
8
|
-
|
9
|
-
#include "prism/defines.h"
|
10
|
-
|
11
|
-
#ifdef PRISM_EXCLUDE_PRETTYPRINT
|
12
|
-
|
13
|
-
void pm_prettyprint(void);
|
14
|
-
|
15
|
-
#else
|
16
|
-
|
17
|
-
#include <stdio.h>
|
18
|
-
|
19
|
-
#include "prism/ast.h"
|
20
|
-
#include "prism/parser.h"
|
21
|
-
#include "prism/util/pm_buffer.h"
|
22
|
-
|
23
|
-
/**
|
24
|
-
* Pretty-prints the AST represented by the given node to the given buffer.
|
25
|
-
*
|
26
|
-
* @param output_buffer The buffer to write the pretty-printed AST to.
|
27
|
-
* @param parser The parser that parsed the AST.
|
28
|
-
* @param node The root node of the AST to pretty-print.
|
29
|
-
*/
|
30
|
-
PRISM_EXPORTED_FUNCTION void pm_prettyprint(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm_node_t *node);
|
31
|
-
|
32
|
-
#endif
|
33
|
-
|
34
|
-
#endif
|
@@ -1,336 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @file prism.h
|
3
|
-
*
|
4
|
-
* The main header file for the prism parser.
|
5
|
-
*/
|
6
|
-
#ifndef PRISM_H
|
7
|
-
#define PRISM_H
|
8
|
-
|
9
|
-
#include "prism/defines.h"
|
10
|
-
#include "prism/util/pm_buffer.h"
|
11
|
-
#include "prism/util/pm_char.h"
|
12
|
-
#include "prism/util/pm_integer.h"
|
13
|
-
#include "prism/util/pm_memchr.h"
|
14
|
-
#include "prism/util/pm_strncasecmp.h"
|
15
|
-
#include "prism/util/pm_strpbrk.h"
|
16
|
-
#include "prism/ast.h"
|
17
|
-
#include "prism/diagnostic.h"
|
18
|
-
#include "prism/node.h"
|
19
|
-
#include "prism/options.h"
|
20
|
-
#include "prism/pack.h"
|
21
|
-
#include "prism/parser.h"
|
22
|
-
#include "prism/prettyprint.h"
|
23
|
-
#include "prism/regexp.h"
|
24
|
-
#include "prism/static_literals.h"
|
25
|
-
#include "prism/version.h"
|
26
|
-
|
27
|
-
#include <assert.h>
|
28
|
-
#include <errno.h>
|
29
|
-
#include <locale.h>
|
30
|
-
#include <math.h>
|
31
|
-
#include <stdarg.h>
|
32
|
-
#include <stdbool.h>
|
33
|
-
#include <stdint.h>
|
34
|
-
#include <stdio.h>
|
35
|
-
#include <stdlib.h>
|
36
|
-
#include <string.h>
|
37
|
-
|
38
|
-
#ifndef _WIN32
|
39
|
-
#include <strings.h>
|
40
|
-
#endif
|
41
|
-
|
42
|
-
/**
|
43
|
-
* The prism version and the serialization format.
|
44
|
-
*
|
45
|
-
* @returns The prism version as a constant string.
|
46
|
-
*/
|
47
|
-
PRISM_EXPORTED_FUNCTION const char * pm_version(void);
|
48
|
-
|
49
|
-
/**
|
50
|
-
* Initialize a parser with the given start and end pointers.
|
51
|
-
*
|
52
|
-
* @param parser The parser to initialize.
|
53
|
-
* @param source The source to parse.
|
54
|
-
* @param size The size of the source.
|
55
|
-
* @param options The optional options to use when parsing.
|
56
|
-
*/
|
57
|
-
PRISM_EXPORTED_FUNCTION void pm_parser_init(pm_parser_t *parser, const uint8_t *source, size_t size, const pm_options_t *options);
|
58
|
-
|
59
|
-
/**
|
60
|
-
* Register a callback that will be called whenever prism changes the encoding
|
61
|
-
* it is using to parse based on the magic comment.
|
62
|
-
*
|
63
|
-
* @param parser The parser to register the callback with.
|
64
|
-
* @param callback The callback to register.
|
65
|
-
*/
|
66
|
-
PRISM_EXPORTED_FUNCTION void pm_parser_register_encoding_changed_callback(pm_parser_t *parser, pm_encoding_changed_callback_t callback);
|
67
|
-
|
68
|
-
/**
|
69
|
-
* Free any memory associated with the given parser.
|
70
|
-
*
|
71
|
-
* @param parser The parser to free.
|
72
|
-
*/
|
73
|
-
PRISM_EXPORTED_FUNCTION void pm_parser_free(pm_parser_t *parser);
|
74
|
-
|
75
|
-
/**
|
76
|
-
* Initiate the parser with the given parser.
|
77
|
-
*
|
78
|
-
* @param parser The parser to use.
|
79
|
-
* @return The AST representing the source.
|
80
|
-
*/
|
81
|
-
PRISM_EXPORTED_FUNCTION pm_node_t * pm_parse(pm_parser_t *parser);
|
82
|
-
|
83
|
-
/**
|
84
|
-
* This function is used in pm_parse_stream to retrieve a line of input from a
|
85
|
-
* stream. It closely mirrors that of fgets so that fgets can be used as the
|
86
|
-
* default implementation.
|
87
|
-
*/
|
88
|
-
typedef char * (pm_parse_stream_fgets_t)(char *string, int size, void *stream);
|
89
|
-
|
90
|
-
/**
|
91
|
-
* Parse a stream of Ruby source and return the tree.
|
92
|
-
*
|
93
|
-
* @param parser The parser to use.
|
94
|
-
* @param buffer The buffer to use.
|
95
|
-
* @param stream The stream to parse.
|
96
|
-
* @param fgets The function to use to read from the stream.
|
97
|
-
* @param options The optional options to use when parsing.
|
98
|
-
* @return The AST representing the source.
|
99
|
-
*/
|
100
|
-
PRISM_EXPORTED_FUNCTION pm_node_t * pm_parse_stream(pm_parser_t *parser, pm_buffer_t *buffer, void *stream, pm_parse_stream_fgets_t *fgets, const pm_options_t *options);
|
101
|
-
|
102
|
-
// We optionally support serializing to a binary string. For systems that don't
|
103
|
-
// want or need this functionality, it can be turned off with the
|
104
|
-
// PRISM_EXCLUDE_SERIALIZATION define.
|
105
|
-
#ifndef PRISM_EXCLUDE_SERIALIZATION
|
106
|
-
|
107
|
-
/**
|
108
|
-
* Parse and serialize the AST represented by the source that is read out of the
|
109
|
-
* given stream into to the given buffer.
|
110
|
-
*
|
111
|
-
* @param buffer The buffer to serialize to.
|
112
|
-
* @param stream The stream to parse.
|
113
|
-
* @param fgets The function to use to read from the stream.
|
114
|
-
* @param data The optional data to pass to the parser.
|
115
|
-
*/
|
116
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize_parse_stream(pm_buffer_t *buffer, void *stream, pm_parse_stream_fgets_t *fgets, const char *data);
|
117
|
-
|
118
|
-
/**
|
119
|
-
* Serialize the given list of comments to the given buffer.
|
120
|
-
*
|
121
|
-
* @param parser The parser to serialize.
|
122
|
-
* @param list The list of comments to serialize.
|
123
|
-
* @param buffer The buffer to serialize to.
|
124
|
-
*/
|
125
|
-
void pm_serialize_comment_list(pm_parser_t *parser, pm_list_t *list, pm_buffer_t *buffer);
|
126
|
-
|
127
|
-
/**
|
128
|
-
* Serialize the name of the encoding to the buffer.
|
129
|
-
*
|
130
|
-
* @param encoding The encoding to serialize.
|
131
|
-
* @param buffer The buffer to serialize to.
|
132
|
-
*/
|
133
|
-
void pm_serialize_encoding(const pm_encoding_t *encoding, pm_buffer_t *buffer);
|
134
|
-
|
135
|
-
/**
|
136
|
-
* Serialize the encoding, metadata, nodes, and constant pool.
|
137
|
-
*
|
138
|
-
* @param parser The parser to serialize.
|
139
|
-
* @param node The node to serialize.
|
140
|
-
* @param buffer The buffer to serialize to.
|
141
|
-
*/
|
142
|
-
void pm_serialize_content(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer);
|
143
|
-
|
144
|
-
/**
|
145
|
-
* Serialize the AST represented by the given node to the given buffer.
|
146
|
-
*
|
147
|
-
* @param parser The parser to serialize.
|
148
|
-
* @param node The node to serialize.
|
149
|
-
* @param buffer The buffer to serialize to.
|
150
|
-
*/
|
151
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer);
|
152
|
-
|
153
|
-
/**
|
154
|
-
* Parse the given source to the AST and dump the AST to the given buffer.
|
155
|
-
*
|
156
|
-
* @param buffer The buffer to serialize to.
|
157
|
-
* @param source The source to parse.
|
158
|
-
* @param size The size of the source.
|
159
|
-
* @param data The optional data to pass to the parser.
|
160
|
-
*/
|
161
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize_parse(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
|
162
|
-
|
163
|
-
/**
|
164
|
-
* Parse and serialize the comments in the given source to the given buffer.
|
165
|
-
*
|
166
|
-
* @param buffer The buffer to serialize to.
|
167
|
-
* @param source The source to parse.
|
168
|
-
* @param size The size of the source.
|
169
|
-
* @param data The optional data to pass to the parser.
|
170
|
-
*/
|
171
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize_parse_comments(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
|
172
|
-
|
173
|
-
/**
|
174
|
-
* Lex the given source and serialize to the given buffer.
|
175
|
-
*
|
176
|
-
* @param source The source to lex.
|
177
|
-
* @param size The size of the source.
|
178
|
-
* @param buffer The buffer to serialize to.
|
179
|
-
* @param data The optional data to pass to the lexer.
|
180
|
-
*/
|
181
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize_lex(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
|
182
|
-
|
183
|
-
/**
|
184
|
-
* Parse and serialize both the AST and the tokens represented by the given
|
185
|
-
* source to the given buffer.
|
186
|
-
*
|
187
|
-
* @param buffer The buffer to serialize to.
|
188
|
-
* @param source The source to parse.
|
189
|
-
* @param size The size of the source.
|
190
|
-
* @param data The optional data to pass to the parser.
|
191
|
-
*/
|
192
|
-
PRISM_EXPORTED_FUNCTION void pm_serialize_parse_lex(pm_buffer_t *buffer, const uint8_t *source, size_t size, const char *data);
|
193
|
-
|
194
|
-
#endif
|
195
|
-
|
196
|
-
/**
|
197
|
-
* Parse the source and return true if it parses without errors or warnings.
|
198
|
-
*
|
199
|
-
* @param source The source to parse.
|
200
|
-
* @param size The size of the source.
|
201
|
-
* @param data The optional data to pass to the parser.
|
202
|
-
* @return True if the source parses without errors or warnings.
|
203
|
-
*/
|
204
|
-
PRISM_EXPORTED_FUNCTION bool pm_parse_success_p(const uint8_t *source, size_t size, const char *data);
|
205
|
-
|
206
|
-
/**
|
207
|
-
* Returns a string representation of the given token type.
|
208
|
-
*
|
209
|
-
* @param token_type The token type to convert to a string.
|
210
|
-
* @return A string representation of the given token type.
|
211
|
-
*/
|
212
|
-
PRISM_EXPORTED_FUNCTION const char * pm_token_type_name(pm_token_type_t token_type);
|
213
|
-
|
214
|
-
/**
|
215
|
-
* Returns the human name of the given token type.
|
216
|
-
*
|
217
|
-
* @param token_type The token type to convert to a human name.
|
218
|
-
* @return The human name of the given token type.
|
219
|
-
*/
|
220
|
-
const char * pm_token_type_human(pm_token_type_t token_type);
|
221
|
-
|
222
|
-
// We optionally support dumping to JSON. For systems that don't want or need
|
223
|
-
// this functionality, it can be turned off with the PRISM_EXCLUDE_JSON define.
|
224
|
-
#ifndef PRISM_EXCLUDE_JSON
|
225
|
-
|
226
|
-
/**
|
227
|
-
* Dump JSON to the given buffer.
|
228
|
-
*
|
229
|
-
* @param buffer The buffer to serialize to.
|
230
|
-
* @param parser The parser that parsed the node.
|
231
|
-
* @param node The node to serialize.
|
232
|
-
*/
|
233
|
-
PRISM_EXPORTED_FUNCTION void pm_dump_json(pm_buffer_t *buffer, const pm_parser_t *parser, const pm_node_t *node);
|
234
|
-
|
235
|
-
#endif
|
236
|
-
|
237
|
-
/**
|
238
|
-
* @mainpage
|
239
|
-
*
|
240
|
-
* Prism is a parser for the Ruby programming language. It is designed to be
|
241
|
-
* portable, error tolerant, and maintainable. It is written in C99 and has no
|
242
|
-
* dependencies. It is currently being integrated into
|
243
|
-
* [CRuby](https://github.com/ruby/ruby),
|
244
|
-
* [JRuby](https://github.com/jruby/jruby),
|
245
|
-
* [TruffleRuby](https://github.com/oracle/truffleruby),
|
246
|
-
* [Sorbet](https://github.com/sorbet/sorbet), and
|
247
|
-
* [Syntax Tree](https://github.com/ruby-syntax-tree/syntax_tree).
|
248
|
-
*
|
249
|
-
* @section getting-started Getting started
|
250
|
-
*
|
251
|
-
* If you're vendoring this project and compiling it statically then as long as
|
252
|
-
* you have a C99 compiler you will be fine. If you're linking against it as
|
253
|
-
* shared library, then you should compile with `-fvisibility=hidden` and
|
254
|
-
* `-DPRISM_EXPORT_SYMBOLS` to tell prism to make only its public interface
|
255
|
-
* visible.
|
256
|
-
*
|
257
|
-
* @section parsing Parsing
|
258
|
-
*
|
259
|
-
* In order to parse Ruby code, the structures and functions that you're going
|
260
|
-
* to want to use and be aware of are:
|
261
|
-
*
|
262
|
-
* * `pm_parser_t` - the main parser structure
|
263
|
-
* * `pm_parser_init` - initialize a parser
|
264
|
-
* * `pm_parse` - parse and return the root node
|
265
|
-
* * `pm_node_destroy` - deallocate the root node returned by `pm_parse`
|
266
|
-
* * `pm_parser_free` - free the internal memory of the parser
|
267
|
-
*
|
268
|
-
* Putting all of this together would look something like:
|
269
|
-
*
|
270
|
-
* ```c
|
271
|
-
* void parse(const uint8_t *source, size_t length) {
|
272
|
-
* pm_parser_t parser;
|
273
|
-
* pm_parser_init(&parser, source, length, NULL);
|
274
|
-
*
|
275
|
-
* pm_node_t *root = pm_parse(&parser);
|
276
|
-
* printf("PARSED!\n");
|
277
|
-
*
|
278
|
-
* pm_node_destroy(&parser, root);
|
279
|
-
* pm_parser_free(&parser);
|
280
|
-
* }
|
281
|
-
* ```
|
282
|
-
*
|
283
|
-
* All of the nodes "inherit" from `pm_node_t` by embedding those structures as
|
284
|
-
* their first member. This means you can downcast and upcast any node in the
|
285
|
-
* tree to a `pm_node_t`.
|
286
|
-
*
|
287
|
-
* @section serializing Serializing
|
288
|
-
*
|
289
|
-
* Prism provides the ability to serialize the AST and its related metadata into
|
290
|
-
* a binary format. This format is designed to be portable to different
|
291
|
-
* languages and runtimes so that you only need to make one FFI call in order to
|
292
|
-
* parse Ruby code. The structures and functions that you're going to want to
|
293
|
-
* use and be aware of are:
|
294
|
-
*
|
295
|
-
* * `pm_buffer_t` - a small buffer object that will hold the serialized AST
|
296
|
-
* * `pm_buffer_free` - free the memory associated with the buffer
|
297
|
-
* * `pm_serialize` - serialize the AST into a buffer
|
298
|
-
* * `pm_serialize_parse` - parse and serialize the AST into a buffer
|
299
|
-
*
|
300
|
-
* Putting all of this together would look something like:
|
301
|
-
*
|
302
|
-
* ```c
|
303
|
-
* void serialize(const uint8_t *source, size_t length) {
|
304
|
-
* pm_buffer_t buffer = { 0 };
|
305
|
-
*
|
306
|
-
* pm_serialize_parse(&buffer, source, length, NULL);
|
307
|
-
* printf("SERIALIZED!\n");
|
308
|
-
*
|
309
|
-
* pm_buffer_free(&buffer);
|
310
|
-
* }
|
311
|
-
* ```
|
312
|
-
*
|
313
|
-
* @section inspecting Inspecting
|
314
|
-
*
|
315
|
-
* Prism provides the ability to inspect the AST by pretty-printing nodes. You
|
316
|
-
* can do this with the `pm_prettyprint` function, which you would use like:
|
317
|
-
*
|
318
|
-
* ```c
|
319
|
-
* void prettyprint(const uint8_t *source, size_t length) {
|
320
|
-
* pm_parser_t parser;
|
321
|
-
* pm_parser_init(&parser, source, length, NULL);
|
322
|
-
*
|
323
|
-
* pm_node_t *root = pm_parse(&parser);
|
324
|
-
* pm_buffer_t buffer = { 0 };
|
325
|
-
*
|
326
|
-
* pm_prettyprint(&buffer, &parser, root);
|
327
|
-
* printf("%*.s\n", (int) buffer.length, buffer.value);
|
328
|
-
*
|
329
|
-
* pm_buffer_free(&buffer);
|
330
|
-
* pm_node_destroy(&parser, root);
|
331
|
-
* pm_parser_free(&parser);
|
332
|
-
* }
|
333
|
-
* ```
|
334
|
-
*/
|
335
|
-
|
336
|
-
#endif
|