Return the latest installed spec for gem name
.
Sets extra_rdoc_files
to files
, ensuring it is an array.
Finds stub specifications matching a pattern in the record, optionally filtering out specs not matching the current platform
Return the latest installed spec in the record for gem name
.
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].
Tells ‘scan_while` to look for mismatched keyword/end-s
When scanning up, if we see more keywords then end-s it will stop. This might happen when scanning outside of a method body. the first scan line up would be a keyword and this setting would trigger a stop.
When scanning down, stop if there are more end-s than keywords.
Join lines with a trailing slash
source = <<~'EOM' it "code can be split" \ "across multiple lines" do EOM lines = CleanDocument.new(source: source).join_consecutive!.lines expect(lines[0].to_s).to eq(source) expect(lines[1].to_s).to eq("")
Performance optimization
Parsing with ripper is expensive If we know we don’t have any blocks with invalid syntax, then we know we cannot have found the incorrect syntax yet.
When an invalid block is added onto the frontier check document state
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
Discard changes that have not been committed and revert the last commit
Cannot revert the first commit
Returns the destination encoding name as a string.
Returns the destination encoding name as a string.
Returns URL-escaped string following RFC 3986.
Returns URL-unescaped string following RFC 3986.
Writes a number of random generated bytes (currently 1024) to filename which can be used to initialize the PRNG by calling ::load_random_file
in a later session.
Creates an RubyGems API to host
and path
with the given HTTP method
.
If allowed_push_host
metadata is present, then it will only allow that host.
Retrieves the pre-configured API key key
or terminates interaction with an error.