class Seahorse::Client::BlockIO
def initialize(headers = nil, &block)
def initialize(headers = nil, &block) @headers = headers @block = block @size = 0 end
def read(bytes = nil, output_buffer = nil)
-
(String, nil)-
Parameters:
-
output_buffer(String) -- (nil) -
bytes(Integer) -- (nil)
def read(bytes = nil, output_buffer = nil) data = bytes ? nil : '' output_buffer ? output_buffer.replace(data || '') : data end
def size
-
(Integer)-
def size @size end
def write(chunk)
-
(Integer)-
Parameters:
-
chunk(String) --
def write(chunk) @block.call(chunk, @headers) ensure chunk.bytesize.tap { |chunk_size| @size += chunk_size } end