Silk

silk/buffered_transfer

Profiles: aarch64-apple-darwin, aarch64-unknown-linux-gnu, aarch64-unknown-linux-gnu-no-libc, wasm32-unknown-unknown, x86_64-unknown-linux-gnu, x86_64-unknown-linux-gnu-no-libc.

Bounded byte transfer coupled to retained input and exact-prefix buffered output.

Import as BufferedTransfer with import silk.buffered_transfer { BufferedTransfer }.

Public declarations: 2.

TransferOutcome

pub struct TransferOutcome

One finite transfer result.

Field count

pub count: usize

The exact destination-accepted and source-consumed count.

Field endObserved

pub endObserved: bool

True only when the operation actually observed source end.

BufferedTransfer

pub struct BufferedTransfer

The owner of bounded exact-prefix transfer operations.

Associated function BufferedTransfer.transferAtMost

pub effect<'env> fn transferAtMost<'source: 'env, 'destination: 'env, SP: 'env, DP: 'env, 'life4: 'env, 'life5: 'env, 'env>(source: &'life4 mut silk/buffered_duplex.BufferedDuplex<'source, SP>, destination: &'life5 mut silk/buffered_duplex.BufferedDuplex<'destination, DP>, limit: usize, deadline: silk/option.Option<silk/system_clock.Instant>) -> TransferOutcome ! BufferError ? &mut MonotonicClock where &mut SP provides &ByteDuplex from &mut ByteDuplex | &mut MonotonicClock, &mut DP provides &ByteDuplex from &mut ByteDuplex | &mut MonotonicClock

Transfers no more than limit, consuming only destination-accepted bytes.

Associated function BufferedTransfer.transferExact

pub effect<'env> fn transferExact<'source: 'env, 'destination: 'env, SP: 'env, DP: 'env, 'life4: 'env, 'life5: 'env, 'env>(source: &'life4 mut silk/buffered_duplex.BufferedDuplex<'source, SP>, destination: &'life5 mut silk/buffered_duplex.BufferedDuplex<'destination, DP>, count: usize, deadline: silk/option.Option<silk/system_clock.Instant>) -> () ! BufferError ? &mut MonotonicClock where &mut SP provides &ByteDuplex from &mut ByteDuplex | &mut MonotonicClock, &mut DP provides &ByteDuplex from &mut ByteDuplex | &mut MonotonicClock

Transfers exactly count bytes or reports early end with the transferred prefix.

On this page