#[repr(transparent)]pub struct Exclusive<T>where
T: ?Sized,{
inner: T,
}exclusive_wrapper)Expand description
Exclusive provides mutable access, also referred to as exclusive
access to the underlying value. However, it only permits immutable, or shared
access to the underlying value when that value is Sync.
While this may seem not very useful, it allows Exclusive to unconditionally
implement Sync. Indeed, the safety requirements of Sync state that for Exclusive
to be Sync, it must be sound to share across threads, that is, it must be sound
for &Exclusive to cross thread boundaries. By design, a &Exclusive<T> for non-Sync T
has no API whatsoever, making it useless, thus harmless, thus memory safe.
Certain constructs like Futures can only be used with exclusive access,
and are often Send but not Sync, so Exclusive can be used as hint to the
Rust compiler that something is Sync in practice.
§Examples
Using a non-Sync future prevents the wrapping struct from being Sync:
use core::cell::Cell;
async fn other() {}
fn assert_sync<T: Sync>(t: T) {}
struct State<F> {
future: F
}
assert_sync(State {
future: async {
let cell = Cell::new(1);
let cell_ref = &cell;
other().await;
let value = cell_ref.get();
}
});Exclusive ensures the struct is Sync without stripping the future of its
functionality:
#![feature(exclusive_wrapper)]
use core::cell::Cell;
use core::sync::Exclusive;
async fn other() {}
fn assert_sync<T: Sync>(t: T) {}
struct State<F> {
future: Exclusive<F>
}
assert_sync(State {
future: Exclusive::new(async {
let cell = Cell::new(1);
let cell_ref = &cell;
other().await;
let value = cell_ref.get();
})
});§Parallels with a mutex
In some sense, Exclusive can be thought of as a compile-time version of
a mutex, as the borrow-checker guarantees that only one &mut can exist
for any value. This is a parallel with the fact that
& and &mut references together can be thought of as a compile-time
version of a read-write lock.
Fields§
§inner: Texclusive_wrapper)Implementations§
Source§impl<T> Exclusive<T>where
T: ?Sized,
impl<T> Exclusive<T>where
T: ?Sized,
Sourcepub const fn get_mut(&mut self) -> &mut T
🔬This is a nightly-only experimental API. (exclusive_wrapper)
pub const fn get_mut(&mut self) -> &mut T
exclusive_wrapper)Gets exclusive access to the underlying value.
Sourcepub const fn get_pin_mut(self: Pin<&mut Exclusive<T>>) -> Pin<&mut T>
🔬This is a nightly-only experimental API. (exclusive_wrapper)
pub const fn get_pin_mut(self: Pin<&mut Exclusive<T>>) -> Pin<&mut T>
exclusive_wrapper)Gets pinned exclusive access to the underlying value.
Exclusive is considered to structurally pin the underlying
value, which means unpinned Exclusives can produce unpinned
access to the underlying value, but pinned Exclusives only
produce pinned access to the underlying value.
Sourcepub const fn from_mut(r: &mut T) -> &mut Exclusive<T> ⓘ
🔬This is a nightly-only experimental API. (exclusive_wrapper)
pub const fn from_mut(r: &mut T) -> &mut Exclusive<T> ⓘ
exclusive_wrapper)Build a mutable reference to an Exclusive<T> from
a mutable reference to a T. This allows you to skip
building an Exclusive with Exclusive::new.
Sourcepub const fn from_pin_mut(r: Pin<&mut T>) -> Pin<&mut Exclusive<T>>
🔬This is a nightly-only experimental API. (exclusive_wrapper)
pub const fn from_pin_mut(r: Pin<&mut T>) -> Pin<&mut Exclusive<T>>
exclusive_wrapper)Build a pinned mutable reference to an Exclusive<T> from
a pinned mutable reference to a T. This allows you to skip
building an Exclusive with Exclusive::new.
Trait Implementations§
Source§impl<R, G> Coroutine<R> for Exclusive<G>
impl<R, G> Coroutine<R> for Exclusive<G>
Source§type Yield = <G as Coroutine<R>>::Yield
type Yield = <G as Coroutine<R>>::Yield
coroutine_trait)Source§impl<T> Ord for Exclusive<T>
impl<T> Ord for Exclusive<T>
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl<T, U> PartialOrd<Exclusive<U>> for Exclusive<T>
impl<T, U> PartialOrd<Exclusive<U>> for Exclusive<T>
impl<T> Copy for Exclusive<T>
impl<T> Eq for Exclusive<T>
impl<T> StructuralPartialEq for Exclusive<T>
impl<T> Sync for Exclusive<T>where
T: ?Sized,
Auto Trait Implementations§
impl<T> Freeze for Exclusive<T>
impl<T> RefUnwindSafe for Exclusive<T>where
T: RefUnwindSafe + ?Sized,
impl<T> Send for Exclusive<T>
impl<T> Unpin for Exclusive<T>
impl<T> UnwindSafe for Exclusive<T>where
T: UnwindSafe + ?Sized,
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
§impl<F, V> AddAnyAttr for Fwhere
F: ReactiveFunction<Output = V>,
V: RenderHtml + 'static,
impl<F, V> AddAnyAttr for Fwhere
F: ReactiveFunction<Output = V>,
V: RenderHtml + 'static,
§type Output<SomeNewAttr: Attribute> = Box<dyn FnMut() -> <V as AddAnyAttr>::Output<<SomeNewAttr as Attribute>::CloneableOwned> + Send>
type Output<SomeNewAttr: Attribute> = Box<dyn FnMut() -> <V as AddAnyAttr>::Output<<SomeNewAttr as Attribute>::CloneableOwned> + Send>
§fn add_any_attr<NewAttr>(
self,
attr: NewAttr,
) -> <F as AddAnyAttr>::Output<NewAttr>
fn add_any_attr<NewAttr>( self, attr: NewAttr, ) -> <F as AddAnyAttr>::Output<NewAttr>
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
§impl<'c, E, F, T> AsyncHttpClient<'c> for T
impl<'c, E, F, T> AsyncHttpClient<'c> for T
§impl<F, V> AttributeValue for Fwhere
F: ReactiveFunction<Output = V>,
V: AttributeValue + 'static,
<V as AttributeValue>::State: 'static,
impl<F, V> AttributeValue for Fwhere
F: ReactiveFunction<Output = V>,
V: AttributeValue + 'static,
<V as AttributeValue>::State: 'static,
§type AsyncOutput = <V as AttributeValue>::AsyncOutput
type AsyncOutput = <V as AttributeValue>::AsyncOutput
§type State = RenderEffect<<V as AttributeValue>::State>
type State = RenderEffect<<V as AttributeValue>::State>
§type Cloneable = Arc<Mutex<dyn FnMut() -> V + Send>>
type Cloneable = Arc<Mutex<dyn FnMut() -> V + Send>>
FnMut() continues mutating the same
closure), but making a String cloneable does not necessarily need to make it an
Arc<str>, as two different clones of a String will still have the same value.§type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
'static. This is used for spreading across types when the
spreadable attribute needs to be owned. In some cases (&'a str to Arc<str>, etc.) the owned
cloneable type has worse performance than the cloneable type, so they are separate.§fn to_template(_key: &str, _buf: &mut String)
fn to_template(_key: &str, _buf: &mut String)
<template>.§fn hydrate<const FROM_SERVER: bool>(
self,
key: &str,
el: &Element,
) -> <F as AttributeValue>::State
fn hydrate<const FROM_SERVER: bool>( self, key: &str, el: &Element, ) -> <F as AttributeValue>::State
<template>.§fn build(self, el: &Element, key: &str) -> <F as AttributeValue>::State
fn build(self, el: &Element, key: &str) -> <F as AttributeValue>::State
§fn rebuild(self, key: &str, state: &mut <F as AttributeValue>::State)
fn rebuild(self, key: &str, state: &mut <F as AttributeValue>::State)
§fn into_cloneable(self) -> <F as AttributeValue>::Cloneable
fn into_cloneable(self) -> <F as AttributeValue>::Cloneable
§fn into_cloneable_owned(self) -> <F as AttributeValue>::CloneableOwned
fn into_cloneable_owned(self) -> <F as AttributeValue>::CloneableOwned
'static.§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§impl<V, Key, Sig, T> BindAttribute<Key, Sig, T> for Vwhere
V: AddAnyAttr,
Key: AttributeKey,
Sig: IntoSplitSignal<Value = T>,
T: FromEventTarget + AttributeValue + PartialEq + Sync + 'static,
Signal<BoolOrT<T>>: IntoProperty,
<Sig as IntoSplitSignal>::Read: Get<Value = T> + Send + Sync + Clone + 'static,
<Sig as IntoSplitSignal>::Write: Send + Clone + 'static,
Element: GetValue<T>,
impl<V, Key, Sig, T> BindAttribute<Key, Sig, T> for Vwhere
V: AddAnyAttr,
Key: AttributeKey,
Sig: IntoSplitSignal<Value = T>,
T: FromEventTarget + AttributeValue + PartialEq + Sync + 'static,
Signal<BoolOrT<T>>: IntoProperty,
<Sig as IntoSplitSignal>::Read: Get<Value = T> + Send + Sync + Clone + 'static,
<Sig as IntoSplitSignal>::Write: Send + Clone + 'static,
Element: GetValue<T>,
§type Output = <V as AddAnyAttr>::Output<Bind<Key, T, <Sig as IntoSplitSignal>::Read, <Sig as IntoSplitSignal>::Write>>
type Output = <V as AddAnyAttr>::Output<Bind<Key, T, <Sig as IntoSplitSignal>::Read, <Sig as IntoSplitSignal>::Write>>
§fn bind(
self,
key: Key,
signal: Sig,
) -> <V as BindAttribute<Key, Sig, T>>::Output
fn bind( self, key: Key, signal: Sig, ) -> <V as BindAttribute<Key, Sig, T>>::Output
Source§impl<C, F> BlendFunction<C> for F
impl<C, F> BlendFunction<C> for F
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
§impl<F> Callback for F
impl<F> Callback for F
§fn on_request(
self,
request: &Request<()>,
response: Response<()>,
) -> Result<Response<()>, Response<Option<String>>>
fn on_request( self, request: &Request<()>, response: Response<()>, ) -> Result<Response<()>, Response<Option<String>>>
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.§impl<F, View> ChooseView for F
impl<F, View> ChooseView for F
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Func, T> ComponentConstructor<(), T> for Funcwhere
Func: FnOnce() -> T,
impl<Func, T> ComponentConstructor<(), T> for Funcwhere
Func: FnOnce() -> T,
§impl<Func, T, P> ComponentConstructor<P, T> for Funcwhere
Func: FnOnce(P) -> T,
P: PropsOrNoPropsBuilder,
impl<Func, T, P> ComponentConstructor<P, T> for Funcwhere
Func: FnOnce(P) -> T,
P: PropsOrNoPropsBuilder,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
§impl<C, F> ContainsToken<C> for F
impl<C, F> ContainsToken<C> for F
§fn contains_token(&self, token: C) -> bool
fn contains_token(&self, token: C) -> bool
§impl<C, F> ContainsToken<C> for F
impl<C, F> ContainsToken<C> for F
§fn contains_token(&self, token: C) -> bool
fn contains_token(&self, token: C) -> bool
§impl<T, K, V> CustomAttribute<K, V> for Twhere
T: AddAnyAttr,
K: CustomAttributeKey,
V: AttributeValue,
impl<T, K, V> CustomAttribute<K, V> for Twhere
T: AddAnyAttr,
K: CustomAttributeKey,
V: AttributeValue,
§impl<F, TScore, T> CustomScorer<TScore> for F
impl<F, TScore, T> CustomScorer<TScore> for F
§fn segment_scorer(
&self,
segment_reader: &SegmentReader,
) -> Result<<F as CustomScorer<TScore>>::Child, TantivyError>
fn segment_scorer( &self, segment_reader: &SegmentReader, ) -> Result<<F as CustomScorer<TScore>>::Child, TantivyError>
§impl<F, TScore> CustomSegmentScorer<TScore> for F
impl<F, TScore> CustomSegmentScorer<TScore> for F
§impl<V, T, P, D> DirectiveAttribute<T, P, D> for Vwhere
V: AddAnyAttr,
D: IntoDirective<T, P>,
P: Clone + 'static,
T: 'static,
impl<V, T, P, D> DirectiveAttribute<T, P, D> for Vwhere
V: AddAnyAttr,
D: IntoDirective<T, P>,
P: Clone + 'static,
T: 'static,
§type Output = <V as AddAnyAttr>::Output<Directive<T, D, P>>
type Output = <V as AddAnyAttr>::Output<Directive<T, D, P>>
§fn directive(
self,
handler: D,
param: P,
) -> <V as DirectiveAttribute<T, P, D>>::Output
fn directive( self, handler: D, param: P, ) -> <V as DirectiveAttribute<T, P, D>>::Output
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Func> EffectFunction<(), NoParam> for Funcwhere
Func: FnMut(),
impl<Func> EffectFunction<(), NoParam> for Funcwhere
Func: FnMut(),
§impl<Func, T> EffectFunction<T, SingleParam> for Func
impl<Func, T> EffectFunction<T, SingleParam> for Func
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<F> ErrorSink for Fwhere
F: FnMut(ParseError),
impl<F> ErrorSink for Fwhere
F: FnMut(ParseError),
fn report_error(&mut self, error: ParseError)
§impl<F> EventReceiver for Fwhere
F: FnMut(Event),
impl<F> EventReceiver for Fwhere
F: FnMut(Event),
fn std_table_open(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn std_table_close(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn array_table_open(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn array_table_close(&mut self, span: Span, _error: &mut dyn ErrorSink)
§fn inline_table_open(&mut self, span: Span, _error: &mut dyn ErrorSink) -> bool
fn inline_table_open(&mut self, span: Span, _error: &mut dyn ErrorSink) -> bool
fn inline_table_close(&mut self, span: Span, _error: &mut dyn ErrorSink)
§fn array_open(&mut self, span: Span, _error: &mut dyn ErrorSink) -> bool
fn array_open(&mut self, span: Span, _error: &mut dyn ErrorSink) -> bool
fn array_close(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn simple_key( &mut self, span: Span, encoding: Option<Encoding>, _error: &mut dyn ErrorSink, )
fn key_sep(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn key_val_sep(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn scalar( &mut self, span: Span, encoding: Option<Encoding>, _error: &mut dyn ErrorSink, )
fn value_sep(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn whitespace(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn comment(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn newline(&mut self, span: Span, _error: &mut dyn ErrorSink)
fn error(&mut self, span: Span, _error: &mut dyn ErrorSink)
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.§impl<E, T, Request> FromReq<StreamingText, Request, E> for T
impl<E, T, Request> FromReq<StreamingText, Request, E> for T
Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.§impl<S, T> FromStream<T> for S
impl<S, T> FromStream<T> for S
§fn from_stream(stream: impl Stream<Item = T> + Send + 'static) -> S
fn from_stream(stream: impl Stream<Item = T> + Send + 'static) -> S
§fn from_stream_unsync(stream: impl Stream<Item = T> + 'static) -> S
fn from_stream_unsync(stream: impl Stream<Item = T> + 'static) -> S
§impl<T, Fut, F> FutureExt for F
impl<T, Fut, F> FutureExt for F
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn map<U, F>(self, f: F) -> Map<Self, F> ⓘ
fn map<U, F>(self, f: F) -> Map<Self, F> ⓘ
§fn map_into<U>(self) -> MapInto<Self, U> ⓘ
fn map_into<U>(self) -> MapInto<Self, U> ⓘ
§fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F> ⓘ
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F> ⓘ
f. Read more§fn left_future<B>(self) -> Either<Self, B> ⓘ
fn left_future<B>(self) -> Either<Self, B> ⓘ
§fn right_future<A>(self) -> Either<A, Self> ⓘ
fn right_future<A>(self) -> Either<A, Self> ⓘ
§fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
§fn flatten(self) -> Flatten<Self> ⓘ
fn flatten(self) -> Flatten<Self> ⓘ
§fn flatten_stream(self) -> FlattenStream<Self>
fn flatten_stream(self) -> FlattenStream<Self>
§fn fuse(self) -> Fuse<Self> ⓘwhere
Self: Sized,
fn fuse(self) -> Fuse<Self> ⓘwhere
Self: Sized,
poll will never again be called once it has
completed. This method can be used to turn any Future into a
FusedFuture. Read more§fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
§fn catch_unwind(self) -> CatchUnwind<Self> ⓘwhere
Self: Sized + UnwindSafe,
fn catch_unwind(self) -> CatchUnwind<Self> ⓘwhere
Self: Sized + UnwindSafe,
std only.std only.§fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)where
Self: Sized,
fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)where
Self: Sized,
channel and std only.() on completion and sends
its output to another future on a separate task. Read more§fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + Send + 'a>>
fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + Send + 'a>>
alloc only.§fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>where
Self: Sized + 'a,
fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>where
Self: Sized + 'a,
alloc only.§fn unit_error(self) -> UnitError<Self> ⓘwhere
Self: Sized,
fn unit_error(self) -> UnitError<Self> ⓘwhere
Self: Sized,
Future<Output = T> into a
TryFuture<Ok = T, Error = ()>.§fn never_error(self) -> NeverError<Self> ⓘwhere
Self: Sized,
fn never_error(self) -> NeverError<Self> ⓘwhere
Self: Sized,
Future<Output = T> into a
TryFuture<Ok = T, Error = Never>.§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_cancellation_token(
self,
cancellation_token: &CancellationToken,
) -> WithCancellationTokenFuture<'_, Self>where
Self: Sized,
fn with_cancellation_token(
self,
cancellation_token: &CancellationToken,
) -> WithCancellationTokenFuture<'_, Self>where
Self: Sized,
CancellationToken::run_until_cancelled],
but with the advantage that it is easier to write fluent call chains. Read more§fn with_cancellation_token_owned(
self,
cancellation_token: CancellationToken,
) -> WithCancellationTokenFutureOwned<Self>where
Self: Sized,
fn with_cancellation_token_owned(
self,
cancellation_token: CancellationToken,
) -> WithCancellationTokenFutureOwned<Self>where
Self: Sized,
CancellationToken::run_until_cancelled_owned],
but with the advantage that it is easier to write fluent call chains. Read more§impl<F, Fut, Res, S> Handler<((),), S> for F
impl<F, Fut, Res, S> Handler<((),), S> for F
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
_req: Request<Body>,
_state: S,
) -> <F as Handler<((),), S>>::Future
fn call( self, _req: Request<Body>, _state: S, ) -> <F as Handler<((),), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1> Handler<(M, T1), S> for F
impl<F, Fut, S, Res, M, T1> Handler<(M, T1), S> for F
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2> Handler<(M, T1, T2), S> for Fwhere
F: FnOnce(T1, T2) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2> Handler<(M, T1, T2), S> for Fwhere
F: FnOnce(T1, T2) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3> Handler<(M, T1, T2, T3), S> for Fwhere
F: FnOnce(T1, T2, T3) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3> Handler<(M, T1, T2, T3), S> for Fwhere
F: FnOnce(T1, T2, T3) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4> Handler<(M, T1, T2, T3, T4), S> for Fwhere
F: FnOnce(T1, T2, T3, T4) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4> Handler<(M, T1, T2, T3, T4), S> for Fwhere
F: FnOnce(T1, T2, T3, T4) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5> Handler<(M, T1, T2, T3, T4, T5), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5> Handler<(M, T1, T2, T3, T4, T5), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6> Handler<(M, T1, T2, T3, T4, T5, T6), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6> Handler<(M, T1, T2, T3, T4, T5, T6), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7> Handler<(M, T1, T2, T3, T4, T5, T6, T7), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7> Handler<(M, T1, T2, T3, T4, T5, T6, T7), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
T16: FromRequest<S, M> + Send,
impl<F, Fut, S, Res, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), S> for Fwhere
F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> Fut + Clone + Send + Sync + 'static,
Fut: Future<Output = Res> + Send,
S: Send + Sync + 'static,
Res: IntoResponse,
T1: FromRequestParts<S> + Send,
T2: FromRequestParts<S> + Send,
T3: FromRequestParts<S> + Send,
T4: FromRequestParts<S> + Send,
T5: FromRequestParts<S> + Send,
T6: FromRequestParts<S> + Send,
T7: FromRequestParts<S> + Send,
T8: FromRequestParts<S> + Send,
T9: FromRequestParts<S> + Send,
T10: FromRequestParts<S> + Send,
T11: FromRequestParts<S> + Send,
T12: FromRequestParts<S> + Send,
T13: FromRequestParts<S> + Send,
T14: FromRequestParts<S> + Send,
T15: FromRequestParts<S> + Send,
T16: FromRequest<S, M> + Send,
§type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
type Future = Pin<Box<dyn Future<Output = Response<Body>> + Send>>
§fn call(
self,
req: Request<Body>,
state: S,
) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), S>>::Future
fn call( self, req: Request<Body>, state: S, ) -> <F as Handler<(M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16), S>>::Future
§fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
fn layer<L>(self, layer: L) -> Layered<L, Self, T, S>where
L: Layer<HandlerService<Self, T, S>> + Clone,
<L as Layer<HandlerService<Self, T, S>>>::Service: Service<Request<Body>>,
tower::Layer] to the handler. Read more§fn with_state(self, state: S) -> HandlerService<Self, T, S>
fn with_state(self, state: S) -> HandlerService<Self, T, S>
Service] by providing the state§impl<H, T> HandlerWithoutStateExt<T> for H
impl<H, T> HandlerWithoutStateExt<T> for H
§fn into_service(self) -> HandlerService<H, T, ()>
fn into_service(self) -> HandlerService<H, T, ()>
Service] and no state.§fn into_make_service(self) -> IntoMakeService<HandlerService<H, T, ()>>
fn into_make_service(self) -> IntoMakeService<HandlerService<H, T, ()>>
MakeService and no state. Read more§fn into_make_service_with_connect_info<C>(
self,
) -> IntoMakeServiceWithConnectInfo<HandlerService<H, T, ()>, C>
fn into_make_service_with_connect_info<C>( self, ) -> IntoMakeServiceWithConnectInfo<HandlerService<H, T, ()>, C>
tokio only.MakeService which stores information
about the incoming connection and has no state. Read more§impl<F, V> InnerHtmlValue for Fwhere
F: ReactiveFunction<Output = V>,
V: InnerHtmlValue + 'static,
<V as InnerHtmlValue>::State: 'static,
impl<F, V> InnerHtmlValue for Fwhere
F: ReactiveFunction<Output = V>,
V: InnerHtmlValue + 'static,
<V as InnerHtmlValue>::State: 'static,
§type AsyncOutput = <V as InnerHtmlValue>::AsyncOutput
type AsyncOutput = <V as InnerHtmlValue>::AsyncOutput
§type State = RenderEffect<<V as InnerHtmlValue>::State>
type State = RenderEffect<<V as InnerHtmlValue>::State>
§type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
'static.§fn to_template(_buf: &mut String)
fn to_template(_buf: &mut String)
<template>.§fn hydrate<const FROM_SERVER: bool>(
self,
el: &Element,
) -> <F as InnerHtmlValue>::State
fn hydrate<const FROM_SERVER: bool>( self, el: &Element, ) -> <F as InnerHtmlValue>::State
<template>.§fn build(self, el: &Element) -> <F as InnerHtmlValue>::State
fn build(self, el: &Element) -> <F as InnerHtmlValue>::State
§fn into_cloneable(self) -> <F as InnerHtmlValue>::Cloneable
fn into_cloneable(self) -> <F as InnerHtmlValue>::Cloneable
§fn into_cloneable_owned(self) -> <F as InnerHtmlValue>::CloneableOwned
fn into_cloneable_owned(self) -> <F as InnerHtmlValue>::CloneableOwned
§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.§impl<T> IntoAny for Twhere
T: Send + RenderHtml,
impl<T> IntoAny for Twhere
T: Send + RenderHtml,
§impl<T> IntoAttributeValue for Twhere
T: AttributeValue,
impl<T> IntoAttributeValue for Twhere
T: AttributeValue,
§fn into_attribute_value(self) -> <T as IntoAttributeValue>::Output
fn into_attribute_value(self) -> <T as IntoAttributeValue>::Output
Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.§impl<T> IntoChooseViewMaybeErased for T
impl<T> IntoChooseViewMaybeErased for T
§fn into_maybe_erased(self) -> <T as IntoChooseViewMaybeErased>::Output
fn into_maybe_erased(self) -> <T as IntoChooseViewMaybeErased>::Output
§impl<F, C> IntoClass for Fwhere
F: ReactiveFunction<Output = C>,
C: IntoClass + 'static,
<C as IntoClass>::State: 'static,
impl<F, C> IntoClass for Fwhere
F: ReactiveFunction<Output = C>,
C: IntoClass + 'static,
<C as IntoClass>::State: 'static,
§type AsyncOutput = <C as IntoClass>::AsyncOutput
type AsyncOutput = <C as IntoClass>::AsyncOutput
§type State = RenderEffect<<C as IntoClass>::State>
type State = RenderEffect<<C as IntoClass>::State>
§type CloneableOwned = Arc<Mutex<dyn FnMut() -> C + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> C + Send>>
'static.§fn hydrate<const FROM_SERVER: bool>(
self,
el: &Element,
) -> <F as IntoClass>::State
fn hydrate<const FROM_SERVER: bool>( self, el: &Element, ) -> <F as IntoClass>::State
<template>.§fn build(self, el: &Element) -> <F as IntoClass>::State
fn build(self, el: &Element) -> <F as IntoClass>::State
§fn into_cloneable(self) -> <F as IntoClass>::Cloneable
fn into_cloneable(self) -> <F as IntoClass>::Cloneable
§fn into_cloneable_owned(self) -> <F as IntoClass>::CloneableOwned
fn into_cloneable_owned(self) -> <F as IntoClass>::CloneableOwned
§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§async fn resolve(self) -> <F as IntoClass>::AsyncOutput
async fn resolve(self) -> <F as IntoClass>::AsyncOutput
§fn reset(state: &mut <F as IntoClass>::State)
fn reset(state: &mut <F as IntoClass>::State)
§const MIN_LENGTH: usize = _
const MIN_LENGTH: usize = _
§fn should_overwrite(&self) -> bool
fn should_overwrite(&self) -> bool
true for class="..." attributes, false for class:name=value directives.§fn to_template(class: &mut String)
fn to_template(class: &mut String)
<template>.§impl<T, U> IntoClass for Twhere
T: Fn() -> U + 'static,
U: IntoClassValue,
impl<T, U> IntoClass for Twhere
T: Fn() -> U + 'static,
U: IntoClassValue,
fn into_class(self) -> Class
Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
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> ⓘ
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> ⓘ
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 moreSource§impl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
Source§type IntoFuture = F
type IntoFuture = F
Source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
§impl<T> IntoMaybeErased for Twhere
T: RenderHtml,
impl<T> IntoMaybeErased for Twhere
T: RenderHtml,
§fn into_maybe_erased(self) -> <T as IntoMaybeErased>::Output
fn into_maybe_erased(self) -> <T as IntoMaybeErased>::Output
§impl<T, F> IntoOptionGetter<T, FunctionMarker> for F
impl<T, F> IntoOptionGetter<T, FunctionMarker> for F
§fn into_option_getter(self) -> OptionGetter<T>
fn into_option_getter(self) -> OptionGetter<T>
OptionGetter.§impl<F, V> IntoProperty for Fwhere
F: ReactiveFunction<Output = V>,
V: IntoProperty + 'static,
<V as IntoProperty>::State: 'static,
impl<F, V> IntoProperty for Fwhere
F: ReactiveFunction<Output = V>,
V: IntoProperty + 'static,
<V as IntoProperty>::State: 'static,
§type State = RenderEffect<<V as IntoProperty>::State>
type State = RenderEffect<<V as IntoProperty>::State>
§type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> V + Send>>
'static.§fn hydrate<const FROM_SERVER: bool>(
self,
el: &Element,
key: &str,
) -> <F as IntoProperty>::State
fn hydrate<const FROM_SERVER: bool>( self, el: &Element, key: &str, ) -> <F as IntoProperty>::State
§fn build(self, el: &Element, key: &str) -> <F as IntoProperty>::State
fn build(self, el: &Element, key: &str) -> <F as IntoProperty>::State
§fn rebuild(self, state: &mut <F as IntoProperty>::State, key: &str)
fn rebuild(self, state: &mut <F as IntoProperty>::State, key: &str)
§fn into_cloneable(self) -> <F as IntoProperty>::Cloneable
fn into_cloneable(self) -> <F as IntoProperty>::Cloneable
§fn into_cloneable_owned(self) -> <F as IntoProperty>::CloneableOwned
fn into_cloneable_owned(self) -> <F as IntoProperty>::CloneableOwned
§impl<T, F> IntoReactiveValue<ArcSignal<Option<T>>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for F
impl<T, F> IntoReactiveValue<ArcSignal<Option<T>>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for F
§fn into_reactive_value(self) -> ArcSignal<Option<T>>
fn into_reactive_value(self) -> ArcSignal<Option<T>>
self into a T.§impl<T, F> IntoReactiveValue<ArcSignal<Option<T>, LocalStorage>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
impl<T, F> IntoReactiveValue<ArcSignal<Option<T>, LocalStorage>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
§fn into_reactive_value(self) -> ArcSignal<Option<T>, LocalStorage>
fn into_reactive_value(self) -> ArcSignal<Option<T>, LocalStorage>
self into a T.§impl<F> IntoReactiveValue<ArcSignal<String>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
impl<F> IntoReactiveValue<ArcSignal<String>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
§fn into_reactive_value(self) -> ArcSignal<String>
fn into_reactive_value(self) -> ArcSignal<String>
self into a T.§impl<F> IntoReactiveValue<ArcSignal<String, LocalStorage>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
impl<F> IntoReactiveValue<ArcSignal<String, LocalStorage>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
§fn into_reactive_value(self) -> ArcSignal<String, LocalStorage>
fn into_reactive_value(self) -> ArcSignal<String, LocalStorage>
self into a T.§impl<T, F> IntoReactiveValue<ArcSignal<T>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for F
impl<T, F> IntoReactiveValue<ArcSignal<T>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for F
§fn into_reactive_value(self) -> ArcSignal<T>
fn into_reactive_value(self) -> ArcSignal<T>
self into a T.§impl<T, F> IntoReactiveValue<ArcSignal<T, LocalStorage>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
impl<T, F> IntoReactiveValue<ArcSignal<T, LocalStorage>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
§fn into_reactive_value(self) -> ArcSignal<T, LocalStorage>
fn into_reactive_value(self) -> ArcSignal<T, LocalStorage>
self into a T.§impl<I, O, F> IntoReactiveValue<Callback<I, O>, __IntoReactiveValueMarkerCallbackSingleParam> for F
impl<I, O, F> IntoReactiveValue<Callback<I, O>, __IntoReactiveValueMarkerCallbackSingleParam> for F
§fn into_reactive_value(self) -> Callback<I, O>
fn into_reactive_value(self) -> Callback<I, O>
self into a T.§impl<I, F> IntoReactiveValue<Callback<I, String>, __IntoReactiveValueMarkerCallbackStrOutputToString> for F
impl<I, F> IntoReactiveValue<Callback<I, String>, __IntoReactiveValueMarkerCallbackStrOutputToString> for F
§fn into_reactive_value(self) -> Callback<I, String>
fn into_reactive_value(self) -> Callback<I, String>
self into a T.§impl<T, F> IntoReactiveValue<Signal<Option<T>>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for F
impl<T, F> IntoReactiveValue<Signal<Option<T>>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for F
§fn into_reactive_value(self) -> Signal<Option<T>>
fn into_reactive_value(self) -> Signal<Option<T>>
self into a T.§impl<T, F> IntoReactiveValue<Signal<Option<T>, LocalStorage>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
impl<T, F> IntoReactiveValue<Signal<Option<T>, LocalStorage>, __IntoReactiveValueMarkerOptionalSignalFromReactiveClosureAlways> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
§fn into_reactive_value(self) -> Signal<Option<T>, LocalStorage>
fn into_reactive_value(self) -> Signal<Option<T>, LocalStorage>
self into a T.§impl<F> IntoReactiveValue<Signal<String>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
impl<F> IntoReactiveValue<Signal<String>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
§fn into_reactive_value(self) -> Signal<String>
fn into_reactive_value(self) -> Signal<String>
self into a T.§impl<F> IntoReactiveValue<Signal<String, LocalStorage>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
impl<F> IntoReactiveValue<Signal<String, LocalStorage>, __IntoReactiveValueMarkerSignalStrOutputToString> for F
§fn into_reactive_value(self) -> Signal<String, LocalStorage>
fn into_reactive_value(self) -> Signal<String, LocalStorage>
self into a T.§impl<T, F> IntoReactiveValue<Signal<T>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for F
impl<T, F> IntoReactiveValue<Signal<T>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for F
§fn into_reactive_value(self) -> Signal<T>
fn into_reactive_value(self) -> Signal<T>
self into a T.§impl<T, F> IntoReactiveValue<Signal<T, LocalStorage>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
impl<T, F> IntoReactiveValue<Signal<T, LocalStorage>, __IntoReactiveValueMarkerSignalFromReactiveClosure> for Fwhere
T: 'static,
F: Fn() -> T + 'static,
§fn into_reactive_value(self) -> Signal<T, LocalStorage>
fn into_reactive_value(self) -> Signal<T, LocalStorage>
self into a T.§impl<T, I> IntoReactiveValue<T, __IntoReactiveValueMarkerBaseCase> for Iwhere
I: Into<T>,
impl<T, I> IntoReactiveValue<T, __IntoReactiveValueMarkerBaseCase> for Iwhere
I: Into<T>,
§fn into_reactive_value(self) -> T
fn into_reactive_value(self) -> T
self into a T.§impl<I, O, F> IntoReactiveValue<UnsyncCallback<I, O>, __IntoReactiveValueMarkerCallbackSingleParam> for Fwhere
F: Fn(I) -> O + 'static,
impl<I, O, F> IntoReactiveValue<UnsyncCallback<I, O>, __IntoReactiveValueMarkerCallbackSingleParam> for Fwhere
F: Fn(I) -> O + 'static,
§fn into_reactive_value(self) -> UnsyncCallback<I, O>
fn into_reactive_value(self) -> UnsyncCallback<I, O>
self into a T.§impl<I, F> IntoReactiveValue<UnsyncCallback<I, String>, __IntoReactiveValueMarkerCallbackStrOutputToString> for F
impl<I, F> IntoReactiveValue<UnsyncCallback<I, String>, __IntoReactiveValueMarkerCallbackStrOutputToString> for F
§fn into_reactive_value(self) -> UnsyncCallback<I, String>
fn into_reactive_value(self) -> UnsyncCallback<I, String>
self into a T.§impl<T> IntoRender for Twhere
T: Render,
impl<T> IntoRender for Twhere
T: Render,
§fn into_render(self) -> <T as IntoRender>::Output
fn into_render(self) -> <T as IntoRender>::Output
§impl<F, T, S> IntoSignalSetter<T, S> for F
impl<F, T, S> IntoSignalSetter<T, S> for F
§fn into_signal_setter(self) -> SignalSetter<T, S>
fn into_signal_setter(self) -> SignalSetter<T, S>
self, returning SignalSetter<T>.Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.§impl<F, C> IntoStyle for Fwhere
F: ReactiveFunction<Output = C>,
C: IntoStyle + 'static,
<C as IntoStyle>::State: 'static,
impl<F, C> IntoStyle for Fwhere
F: ReactiveFunction<Output = C>,
C: IntoStyle + 'static,
<C as IntoStyle>::State: 'static,
§type AsyncOutput = <C as IntoStyle>::AsyncOutput
type AsyncOutput = <C as IntoStyle>::AsyncOutput
§type State = RenderEffect<<C as IntoStyle>::State>
type State = RenderEffect<<C as IntoStyle>::State>
§type CloneableOwned = Arc<Mutex<dyn FnMut() -> C + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> C + Send>>
'static.§fn hydrate<const FROM_SERVER: bool>(
self,
el: &Element,
) -> <F as IntoStyle>::State
fn hydrate<const FROM_SERVER: bool>( self, el: &Element, ) -> <F as IntoStyle>::State
<template>.§fn build(self, el: &Element) -> <F as IntoStyle>::State
fn build(self, el: &Element) -> <F as IntoStyle>::State
§fn into_cloneable(self) -> <F as IntoStyle>::Cloneable
fn into_cloneable(self) -> <F as IntoStyle>::Cloneable
§fn into_cloneable_owned(self) -> <F as IntoStyle>::CloneableOwned
fn into_cloneable_owned(self) -> <F as IntoStyle>::CloneableOwned
§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§impl<F, S> IntoStyleValue for Fwhere
F: ReactiveFunction<Output = S>,
S: IntoStyleValue + 'static,
impl<F, S> IntoStyleValue for Fwhere
F: ReactiveFunction<Output = S>,
S: IntoStyleValue + 'static,
§type AsyncOutput = F
type AsyncOutput = F
§type State = (Arc<str>, RenderEffect<<S as IntoStyleValue>::State>)
type State = (Arc<str>, RenderEffect<<S as IntoStyleValue>::State>)
§type CloneableOwned = Arc<Mutex<dyn FnMut() -> S + Send>>
type CloneableOwned = Arc<Mutex<dyn FnMut() -> S + Send>>
'static.§fn build(
self,
style: &CssStyleDeclaration,
name: &str,
) -> <F as IntoStyleValue>::State
fn build( self, style: &CssStyleDeclaration, name: &str, ) -> <F as IntoStyleValue>::State
§fn rebuild(
self,
style: &CssStyleDeclaration,
name: &str,
state: &mut <F as IntoStyleValue>::State,
)
fn rebuild( self, style: &CssStyleDeclaration, name: &str, state: &mut <F as IntoStyleValue>::State, )
§fn hydrate(
self,
style: &CssStyleDeclaration,
name: &str,
) -> <F as IntoStyleValue>::State
fn hydrate( self, style: &CssStyleDeclaration, name: &str, ) -> <F as IntoStyleValue>::State
<template>.§fn into_cloneable(self) -> <F as IntoStyleValue>::Cloneable
fn into_cloneable(self) -> <F as IntoStyleValue>::Cloneable
§fn into_cloneable_owned(self) -> <F as IntoStyleValue>::CloneableOwned
fn into_cloneable_owned(self) -> <F as IntoStyleValue>::CloneableOwned
§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§impl<T, M> MakeExt<T> for Mwhere
M: MakeVisitor<T> + Sealed<MakeExtMarker<T>>,
impl<T, M> MakeExt<T> for Mwhere
M: MakeVisitor<T> + Sealed<MakeExtMarker<T>>,
§fn debug_alt(self) -> Alt<Self>
fn debug_alt(self) -> Alt<Self>
self so that any fmt::Debug fields are recorded using the
alternate formatter ({:#?}).§fn display_messages(self) -> Messages<Self>
fn display_messages(self) -> Messages<Self>
self so that any string fields named “message” are recorded
using fmt::Display.§impl<F, B> MakeSpan<B> for F
impl<F, B> MakeSpan<B> for F
§impl<T, V, F> MakeVisitor<T> for Fwhere
F: Fn(T) -> V,
V: Visit,
impl<T, V, F> MakeVisitor<T> for Fwhere
F: Fn(T) -> V,
V: Visit,
§fn make_visitor(&self, target: T) -> <F as MakeVisitor<T>>::Visitor
fn make_visitor(&self, target: T) -> <F as MakeVisitor<T>>::Visitor
target.§impl<'a, F, W> MakeWriter<'a> for F
impl<'a, F, W> MakeWriter<'a> for F
§type Writer = W
type Writer = W
io::Write implementation returned by make_writer.§fn make_writer(&'a self) -> <F as MakeWriter<'a>>::Writer
fn make_writer(&'a self) -> <F as MakeWriter<'a>>::Writer
§fn make_writer_for(&'a self, meta: &Metadata<'_>) -> Self::Writer
fn make_writer_for(&'a self, meta: &Metadata<'_>) -> Self::Writer
§impl<'a, M> MakeWriterExt<'a> for Mwhere
M: MakeWriter<'a>,
impl<'a, M> MakeWriterExt<'a> for Mwhere
M: MakeWriter<'a>,
§fn with_max_level(self, level: Level) -> WithMaxLevel<Self>where
Self: Sized,
fn with_max_level(self, level: Level) -> WithMaxLevel<Self>where
Self: Sized,
§fn with_min_level(self, level: Level) -> WithMinLevel<Self>where
Self: Sized,
fn with_min_level(self, level: Level) -> WithMinLevel<Self>where
Self: Sized,
§fn with_filter<F>(self, filter: F) -> WithFilter<Self, F>
fn with_filter<F>(self, filter: F) -> WithFilter<Self, F>
§fn or_else<W, B>(self, other: B) -> OrElse<Self, B>
fn or_else<W, B>(self, other: B) -> OrElse<Self, B>
self with another type implementing [MakeWriter], returning
a new [MakeWriter] that calls other’s make_writer if self’s
make_writer returns OptionalWriter::none. Read moreSource§impl<F> MaybeTriple for F
impl<F> MaybeTriple for F
Source§fn add_triple(&mut self, quad: impl FnOnce() -> Triple)
fn add_triple(&mut self, quad: impl FnOnce() -> Triple)
rdf only.§impl<B, F> OnBodyChunk<B> for F
impl<B, F> OnBodyChunk<B> for F
§fn on_body_chunk(&mut self, chunk: &B, latency: Duration, span: &Span)
fn on_body_chunk(&mut self, chunk: &B, latency: Duration, span: &Span)
§impl<F> OnEos for F
impl<F> OnEos for F
§impl<F> OnFailedUpgrade for F
impl<F> OnFailedUpgrade for F
§impl<F, FailureClass> OnFailure<FailureClass> for F
impl<F, FailureClass> OnFailure<FailureClass> for F
§fn on_failure(
&mut self,
failure_classification: FailureClass,
latency: Duration,
span: &Span,
)
fn on_failure( &mut self, failure_classification: FailureClass, latency: Duration, span: &Span, )
§impl<B, F> OnRequest<B> for F
impl<B, F> OnRequest<B> for F
§fn on_request(&mut self, request: &Request<B>, span: &Span)
fn on_request(&mut self, request: &Request<B>, span: &Span)
§impl<B, F> OnResponse<B> for F
impl<B, F> OnResponse<B> for F
§fn on_response(self, response: &Response<B>, latency: Duration, span: &Span)
fn on_response(self, response: &Response<B>, latency: Duration, span: &Span)
§impl<'a, I, O, E, F> Parser<I, O, E> for F
impl<'a, I, O, E, F> Parser<I, O, E> for F
§fn parse(&mut self, i: I) -> Result<(I, O), Err<E>>
fn parse(&mut self, i: I) -> Result<(I, O), Err<E>>
Result containing
either the remaining input and the output value, or an error§fn flat_map<G, H, O2>(self, g: G) -> FlatMap<Self, G, O>
fn flat_map<G, H, O2>(self, g: G) -> FlatMap<Self, G, O>
§fn and_then<G, O2>(self, g: G) -> AndThen<Self, G, O>where
G: Parser<O, O2, E>,
Self: Sized,
fn and_then<G, O2>(self, g: G) -> AndThen<Self, G, O>where
G: Parser<O, O2, E>,
Self: Sized,
§fn and<G, O2>(self, g: G) -> And<Self, G>where
G: Parser<I, O2, E>,
Self: Sized,
fn and<G, O2>(self, g: G) -> And<Self, G>where
G: Parser<I, O2, E>,
Self: Sized,
§impl<I, O, E, F> Parser<I, O, E> for F
impl<I, O, E, F> Parser<I, O, E> for F
§fn parse_next(&mut self, i: &mut I) -> Result<O, E>
fn parse_next(&mut self, i: &mut I) -> Result<O, E>
Stream], turning it into the output Read more§fn parse(
&mut self,
input: I,
) -> Result<O, ParseError<I, <E as ParserError<I>>::Inner>>where
Self: Sized,
I: Stream + StreamIsPartial,
E: ParserError<I>,
<E as ParserError<I>>::Inner: ParserError<I>,
fn parse(
&mut self,
input: I,
) -> Result<O, ParseError<I, <E as ParserError<I>>::Inner>>where
Self: Sized,
I: Stream + StreamIsPartial,
E: ParserError<I>,
<E as ParserError<I>>::Inner: ParserError<I>,
§fn parse_peek(&mut self, input: I) -> Result<(I, O), E>
fn parse_peek(&mut self, input: I) -> Result<(I, O), E>
Stream], turning it into the output Read more§fn by_ref(&mut self) -> ByRef<'_, Self, I, O, E>where
Self: Sized,
fn by_ref(&mut self) -> ByRef<'_, Self, I, O, E>where
Self: Sized,
&mut Self as a parser Read more§fn default_value<O2>(self) -> DefaultValue<Self, I, O, O2, E>
fn default_value<O2>(self) -> DefaultValue<Self, I, O, O2, E>
§fn output_into<O2>(self) -> OutputInto<Self, I, O, O2, E>
fn output_into<O2>(self) -> OutputInto<Self, I, O, O2, E>
std::convert::From Read more§fn take(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
fn take(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
§fn with_taken(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
fn with_taken(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
§fn span(self) -> Span<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
fn span(self) -> Span<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
§fn with_span(self) -> WithSpan<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
fn with_span(self) -> WithSpan<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
§fn map<G, O2>(self, map: G) -> Map<Self, G, I, O, O2, E>
fn map<G, O2>(self, map: G) -> Map<Self, G, I, O, O2, E>
§fn try_map<G, O2, E2>(self, map: G) -> TryMap<Self, G, I, O, O2, E, E2>
fn try_map<G, O2, E2>(self, map: G) -> TryMap<Self, G, I, O, O2, E, E2>
Result over the output of a parser. Read more§fn verify_map<G, O2>(self, map: G) -> VerifyMap<Self, G, I, O, O2, E>
fn verify_map<G, O2>(self, map: G) -> VerifyMap<Self, G, I, O, O2, E>
§fn flat_map<G, H, O2>(self, map: G) -> FlatMap<Self, G, H, I, O, O2, E>
fn flat_map<G, H, O2>(self, map: G) -> FlatMap<Self, G, H, I, O, O2, E>
§fn and_then<G, O2>(self, inner: G) -> AndThen<Self, G, I, O, O2, E>where
Self: Sized,
G: Parser<O, O2, E>,
O: StreamIsPartial,
I: Stream,
fn and_then<G, O2>(self, inner: G) -> AndThen<Self, G, I, O, O2, E>where
Self: Sized,
G: Parser<O, O2, E>,
O: StreamIsPartial,
I: Stream,
§fn parse_to<O2>(self) -> ParseTo<Self, I, O, O2, E>where
Self: Sized,
I: Stream,
O: ParseSlice<O2>,
E: ParserError<I>,
fn parse_to<O2>(self) -> ParseTo<Self, I, O, O2, E>where
Self: Sized,
I: Stream,
O: ParseSlice<O2>,
E: ParserError<I>,
std::str::FromStr to the output of the parser Read more§fn verify<G, O2>(self, filter: G) -> Verify<Self, G, I, O, O2, E>
fn verify<G, O2>(self, filter: G) -> Verify<Self, G, I, O, O2, E>
§fn context<C>(self, context: C) -> Context<Self, I, O, E, C>
fn context<C>(self, context: C) -> Context<Self, I, O, E, C>
§fn context_with<F, C, FI>(
self,
context: F,
) -> ContextWith<Self, I, O, E, F, C, FI>
fn context_with<F, C, FI>( self, context: F, ) -> ContextWith<Self, I, O, E, F, C, FI>
§fn map_err<G, E2>(self, map: G) -> MapErr<Self, G, I, O, E, E2>
fn map_err<G, E2>(self, map: G) -> MapErr<Self, G, I, O, E, E2>
§fn complete_err(self) -> CompleteErr<Self, I, O, E>where
Self: Sized,
fn complete_err(self) -> CompleteErr<Self, I, O, E>where
Self: Sized,
Incomplete][crate::error::ErrMode::Incomplete] into [Backtrack][crate::error::ErrMode::Backtrack] Read more§fn err_into<E2>(self) -> ErrInto<Self, I, O, E, E2>
fn err_into<E2>(self) -> ErrInto<Self, I, O, E, E2>
std::convert::From§impl<I, O, E, F> Parser<I, O, E> for F
impl<I, O, E, F> Parser<I, O, E> for F
§fn parse_next(&mut self, i: &mut I) -> Result<O, ErrMode<E>>
fn parse_next(&mut self, i: &mut I) -> Result<O, ErrMode<E>>
Stream], turning it into the output Read more§fn parse(&mut self, input: I) -> Result<O, ParseError<I, E>>where
Self: Sized,
I: Stream + StreamIsPartial,
E: ParserError<I>,
fn parse(&mut self, input: I) -> Result<O, ParseError<I, E>>where
Self: Sized,
I: Stream + StreamIsPartial,
E: ParserError<I>,
input, generating O from it§fn parse_peek(&mut self, input: I) -> Result<(I, O), ErrMode<E>>
fn parse_peek(&mut self, input: I) -> Result<(I, O), ErrMode<E>>
Stream], turning it into the output Read more§fn default_value<O2>(self) -> DefaultValue<Self, I, O, O2, E>
fn default_value<O2>(self) -> DefaultValue<Self, I, O, O2, E>
§fn output_into<O2>(self) -> OutputInto<Self, I, O, O2, E>
fn output_into<O2>(self) -> OutputInto<Self, I, O, O2, E>
std::convert::From Read more§fn take(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
fn take(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
§fn recognize(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
fn recognize(self) -> Take<Self, I, O, E>where
Self: Sized,
I: Stream,
Parser::takeParser::take]§fn with_taken(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
fn with_taken(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
§fn with_recognized(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
fn with_recognized(self) -> WithTaken<Self, I, O, E>where
Self: Sized,
I: Stream,
Parser::with_takenParser::with_taken]§fn span(self) -> Span<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
fn span(self) -> Span<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
§fn with_span(self) -> WithSpan<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
fn with_span(self) -> WithSpan<Self, I, O, E>where
Self: Sized,
I: Stream + Location,
§fn map<G, O2>(self, map: G) -> Map<Self, G, I, O, O2, E>
fn map<G, O2>(self, map: G) -> Map<Self, G, I, O, O2, E>
§fn try_map<G, O2, E2>(self, map: G) -> TryMap<Self, G, I, O, O2, E, E2>
fn try_map<G, O2, E2>(self, map: G) -> TryMap<Self, G, I, O, O2, E, E2>
Result over the output of a parser. Read more§fn verify_map<G, O2>(self, map: G) -> VerifyMap<Self, G, I, O, O2, E>
fn verify_map<G, O2>(self, map: G) -> VerifyMap<Self, G, I, O, O2, E>
§fn flat_map<G, H, O2>(self, map: G) -> FlatMap<Self, G, H, I, O, O2, E>
fn flat_map<G, H, O2>(self, map: G) -> FlatMap<Self, G, H, I, O, O2, E>
§fn and_then<G, O2>(self, inner: G) -> AndThen<Self, G, I, O, O2, E>where
Self: Sized,
G: Parser<O, O2, E>,
O: StreamIsPartial,
I: Stream,
fn and_then<G, O2>(self, inner: G) -> AndThen<Self, G, I, O, O2, E>where
Self: Sized,
G: Parser<O, O2, E>,
O: StreamIsPartial,
I: Stream,
§fn parse_to<O2>(self) -> ParseTo<Self, I, O, O2, E>where
Self: Sized,
I: Stream,
O: ParseSlice<O2>,
E: ParserError<I>,
fn parse_to<O2>(self) -> ParseTo<Self, I, O, O2, E>where
Self: Sized,
I: Stream,
O: ParseSlice<O2>,
E: ParserError<I>,
std::str::FromStr to the output of the parser Read more§fn verify<G, O2>(self, filter: G) -> Verify<Self, G, I, O, O2, E>
fn verify<G, O2>(self, filter: G) -> Verify<Self, G, I, O, O2, E>
§fn context<C>(self, context: C) -> Context<Self, I, O, E, C>
fn context<C>(self, context: C) -> Context<Self, I, O, E, C>
§fn complete_err(self) -> CompleteErr<Self>where
Self: Sized,
fn complete_err(self) -> CompleteErr<Self>where
Self: Sized,
Incomplete][crate::error::ErrMode::Incomplete] into [Backtrack][crate::error::ErrMode::Backtrack] Read more§fn err_into<E2>(self) -> ErrInto<Self, I, O, E, E2>
fn err_into<E2>(self) -> ErrInto<Self, I, O, E, E2>
std::convert::FromSource§impl<F, T> Parser for F
impl<F, T> Parser for F
type Output = T
Source§fn parse2(self, tokens: TokenStream) -> Result<T, Error>
fn parse2(self, tokens: TokenStream) -> Result<T, Error>
fn __parse_scoped( self, scope: Span, tokens: TokenStream, ) -> Result<<F as Parser>::Output, Error>
Source§impl<T> PathExt for T
impl<T> PathExt for T
const PATH_SEPARATOR: char = '/'
fn relative_to<'s, P>(&'s self, ancestor: &P) -> Option<RelPath<'s>>
fn join_uri_path(&self, path: &UriPath) -> PathBuf
fn as_slash_str(&self) -> Cow<'_, str>
fn same_fs_as<P>(&self, other: &P) -> bool
Source§impl<F> Pattern for F
impl<F> Pattern for F
Source§type Searcher<'a> = CharPredicateSearcher<'a, F>
type Searcher<'a> = CharPredicateSearcher<'a, F>
pattern)Source§fn into_searcher<'a>(self, haystack: &'a str) -> CharPredicateSearcher<'a, F>
fn into_searcher<'a>(self, haystack: &'a str) -> CharPredicateSearcher<'a, F>
pattern)self and the haystack to search in.Source§fn is_contained_in<'a>(self, haystack: &'a str) -> bool
fn is_contained_in<'a>(self, haystack: &'a str) -> bool
pattern)Source§fn is_prefix_of<'a>(self, haystack: &'a str) -> bool
fn is_prefix_of<'a>(self, haystack: &'a str) -> bool
pattern)Source§fn strip_prefix_of<'a>(self, haystack: &'a str) -> Option<&'a str>
fn strip_prefix_of<'a>(self, haystack: &'a str) -> Option<&'a str>
pattern)Source§fn is_suffix_of<'a>(self, haystack: &'a str) -> boolwhere
CharPredicateSearcher<'a, F>: ReverseSearcher<'a>,
fn is_suffix_of<'a>(self, haystack: &'a str) -> boolwhere
CharPredicateSearcher<'a, F>: ReverseSearcher<'a>,
pattern)Source§fn strip_suffix_of<'a>(self, haystack: &'a str) -> Option<&'a str>where
CharPredicateSearcher<'a, F>: ReverseSearcher<'a>,
fn strip_suffix_of<'a>(self, haystack: &'a str) -> Option<&'a str>where
CharPredicateSearcher<'a, F>: ReverseSearcher<'a>,
pattern)Source§fn as_utf8_pattern(&self) -> Option<Utf8Pattern<'_>>
fn as_utf8_pattern(&self) -> Option<Utf8Pattern<'_>>
pattern)§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<F, T> ReactiveFunction for F
impl<F, T> ReactiveFunction for F
§impl<F, V> Render for F
impl<F, V> Render for F
§impl<F, V> RenderHtml for F
impl<F, V> RenderHtml for F
§const MIN_LENGTH: usize = 0usize
const MIN_LENGTH: usize = 0usize
§type AsyncOutput = <V as RenderHtml>::AsyncOutput
type AsyncOutput = <V as RenderHtml>::AsyncOutput
§fn dry_resolve(&mut self)
fn dry_resolve(&mut self)
§async fn resolve(self) -> <F as RenderHtml>::AsyncOutput
async fn resolve(self) -> <F as RenderHtml>::AsyncOutput
§fn to_html_with_buf(
self,
buf: &mut String,
position: &mut Position,
escape: bool,
mark_branches: bool,
extra_attrs: Vec<AnyAttribute>,
)
fn to_html_with_buf( self, buf: &mut String, position: &mut Position, escape: bool, mark_branches: bool, extra_attrs: Vec<AnyAttribute>, )
§fn to_html_async_with_buf<const OUT_OF_ORDER: bool>(
self,
buf: &mut StreamBuilder,
position: &mut Position,
escape: bool,
mark_branches: bool,
extra_attrs: Vec<AnyAttribute>,
)
fn to_html_async_with_buf<const OUT_OF_ORDER: bool>( self, buf: &mut StreamBuilder, position: &mut Position, escape: bool, mark_branches: bool, extra_attrs: Vec<AnyAttribute>, )
§fn hydrate<const FROM_SERVER: bool>(
self,
cursor: &Cursor,
position: &PositionState,
) -> <F as Render>::State
fn hydrate<const FROM_SERVER: bool>( self, cursor: &Cursor, position: &PositionState, ) -> <F as Render>::State
§async fn hydrate_async(
self,
cursor: &Cursor,
position: &PositionState,
) -> <F as Render>::State
async fn hydrate_async( self, cursor: &Cursor, position: &PositionState, ) -> <F as Render>::State
§fn into_owned(self) -> <F as RenderHtml>::Owned
fn into_owned(self) -> <F as RenderHtml>::Owned
'static.§const EXISTS: bool = true
const EXISTS: bool = true
§fn to_html_branching(self) -> Stringwhere
Self: Sized,
fn to_html_branching(self) -> Stringwhere
Self: Sized,
§fn to_html_stream_in_order(self) -> StreamBuilderwhere
Self: Sized,
fn to_html_stream_in_order(self) -> StreamBuilderwhere
Self: Sized,
§fn to_html_stream_in_order_branching(self) -> StreamBuilderwhere
Self: Sized,
fn to_html_stream_in_order_branching(self) -> StreamBuilderwhere
Self: Sized,
§fn to_html_stream_out_of_order(self) -> StreamBuilderwhere
Self: Sized,
fn to_html_stream_out_of_order(self) -> StreamBuilderwhere
Self: Sized,
§fn to_html_stream_out_of_order_branching(self) -> StreamBuilderwhere
Self: Sized,
fn to_html_stream_out_of_order_branching(self) -> StreamBuilderwhere
Self: Sized,
§fn hydrate_from<const FROM_SERVER: bool>(self, el: &Element) -> Self::Statewhere
Self: Sized,
fn hydrate_from<const FROM_SERVER: bool>(self, el: &Element) -> Self::Statewhere
Self: Sized,
RenderHtml::hydrate, beginning at the given element.§fn hydrate_from_position<const FROM_SERVER: bool>(
self,
el: &Element,
position: Position,
) -> Self::Statewhere
Self: Sized,
fn hydrate_from_position<const FROM_SERVER: bool>(
self,
el: &Element,
position: Position,
) -> Self::Statewhere
Self: Sized,
RenderHtml::hydrate, beginning at the given element and position.§impl<F, T> Replacer for F
impl<F, T> Replacer for F
§impl<F, T> Replacer for F
impl<F, T> Replacer for F
§fn replace_append(&mut self, caps: &Captures<'_>, dst: &mut String)
fn replace_append(&mut self, caps: &Captures<'_>, dst: &mut String)
dst to replace the current match. Read more§impl<F, E> ResolveServerName for F
impl<F, E> ResolveServerName for F
§impl<F, TScore> ScoreSegmentTweaker<TScore> for F
impl<F, TScore> ScoreSegmentTweaker<TScore> for F
§impl<F, TScore, TSegmentScoreTweaker> ScoreTweaker<TScore> for F
impl<F, TScore, TSegmentScoreTweaker> ScoreTweaker<TScore> for F
§fn segment_tweaker(
&self,
segment_reader: &SegmentReader,
) -> Result<<F as ScoreTweaker<TScore>>::Child, TantivyError>
fn segment_tweaker( &self, segment_reader: &SegmentReader, ) -> Result<<F as ScoreTweaker<TScore>>::Child, TantivyError>
§impl<T> SerializableKey for T
impl<T> SerializableKey for T
§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
§fn into_taken(self) -> T
fn into_taken(self) -> T
§impl<E, T> SyncHttpClient for T
impl<E, T> SyncHttpClient for T
Source§impl<T> ToHex for T
impl<T> ToHex for T
Source§fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
self into the result. Lower case
letters are used (e.g. f9b4ca)Source§fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
self into the result. Upper case
letters are used (e.g. F9B4CA)§impl<F> ToHref for F
impl<F> ToHref for F
§impl<F, V> ToTemplate for Fwhere
F: ReactiveFunction<Output = V>,
V: ToTemplate,
impl<F, V> ToTemplate for Fwhere
F: ReactiveFunction<Output = V>,
V: ToTemplate,
§fn to_template(
buf: &mut String,
class: &mut String,
style: &mut String,
inner_html: &mut String,
position: &mut Position,
)
fn to_template( buf: &mut String, class: &mut String, style: &mut String, inner_html: &mut String, position: &mut Position, )
<template> that corresponds
to a view of a particular type.Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
§impl<F, T, E> TryFuture for F
impl<F, T, E> TryFuture for F
§impl<Fut> TryFutureExt for Futwhere
Fut: TryFuture + ?Sized,
impl<Fut> TryFutureExt for Futwhere
Fut: TryFuture + ?Sized,
§fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok>where
Self::Ok: Sink<Item, Error = Self::Error>,
Self: Sized,
fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok>where
Self::Ok: Sink<Item, Error = Self::Error>,
Self: Sized,
sink only.Sink]. Read more§fn map_ok<T, F>(self, f: F) -> MapOk<Self, F> ⓘ
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F> ⓘ
§fn map_ok_or_else<T, E, F>(self, e: E, f: F) -> MapOkOrElse<Self, F, E> ⓘ
fn map_ok_or_else<T, E, F>(self, e: E, f: F) -> MapOkOrElse<Self, F, E> ⓘ
§fn map_err<E, F>(self, f: F) -> MapErr<Self, F> ⓘ
fn map_err<E, F>(self, f: F) -> MapErr<Self, F> ⓘ
§fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F> ⓘ
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F> ⓘ
§fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F> ⓘ
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F> ⓘ
§fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F> ⓘ
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F> ⓘ
§fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> ⓘ
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> ⓘ
§fn try_flatten(self) -> TryFlatten<Self, Self::Ok> ⓘwhere
Self::Ok: TryFuture<Error = Self::Error>,
Self: Sized,
fn try_flatten(self) -> TryFlatten<Self, Self::Ok> ⓘwhere
Self::Ok: TryFuture<Error = Self::Error>,
Self: Sized,
§fn try_flatten_stream(self) -> TryFlattenStream<Self>where
Self::Ok: TryStream<Error = Self::Error>,
Self: Sized,
fn try_flatten_stream(self) -> TryFlattenStream<Self>where
Self::Ok: TryStream<Error = Self::Error>,
Self: Sized,
§fn unwrap_or_else<F>(self, f: F) -> UnwrapOrElse<Self, F> ⓘ
fn unwrap_or_else<F>(self, f: F) -> UnwrapOrElse<Self, F> ⓘ
§fn into_future(self) -> IntoFuture<Self> ⓘwhere
Self: Sized,
fn into_future(self) -> IntoFuture<Self> ⓘwhere
Self: Sized,
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read moreSource§impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
impl<C, U> UintsFrom<C> for Uwhere
C: IntoUints<U>,
Source§fn uints_from(colors: C) -> U
fn uints_from(colors: C) -> U
Source§impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
impl<C, U> UintsInto<C> for Uwhere
C: FromUints<U>,
Source§fn uints_into(self) -> C
fn uints_into(self) -> C
§impl<F> Visit for F
impl<F> Visit for F
§fn record_debug(&mut self, field: &Field, value: &dyn Debug)
fn record_debug(&mut self, field: &Field, value: &dyn Debug)
fmt::Debug.§fn record_f64(&mut self, field: &Field, value: f64)
fn record_f64(&mut self, field: &Field, value: f64)
§fn record_i64(&mut self, field: &Field, value: i64)
fn record_i64(&mut self, field: &Field, value: i64)
§fn record_u64(&mut self, field: &Field, value: u64)
fn record_u64(&mut self, field: &Field, value: u64)
§fn record_i128(&mut self, field: &Field, value: i128)
fn record_i128(&mut self, field: &Field, value: i128)
§fn record_u128(&mut self, field: &Field, value: u128)
fn record_u128(&mut self, field: &Field, value: u128)
§fn record_bool(&mut self, field: &Field, value: bool)
fn record_bool(&mut self, field: &Field, value: bool)
§fn record_str(&mut self, field: &Field, value: &str)
fn record_str(&mut self, field: &Field, value: &str)
§fn record_bytes(&mut self, field: &Field, value: &[u8])
fn record_bytes(&mut self, field: &Field, value: &[u8])
§fn record_error(&mut self, field: &Field, value: &(dyn Error + 'static))
fn record_error(&mut self, field: &Field, value: &(dyn Error + 'static))
std only.Error. Read more