Method: External::Io#insert
- Defined in:
- lib/external/io.rb
#insert(src, range = 0..src.length, pos = nil) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/external/io.rb', line 66 def insert(src, range=0..src.length, pos=nil) self.pos = pos unless pos == nil start_pos = self.pos length_written = 0 src.flush src.pos = range.begin src.chunk(range) do |offset, length| length_written += write(src.read(length)) end end_pos = start_pos + length_written self.length = end_pos if end_pos > self.length length_written end |