pub trait DictionaryEnumerateIteratorServerHandler<___T: Transport> {
// Required method
fn get_next(
&mut self,
sender: &ServerSender<DictionaryEnumerateIterator, ___T>,
request: Request<GetNext, ___T>,
responder: Responder<GetNext>,
) -> impl Future<Output = ()> + Send;
// Provided method
fn on_unknown_interaction(
&mut self,
sender: &ServerSender<DictionaryEnumerateIterator, ___T>,
ordinal: u64,
) -> impl Future<Output = ()> + Send { ... }
}
Expand description
A server handler for the DictionaryEnumerateIterator protocol.
See DictionaryEnumerateIterator
for more details.
Required Methods§
Sourcefn get_next(
&mut self,
sender: &ServerSender<DictionaryEnumerateIterator, ___T>,
request: Request<GetNext, ___T>,
responder: Responder<GetNext>,
) -> impl Future<Output = ()> + Send
fn get_next( &mut self, sender: &ServerSender<DictionaryEnumerateIterator, ___T>, request: Request<GetNext, ___T>, responder: Responder<GetNext>, ) -> impl Future<Output = ()> + Send
Returns the next batch of results for a [Dictionary.Enumerate] call, returning up to
limit
results. limit
can be at most MAX_DICTIONARY_ITERATOR_CHUNK.
The value of each of items
is a duplicate of the original capability
([CapabilityStore.Duplicate]), unless it could not be duplicated, it which case it will
be null.
Each returned capability will be assigned a monotonically increasing CapabilityId starting
from start_id
.
In addition to the items
, returns end_id
, which is one more than the highest id reserved
by [GetNext]. end_id
can be used as the start_id
for the next call to [GetNext].
If [GetNext] returns an error, the server will also close the channel.
Errors:
ID_ALREADY_EXISTS
if some id in the range[start_id, limit)
already exists in this store.INVALID_ARGS
iflimit
was0
or greater thanMAX_DICTIONARY_ITERATOR_CHUNK
.
Provided Methods§
fn on_unknown_interaction( &mut self, sender: &ServerSender<DictionaryEnumerateIterator, ___T>, ordinal: u64, ) -> impl Future<Output = ()> + Send
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.