Choose from a list of options. question
is a prompt displayed above the list. list
is a list of option strings. Returns the pair [option_name, option_index].
Keeps track of what lines have been added to blocks and which are not yet visited.
When one element fully encapsulates another we remove the smaller block from the frontier. This prevents double expansions and all-around weird behavior. However this guarantee is quite expensive to maintain
Given that we know our syntax error exists somewhere in our frontier, we want to find the smallest possible set of blocks that contain all the syntax errors
Builds blocks from bottom up
Comes from ripper, called on every parse error, msg is a string
Invoked by Ruby’s core methods to run a blocking operation in a non-blocking way.
Minimal suggested implementation is:
def blocking_operation_wait(work) Thread.new(&work).join end
A convenience method, like object_group
, but also reformats the Object’s object_id.
Deprecation method to deprecate Rubygems commands
Deprecation method to deprecate Rubygems commands
Asks the user to answer question
with an answer from the given list
.
Add the –prerelease option to the option parser.
Marshal
dumps exit locations to the given filename.
Usage:
If --yjit-exit-locations
is passed, a file named “yjit_exit_locations.dump” will automatically be generated.
If you want to collect traces manually, call dump_exit_locations
directly.
Note that calling this in a script will generate stats after the dump is created, so the stats data may include exits from the dump itself.
In a script call:
at_exit do RubyVM::YJIT.dump_exit_locations("my_file.dump") end
Then run the file with the following options:
ruby --yjit --yjit-trace-exits test.rb
Once the code is done running, use Stackprof to read the dump file. See Stackprof documentation for options.
Returns the total bytes of the input data to the stream. FIXME
Returns the total bytes of the output data from the stream. FIXME
Are we doctoring a gem repository?