From: "Earlopain (A S) via ruby-core" Date: 2024-09-26T16:17:05+00:00 Subject: [ruby-core:119303] [Ruby master Bug#20761] [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default Issue #20761 has been updated by Earlopain (A S). kddnewton (Kevin Newton) wrote in #note-1: > This is expected behavior. The instruction sequences will have different node ids, so it's not possible to retrieve the RubyVM::AbstractSyntaxTree representation of the AST. If you want to retrieve the Prism AST, you can do so using `Prism.parse` in the same way that error highlight does here: https://github.com/ruby/error_highlight/blob/452f78640c08ab277683416668a52d9fcfb6a26a/lib/error_highlight/base.rb#L57-L66. Thanks, I have already looked at that code since you linked to it in the PR that made this error. It seems to rely on a backtrace to understand which node to look for but is that possible if I just have a proc that doesn't raise by itself? I'd guess the proc does have a node id but I'm not sure how to retrieve it. ---------------------------------------- Bug #20761: [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default https://bugs.ruby-lang.org/issues/20761#change-109914 * Author: Earlopain (A S) * Status: Closed * ruby -v: 3.4-dev * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN ---------------------------------------- https://docs.ruby-lang.org/en/master/RubyVM/AbstractSyntaxTree.html#method-c-of ```rb RubyVM::AbstractSyntaxTree.of(proc {1 + 2}) # => :97:in 'RubyVM::AbstractSyntaxTree.of': cannot get AST for ISEQ compiled by prism (RuntimeError) ``` Same for the method example. Is this method even functional when prism is used, or is the prism gem able to do this somehow? -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/