class IO::Stream::Buffered

def self.open(path, mode = "r+", **options)

def self.open(path, mode = "r+", **options)
	stream = self.new(::File.open(path, mode), **options)
	
	return stream unless block_given?
	
	begin
		yield stream
	ensure
		stream.close
	end
end