1
0
Fork 0
mirror of https://github.com/pry/pry.git synced 2022-11-09 12:35:05 -05:00
pry--pry/lib/pry/testable/utility.rb
Kyrylo Silin edaa1383f2 Require files from pry.rb; deps from each file that uses them
This change brings some order to how we require files. Previously, we required
app files from everywhere, including pry.rb. Now we require app files only from
pry.rb.

External and stdlib dependencies are required at places where they're used, not
globally.
2019-03-10 13:20:03 +02:00

32 lines
648 B
Ruby

require 'tempfile'
class Pry
module Testable
module Utility
#
# Creates a Tempfile then unlinks it after the block has yielded.
#
# @yieldparam [String] file
# The path of the temp file
#
# @return [void]
#
def temp_file(ext = '.rb')
file = Tempfile.open(['pry', ext])
yield file
ensure
file.close(true) if file
end
def unindent(*args)
Pry::Helpers::CommandHelpers.unindent(*args)
end
def inner_scope
catch(:inner_scope) do
yield -> { throw(:inner_scope, self) }
end
end
end
end
end