summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2021-06-08 17:34:08 +0900
committerYusuke Endoh <mame@ruby-lang.org>2021-06-18 03:35:38 +0900
commitdfba87cd622f9699f54d1d0b8c057deb428874b6 (patch)
treebd07194e1c0dc96cd517cbf1e3c37389e5d48614 /internal
parentea6062898ad0d66ede0a1866028c0605c357e2cb (diff)
Make it possible to get AST::Node from Thread::Backtrace::Location
RubyVM::AST.of(Thread::Backtrace::Location) returns a node that corresponds to the location. Typically, the node is a method call, but not always. This change also includes iseq's dump/load support of node_ids for each instructions.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/4558
Diffstat (limited to 'internal')
-rw-r--r--internal/vm.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/internal/vm.h b/internal/vm.h
index 689b4fa61f..8251b09e98 100644
--- a/internal/vm.h
+++ b/internal/vm.h
@@ -111,6 +111,8 @@ int rb_backtrace_p(VALUE obj);
VALUE rb_backtrace_to_str_ary(VALUE obj);
VALUE rb_backtrace_to_location_ary(VALUE obj);
void rb_backtrace_each(VALUE (*iter)(VALUE recv, VALUE str), VALUE output);
+int rb_frame_info_p(VALUE obj);
+void rb_frame_info_get(VALUE obj, VALUE *path, int *node_id);
MJIT_SYMBOL_EXPORT_BEGIN
VALUE rb_ec_backtrace_object(const struct rb_execution_context_struct *ec);