pub struct QuerierGetBuilder<'a, 'b, Handler> { /* private fields */ }
Expand description
A builder for initializing a query
to be sent from the querier.
§Examples
use zenoh::{query::{ConsolidationMode, QueryTarget}};
let session = zenoh::open(zenoh::Config::default()).await.unwrap();
let querier = session.declare_querier("key/expression")
.target(QueryTarget::All)
.consolidation(ConsolidationMode::None)
.await
.unwrap();
let replies = querier
.get()
.parameters("value>1")
.await
.unwrap();
while let Ok(reply) = replies.recv_async().await {
println!("Received {:?}", reply.result())
}
Implementations§
Source§impl<Handler> QuerierGetBuilder<'_, '_, Handler>
impl<Handler> QuerierGetBuilder<'_, '_, Handler>
pub fn source_info(self, source_info: SourceInfo) -> Self
Available on crate feature
unstable
only.pub fn attachment<T: Into<OptionZBytes>>(self, attachment: T) -> Self
Source§impl<Handler> QuerierGetBuilder<'_, '_, Handler>
impl<Handler> QuerierGetBuilder<'_, '_, Handler>
Source§impl<'a, 'b> QuerierGetBuilder<'a, 'b, DefaultHandler>
impl<'a, 'b> QuerierGetBuilder<'a, 'b, DefaultHandler>
Sourcepub fn callback<F>(
self,
callback: F,
) -> QuerierGetBuilder<'a, 'b, Callback<Reply>>
pub fn callback<F>( self, callback: F, ) -> QuerierGetBuilder<'a, 'b, Callback<Reply>>
Receive the replies for this query with a callback.
§Examples
use zenoh::{query::{ConsolidationMode, QueryTarget}};
let session = zenoh::open(zenoh::Config::default()).await.unwrap();
let querier = session.declare_querier("key/expression")
.target(QueryTarget::All)
.consolidation(ConsolidationMode::None)
.await
.unwrap();
let _ = querier
.get()
.callback(|reply| {println!("Received {:?}", reply.result());})
.await
.unwrap();
Sourcepub fn callback_mut<F>(
self,
callback: F,
) -> QuerierGetBuilder<'a, 'b, Callback<Reply>>
pub fn callback_mut<F>( self, callback: F, ) -> QuerierGetBuilder<'a, 'b, Callback<Reply>>
Receive the replies for this query with a mutable callback.
Using this guarantees that your callback will never be called concurrently.
If your callback is also accepted by the callback
method, we suggest you use it instead of callback_mut
.
§Examples
use zenoh::{query::{ConsolidationMode, QueryTarget}};
let session = zenoh::open(zenoh::Config::default()).await.unwrap();
let querier = session.declare_querier("key/expression")
.target(QueryTarget::All)
.consolidation(ConsolidationMode::None)
.await
.unwrap();
let mut n = 0;
let _ = querier
.get()
.callback_mut(move |reply| {n += 1;})
.await
.unwrap();
Sourcepub fn with<Handler>(
self,
handler: Handler,
) -> QuerierGetBuilder<'a, 'b, Handler>where
Handler: IntoHandler<Reply>,
pub fn with<Handler>(
self,
handler: Handler,
) -> QuerierGetBuilder<'a, 'b, Handler>where
Handler: IntoHandler<Reply>,
Receive the replies for this query with a Handler
.
§Examples
use zenoh::{query::{ConsolidationMode, QueryTarget}};
let session = zenoh::open(zenoh::Config::default()).await.unwrap();
let querier = session.declare_querier("key/expression")
.target(QueryTarget::All)
.consolidation(ConsolidationMode::None)
.await
.unwrap();
let replies = querier
.get()
.with(flume::bounded(32))
.await
.unwrap();
while let Ok(reply) = replies.recv_async().await {
println!("Received {:?}", reply.result());
}
Source§impl<'b, Handler> QuerierGetBuilder<'_, 'b, Handler>
impl<'b, Handler> QuerierGetBuilder<'_, 'b, Handler>
Sourcepub fn parameters<P>(self, parameters: P) -> Selfwhere
P: Into<Parameters<'b>>,
pub fn parameters<P>(self, parameters: P) -> Selfwhere
P: Into<Parameters<'b>>,
Set the query selector parameters.
Trait Implementations§
Source§impl<'a, 'b, Handler: Debug> Debug for QuerierGetBuilder<'a, 'b, Handler>
impl<'a, 'b, Handler: Debug> Debug for QuerierGetBuilder<'a, 'b, Handler>
Source§impl<Handler> IntoFuture for QuerierGetBuilder<'_, '_, Handler>
impl<Handler> IntoFuture for QuerierGetBuilder<'_, '_, Handler>
Source§type Output = <QuerierGetBuilder<'_, '_, Handler> as Resolvable>::To
type Output = <QuerierGetBuilder<'_, '_, Handler> as Resolvable>::To
The output that the future will produce on completion.
Source§type IntoFuture = Ready<<QuerierGetBuilder<'_, '_, Handler> as Resolvable>::To>
type IntoFuture = Ready<<QuerierGetBuilder<'_, '_, Handler> as Resolvable>::To>
Which kind of future are we turning this into?
Source§fn into_future(self) -> Self::IntoFuture
fn into_future(self) -> Self::IntoFuture
Creates a future from a value. Read more
Source§impl<Handler> Resolvable for QuerierGetBuilder<'_, '_, Handler>
impl<Handler> Resolvable for QuerierGetBuilder<'_, '_, Handler>
Source§impl<Handler> Wait for QuerierGetBuilder<'_, '_, Handler>
impl<Handler> Wait for QuerierGetBuilder<'_, '_, Handler>
Source§fn wait(self) -> <Self as Resolvable>::To
fn wait(self) -> <Self as Resolvable>::To
Synchronously execute and wait
Auto Trait Implementations§
impl<'a, 'b, Handler> Freeze for QuerierGetBuilder<'a, 'b, Handler>where
Handler: Freeze,
impl<'a, 'b, Handler> !RefUnwindSafe for QuerierGetBuilder<'a, 'b, Handler>
impl<'a, 'b, Handler> Send for QuerierGetBuilder<'a, 'b, Handler>where
Handler: Send,
impl<'a, 'b, Handler> Sync for QuerierGetBuilder<'a, 'b, Handler>where
Handler: Sync,
impl<'a, 'b, Handler> Unpin for QuerierGetBuilder<'a, 'b, Handler>where
Handler: Unpin,
impl<'a, 'b, Handler> !UnwindSafe for QuerierGetBuilder<'a, 'b, Handler>
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more