Attempts to return a slice of <code>len</code> bytes of incoming data, possibly copied into buf, not consuming them (i.e.: a later read will return the same data).
Closes the transport.
Remove len bytes from the transport. This must always follow a borrow of at least len bytes, and should always succeed.
Flushes any pending data to be written.
Whether this transport is open.
Opens the transport for communications.
Tests whether there is more data to read or if the remote side is still open.
Attempts to fill the given buffer by reading data.
Fills the given buffer by reading data into it, failing if not enough data is available.
Must be called by clients when read is completed.
Writes the passed slice of data.
Must be called by clients when write is completed.
An entity data can be read from and/or written to.
A TTransport implementation may capable of either reading or writing, but not necessarily both.