Actions
Feature #15560
openAdd support for read/write offsets.
Status:
Open
Priority:
Normal
Assignee:
-
Target version:
-
Description
It would be nice if read/write/send/recv/etc methods could accept an offset argument.
e.g.
socket = Socket.new(...) buffer = String.b socket.read(1024, buffer) socket.read(1024, buffer, offset: buffer.bytesize)
The same for write, e.g.
socket = Socket.new(...) buffer = String.b amount = socket.write(buffer) socket.write(buffer, offset: amount)
Could also include "size:" so that we can selectively write parts of the buffer.
Updated by shyouhei (Shyouhei Urabe) about 2 years ago
I can imagine it is useful for TCPSocket#write to accept only a part of a buffer crafted by somebody else. But I cannot think of any actual use case when #read is useful with that extension. Do you have one?
Updated by ioquatix (Samuel Williams) about 2 years ago
It is useful for read when user wants to read some data, and it wasn't enough (e.g. implementing gets
) so you need to read some more at the end of what you already have.
Updated by ioquatix (Samuel Williams) about 2 years ago
Also, rather than using a keyword argument, it could be a 3rd argument after buffer, since buffer must be supplied in order for this to work.
Updated by ioquatix (Samuel Williams) about 2 years ago
- Target version deleted (
2.7)
Actions