22 lines
488 B
Ruby
Raw Normal View History

module Utils
def self.popen_read(*args, **options, &block)
popen(args, "rb", options, &block)
end
def self.popen_write(*args, **options, &block)
popen(args, "wb", options, &block)
end
def self.popen(args, mode, options = {})
IO.popen("-", mode) do |pipe|
if pipe
2016-09-23 22:02:23 +02:00
return pipe.read unless block_given?
yield pipe
else
options[:err] ||= :close unless ENV["HOMEBREW_STDERR"]
exec(*args, options)
end
end
end
end