IO
wrapper that allows writing a limited amount of data
Writes data
onto the IO
, raising a FileOverflow
exception if the number of bytes will be more than limit
# File ruby-3.1.2/lib/rubygems/package/tar_writer.rb, line 40 def write(data) if data.bytesize + @written > @limit raise FileOverflow, "You tried to feed more data than fits in the file." end @io.write data @written += data.bytesize data.bytesize end