pub struct ReadableSynchronousProxy { /* private fields */ }
Implementations§
source§impl ReadableSynchronousProxy
impl ReadableSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
sourcepub fn wait_for_event(&self, deadline: Time) -> Result<ReadableEvent, Error>
pub fn wait_for_event(&self, deadline: Time) -> Result<ReadableEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
sourcepub fn read(
&self,
count: u64,
___deadline: Time
) -> Result<ReadableReadResult, Error>
pub fn read( &self, count: u64, ___deadline: Time ) -> Result<ReadableReadResult, Error>
Reads up to ‘count’ bytes at the seek offset. The seek offset is moved forward by the number of bytes read.
Invariants
- The returned
data.length
will never be greater thancount
. - If
data.length
is less thancount
, it means that the seek offset has reached the end of file as part of this operation. - If
data.length
is zero whilecount
is not, it means that the seek offset is already at or beyond the end of file, and no data could be read. - If
count
is zero, the server should perform all the checks ensuring read access without actually read anything, and return an emptydata
vector.
This method requires the [Rights.READ_BYTES
] right.
Returns ZX_ERR_OUT_OF_RANGE
if count
is greater than MAX_TRANSFER_SIZE
.