Enum Either8
pub enum Either8<A, B, C, D, E, F, G, H> {
A(A),
B(B),
C(C),
D(D),
E(E),
F(F),
G(G),
H(H),
}Expand description
A type to allow you to use multiple types as a single type.
and will delegate the functionality to the type that is wrapped in the Either type.
To keep it easy all wrapped types are expected to work with the same inputs and outputs.
You can use [crate::combinators::impl_either] to
implement the Either type for the available number of type parameters
on your own Trait implementations.
Variants§
A(A)
one of the Either variants
B(B)
one of the Either variants
C(C)
one of the Either variants
D(D)
one of the Either variants
E(E)
one of the Either variants
F(F)
one of the Either variants
G(G)
one of the Either variants
H(H)
one of the Either variants
Implementations§
§impl<A, B, C, D, E, F, G, H> Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> Either8<A, B, C, D, E, F, G, H>
pub fn as_pin_mut(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
) -> Either8<Pin<&mut A>, Pin<&mut B>, Pin<&mut C>, Pin<&mut D>, Pin<&mut E>, Pin<&mut F>, Pin<&mut G>, Pin<&mut H>> ⓘ
Available on crate features html and http only.
pub fn as_pin_mut( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, ) -> Either8<Pin<&mut A>, Pin<&mut B>, Pin<&mut C>, Pin<&mut D>, Pin<&mut E>, Pin<&mut F>, Pin<&mut G>, Pin<&mut H>> ⓘ
html and http only.Convert Pin<&mut Either<A, B>> to Either<Pin<&mut A>, Pin<&mut B>>,
pinned projections of the inner variants.
This is the pin-projection used to implement pinned traits (e.g.
Future/AsyncRead) for Either; it is public so downstream
crates can implement their own pinned traits over Either too.
Trait Implementations§
§impl<A, B, C, D, E, F, G, H> AsyncRead for Either8<A, B, C, D, E, F, G, H>where
A: AsyncRead,
B: AsyncRead,
C: AsyncRead,
D: AsyncRead,
E: AsyncRead,
F: AsyncRead,
G: AsyncRead,
H: AsyncRead,
impl<A, B, C, D, E, F, G, H> AsyncRead for Either8<A, B, C, D, E, F, G, H>where
A: AsyncRead,
B: AsyncRead,
C: AsyncRead,
D: AsyncRead,
E: AsyncRead,
F: AsyncRead,
G: AsyncRead,
H: AsyncRead,
§impl<A, B, C, D, E, F, G, H> AsyncWrite for Either8<A, B, C, D, E, F, G, H>where
A: AsyncWrite,
B: AsyncWrite,
C: AsyncWrite,
D: AsyncWrite,
E: AsyncWrite,
F: AsyncWrite,
G: AsyncWrite,
H: AsyncWrite,
impl<A, B, C, D, E, F, G, H> AsyncWrite for Either8<A, B, C, D, E, F, G, H>where
A: AsyncWrite,
B: AsyncWrite,
C: AsyncWrite,
D: AsyncWrite,
E: AsyncWrite,
F: AsyncWrite,
G: AsyncWrite,
H: AsyncWrite,
§fn poll_write(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize, Error>>
fn poll_write( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize, Error>>
buf into the object. Read more§fn poll_flush(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
cx: &mut Context<'_>,
) -> Poll<Result<(), Error>>
fn poll_flush( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, cx: &mut Context<'_>, ) -> Poll<Result<(), Error>>
§fn poll_shutdown(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
cx: &mut Context<'_>,
) -> Poll<Result<(), Error>>
fn poll_shutdown( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, cx: &mut Context<'_>, ) -> Poll<Result<(), Error>>
§fn poll_write_vectored(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>],
) -> Poll<Result<usize, Error>>
fn poll_write_vectored( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, cx: &mut Context<'_>, bufs: &[IoSlice<'_>], ) -> Poll<Result<usize, Error>>
poll_write, except that it writes from a slice of buffers. Read more§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
poll_write_vectored
implementation. Read more§impl<A, B, C, D, E, F, G, H, Data> Body for Either8<A, B, C, D, E, F, G, H>where
A: Body<Data = Data>,
B: Body<Data = Data>,
C: Body<Data = Data>,
D: Body<Data = Data>,
E: Body<Data = Data>,
F: Body<Data = Data>,
G: Body<Data = Data>,
H: Body<Data = Data>,
<A as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
Data: Buf,
impl<A, B, C, D, E, F, G, H, Data> Body for Either8<A, B, C, D, E, F, G, H>where
A: Body<Data = Data>,
B: Body<Data = Data>,
C: Body<Data = Data>,
D: Body<Data = Data>,
E: Body<Data = Data>,
F: Body<Data = Data>,
G: Body<Data = Data>,
H: Body<Data = Data>,
<A as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as Body>::Error: Into<Box<dyn Error + Sync + Send>>,
Data: Buf,
§fn poll_frame(
self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>,
cx: &mut Context<'_>,
) -> Poll<Option<Result<Frame<<Either8<A, B, C, D, E, F, G, H> as Body>::Data>, <Either8<A, B, C, D, E, F, G, H> as Body>::Error>>>
fn poll_frame( self: Pin<&mut Either8<A, B, C, D, E, F, G, H>>, cx: &mut Context<'_>, ) -> Poll<Option<Result<Frame<<Either8<A, B, C, D, E, F, G, H> as Body>::Data>, <Either8<A, B, C, D, E, F, G, H> as Body>::Error>>>
§fn is_end_stream(&self) -> bool
fn is_end_stream(&self) -> bool
true when the end of stream has been reached. Read more§impl<A, B, C, D, E, F, G, H> BoringMitmCertIssuer for Either8<A, B, C, D, E, F, G, H>where
A: BoringMitmCertIssuer,
B: BoringMitmCertIssuer,
<B as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
C: BoringMitmCertIssuer,
<C as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
D: BoringMitmCertIssuer,
<D as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
E: BoringMitmCertIssuer,
<E as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
F: BoringMitmCertIssuer,
<F as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
G: BoringMitmCertIssuer,
<G as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
H: BoringMitmCertIssuer,
<H as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
impl<A, B, C, D, E, F, G, H> BoringMitmCertIssuer for Either8<A, B, C, D, E, F, G, H>where
A: BoringMitmCertIssuer,
B: BoringMitmCertIssuer,
<B as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
C: BoringMitmCertIssuer,
<C as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
D: BoringMitmCertIssuer,
<D as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
E: BoringMitmCertIssuer,
<E as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
F: BoringMitmCertIssuer,
<F as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
G: BoringMitmCertIssuer,
<G as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
H: BoringMitmCertIssuer,
<H as BoringMitmCertIssuer>::Error: Into<<A as BoringMitmCertIssuer>::Error>,
type Error = <A as BoringMitmCertIssuer>::Error
async fn issue_mitm_x509_cert( &self, original: X509, ) -> Result<MitmIssuedCert, <Either8<A, B, C, D, E, F, G, H> as BoringMitmCertIssuer>::Error>
§impl<A, B, C, D, E, F, G, H> DnsAddressResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsAddressResolver,
B: DnsAddressResolver,
C: DnsAddressResolver,
D: DnsAddressResolver,
E: DnsAddressResolver,
F: DnsAddressResolver,
G: DnsAddressResolver,
H: DnsAddressResolver,
impl<A, B, C, D, E, F, G, H> DnsAddressResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsAddressResolver,
B: DnsAddressResolver,
C: DnsAddressResolver,
D: DnsAddressResolver,
E: DnsAddressResolver,
F: DnsAddressResolver,
G: DnsAddressResolver,
H: DnsAddressResolver,
§type Error = OpaqueError
type Error = OpaqueError
DnsAddressResolver§fn lookup_ipv4(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>> + Send
fn lookup_ipv4( &self, domain: Domain, ) -> impl Stream<Item = Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>> + Send
§async fn lookup_ipv4_first(
&self,
domain: Domain,
) -> Option<Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
async fn lookup_ipv4_first( &self, domain: Domain, ) -> Option<Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
§async fn lookup_ipv4_rand(
&self,
domain: Domain,
) -> Option<Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
async fn lookup_ipv4_rand( &self, domain: Domain, ) -> Option<Result<Ipv4Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
§fn lookup_ipv6(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>> + Send
fn lookup_ipv6( &self, domain: Domain, ) -> impl Stream<Item = Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>> + Send
§async fn lookup_ipv6_first(
&self,
domain: Domain,
) -> Option<Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
async fn lookup_ipv6_first( &self, domain: Domain, ) -> Option<Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
§async fn lookup_ipv6_rand(
&self,
domain: Domain,
) -> Option<Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
async fn lookup_ipv6_rand( &self, domain: Domain, ) -> Option<Result<Ipv6Addr, <Either8<A, B, C, D, E, F, G, H> as DnsAddressResolver>::Error>>
§fn into_box_dns_address_resolver(self) -> BoxDnsAddressResolver
fn into_box_dns_address_resolver(self) -> BoxDnsAddressResolver
§impl<A, B, C, D, E, F, G, H> DnsResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsResolver,
B: DnsResolver,
C: DnsResolver,
D: DnsResolver,
E: DnsResolver,
F: DnsResolver,
G: DnsResolver,
H: DnsResolver,
impl<A, B, C, D, E, F, G, H> DnsResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsResolver,
B: DnsResolver,
C: DnsResolver,
D: DnsResolver,
E: DnsResolver,
F: DnsResolver,
G: DnsResolver,
H: DnsResolver,
fn into_box_dns_resolver(self) -> BoxDnsResolverwhere
Self: Sized,
§impl<A, B, C, D, E, F, G, H> DnsTxtResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsTxtResolver,
B: DnsTxtResolver,
C: DnsTxtResolver,
D: DnsTxtResolver,
E: DnsTxtResolver,
F: DnsTxtResolver,
G: DnsTxtResolver,
H: DnsTxtResolver,
impl<A, B, C, D, E, F, G, H> DnsTxtResolver for Either8<A, B, C, D, E, F, G, H>where
A: DnsTxtResolver,
B: DnsTxtResolver,
C: DnsTxtResolver,
D: DnsTxtResolver,
E: DnsTxtResolver,
F: DnsTxtResolver,
G: DnsTxtResolver,
H: DnsTxtResolver,
§type Error = OpaqueError
type Error = OpaqueError
DnsTxtResolver§fn lookup_txt(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Bytes, <Either8<A, B, C, D, E, F, G, H> as DnsTxtResolver>::Error>> + Send
fn lookup_txt( &self, domain: Domain, ) -> impl Stream<Item = Result<Bytes, <Either8<A, B, C, D, E, F, G, H> as DnsTxtResolver>::Error>> + Send
§fn into_box_dns_txt_resolver(self) -> BoxDnsTxtResolver
fn into_box_dns_txt_resolver(self) -> BoxDnsTxtResolver
§impl<A, B, C, D, E, F, G, H> EventDataWrite for Either8<A, B, C, D, E, F, G, H>where
A: EventDataWrite,
B: EventDataWrite,
C: EventDataWrite,
D: EventDataWrite,
E: EventDataWrite,
F: EventDataWrite,
G: EventDataWrite,
H: EventDataWrite,
impl<A, B, C, D, E, F, G, H> EventDataWrite for Either8<A, B, C, D, E, F, G, H>where
A: EventDataWrite,
B: EventDataWrite,
C: EventDataWrite,
D: EventDataWrite,
E: EventDataWrite,
F: EventDataWrite,
G: EventDataWrite,
H: EventDataWrite,
§impl<A, B, C, D, E, F, G, H> ExtensionsRef for Either8<A, B, C, D, E, F, G, H>where
A: ExtensionsRef,
B: ExtensionsRef,
C: ExtensionsRef,
D: ExtensionsRef,
E: ExtensionsRef,
F: ExtensionsRef,
G: ExtensionsRef,
H: ExtensionsRef,
impl<A, B, C, D, E, F, G, H> ExtensionsRef for Either8<A, B, C, D, E, F, G, H>where
A: ExtensionsRef,
B: ExtensionsRef,
C: ExtensionsRef,
D: ExtensionsRef,
E: ExtensionsRef,
F: ExtensionsRef,
G: ExtensionsRef,
H: ExtensionsRef,
§fn extensions(&self) -> &Extensions
fn extensions(&self) -> &Extensions
Extensions store§impl<A, B, C, D, E, F, G, H> IntoHtml for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> IntoHtml for Either8<A, B, C, D, E, F, G, H>
§fn into_html(self) -> impl IntoHtml
fn into_html(self) -> impl IntoHtml
IntoHtml value. Used for
composition; leaf types should return self.§fn escape_and_write(self, buf: &mut String)
fn escape_and_write(self, buf: &mut String)
buf.§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
§fn into_string(self) -> Stringwhere
Self: Sized,
fn into_string(self) -> Stringwhere
Self: Sized,
String.§impl<A, B, C, D, E, F, G, H> IntoResponse for Either8<A, B, C, D, E, F, G, H>where
A: IntoResponse,
B: IntoResponse,
C: IntoResponse,
D: IntoResponse,
E: IntoResponse,
F: IntoResponse,
G: IntoResponse,
H: IntoResponse,
impl<A, B, C, D, E, F, G, H> IntoResponse for Either8<A, B, C, D, E, F, G, H>where
A: IntoResponse,
B: IntoResponse,
C: IntoResponse,
D: IntoResponse,
E: IntoResponse,
F: IntoResponse,
G: IntoResponse,
H: IntoResponse,
§fn into_response(self) -> Response
fn into_response(self) -> Response
§impl<A, B, C, D, E, F, G, H, Item> Iterator for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H, Item> Iterator for Either8<A, B, C, D, E, F, G, H>
§fn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
Source§fn next_chunk<const N: usize>(
&mut self,
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where
Self: Sized,
fn next_chunk<const N: usize>(
&mut self,
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where
Self: Sized,
iter_next_chunk)N values. Read more1.0.0 (const: unstable) · Source§fn count(self) -> usizewhere
Self: Sized,
fn count(self) -> usizewhere
Self: Sized,
1.0.0 (const: unstable) · Source§fn last(self) -> Option<Self::Item>where
Self: Sized,
fn last(self) -> Option<Self::Item>where
Self: Sized,
Source§fn advance_by(&mut self, n: usize) -> Result<(), NonZero<usize>>
fn advance_by(&mut self, n: usize) -> Result<(), NonZero<usize>>
iter_advance_by)n elements. Read more1.0.0 (const: unstable) · Source§fn nth(&mut self, n: usize) -> Option<Self::Item>
fn nth(&mut self, n: usize) -> Option<Self::Item>
nth element of the iterator. Read more1.28.0 (const: unstable) · Source§fn step_by(self, step: usize) -> StepBy<Self> ⓘwhere
Self: Sized,
fn step_by(self, step: usize) -> StepBy<Self> ⓘwhere
Self: Sized,
1.0.0 (const: unstable) · Source§fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter> ⓘ
fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter> ⓘ
1.0.0 (const: unstable) · Source§fn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
U: IntoIterator,
fn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
U: IntoIterator,
Source§fn intersperse(self, separator: Self::Item) -> Intersperse<Self> ⓘ
fn intersperse(self, separator: Self::Item) -> Intersperse<Self> ⓘ
iter_intersperse)separator between items
of the original iterator. Read moreSource§fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> ⓘ
fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> ⓘ
iter_intersperse)separator
between items of the original iterator. Read more1.0.0 (const: unstable) · Source§fn map<B, F>(self, f: F) -> Map<Self, F> ⓘ
fn map<B, F>(self, f: F) -> Map<Self, F> ⓘ
1.21.0 (const: unstable) · Source§fn for_each<F>(self, f: F)
fn for_each<F>(self, f: F)
1.0.0 (const: unstable) · Source§fn filter<P>(self, predicate: P) -> Filter<Self, P> ⓘ
fn filter<P>(self, predicate: P) -> Filter<Self, P> ⓘ
1.0.0 (const: unstable) · Source§fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F> ⓘ
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F> ⓘ
1.0.0 (const: unstable) · Source§fn enumerate(self) -> Enumerate<Self> ⓘwhere
Self: Sized,
fn enumerate(self) -> Enumerate<Self> ⓘwhere
Self: Sized,
1.0.0 (const: unstable) · Source§fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P> ⓘ
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P> ⓘ
1.57.0 (const: unstable) · Source§fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P> ⓘ
fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P> ⓘ
1.0.0 (const: unstable) · Source§fn skip(self, n: usize) -> Skip<Self> ⓘwhere
Self: Sized,
fn skip(self, n: usize) -> Skip<Self> ⓘwhere
Self: Sized,
n elements. Read more1.0.0 (const: unstable) · Source§fn take(self, n: usize) -> Take<Self> ⓘwhere
Self: Sized,
fn take(self, n: usize) -> Take<Self> ⓘwhere
Self: Sized,
n elements, or fewer
if the underlying iterator ends sooner. Read more1.0.0 (const: unstable) · Source§fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F> ⓘ
fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F> ⓘ
1.0.0 (const: unstable) · Source§fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F> ⓘ
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F> ⓘ
1.29.0 (const: unstable) · Source§fn flatten(self) -> Flatten<Self> ⓘ
fn flatten(self) -> Flatten<Self> ⓘ
Source§fn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> ⓘ
fn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> ⓘ
iter_map_windows)f for each contiguous window of size N over
self and returns an iterator over the outputs of f. Like slice::windows(),
the windows during mapping overlap as well. Read more1.0.0 (const: unstable) · Source§fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
1.0.0 (const: unstable) · Source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Iterator. Read more1.0.0 (const: unstable) · Source§fn collect<B>(self) -> B
fn collect<B>(self) -> B
Source§fn try_collect<B>(
&mut self,
) -> <<Self::Item as Try>::Residual as Residual<B>>::TryType
fn try_collect<B>( &mut self, ) -> <<Self::Item as Try>::Residual as Residual<B>>::TryType
iterator_try_collect)Source§fn collect_into<E>(self, collection: &mut E) -> &mut E
fn collect_into<E>(self, collection: &mut E) -> &mut E
iter_collect_into)1.0.0 (const: unstable) · Source§fn partition<B, F>(self, f: F) -> (B, B)
fn partition<B, F>(self, f: F) -> (B, B)
Source§fn partition_in_place<'a, T, P>(self, predicate: P) -> usize
fn partition_in_place<'a, T, P>(self, predicate: P) -> usize
iter_partition_in_place)true precede all those that return false.
Returns the number of true elements found. Read moreSource§fn is_partitioned<P>(self, predicate: P) -> bool
fn is_partitioned<P>(self, predicate: P) -> bool
iter_is_partitioned)true precede all those that return false. Read more1.27.0 (const: unstable) · Source§fn try_fold<B, F, R>(&mut self, init: B, f: F) -> R
fn try_fold<B, F, R>(&mut self, init: B, f: F) -> R
1.27.0 (const: unstable) · Source§fn try_for_each<F, R>(&mut self, f: F) -> R
fn try_for_each<F, R>(&mut self, f: F) -> R
1.0.0 (const: unstable) · Source§fn fold<B, F>(self, init: B, f: F) -> B
fn fold<B, F>(self, init: B, f: F) -> B
1.51.0 (const: unstable) · Source§fn reduce<F>(self, f: F) -> Option<Self::Item>
fn reduce<F>(self, f: F) -> Option<Self::Item>
Source§fn try_reduce<R>(
&mut self,
f: impl FnMut(Self::Item, Self::Item) -> R,
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryType
fn try_reduce<R>( &mut self, f: impl FnMut(Self::Item, Self::Item) -> R, ) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryType
iterator_try_reduce)1.0.0 (const: unstable) · Source§fn all<F>(&mut self, f: F) -> bool
fn all<F>(&mut self, f: F) -> bool
1.0.0 (const: unstable) · Source§fn any<F>(&mut self, f: F) -> bool
fn any<F>(&mut self, f: F) -> bool
1.0.0 (const: unstable) · Source§fn find<P>(&mut self, predicate: P) -> Option<Self::Item>
fn find<P>(&mut self, predicate: P) -> Option<Self::Item>
1.30.0 (const: unstable) · Source§fn find_map<B, F>(&mut self, f: F) -> Option<B>
fn find_map<B, F>(&mut self, f: F) -> Option<B>
Source§fn try_find<R>(
&mut self,
f: impl FnMut(&Self::Item) -> R,
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryType
fn try_find<R>( &mut self, f: impl FnMut(&Self::Item) -> R, ) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryType
try_find)1.0.0 (const: unstable) · Source§fn position<P>(&mut self, predicate: P) -> Option<usize>
fn position<P>(&mut self, predicate: P) -> Option<usize>
1.0.0 (const: unstable) · Source§fn rposition<P>(&mut self, predicate: P) -> Option<usize>
fn rposition<P>(&mut self, predicate: P) -> Option<usize>
1.0.0 (const: unstable) · Source§fn max(self) -> Option<Self::Item>
fn max(self) -> Option<Self::Item>
1.0.0 (const: unstable) · Source§fn min(self) -> Option<Self::Item>
fn min(self) -> Option<Self::Item>
1.6.0 (const: unstable) · Source§fn max_by_key<B, F>(self, f: F) -> Option<Self::Item>
fn max_by_key<B, F>(self, f: F) -> Option<Self::Item>
1.15.0 (const: unstable) · Source§fn max_by<F>(self, compare: F) -> Option<Self::Item>
fn max_by<F>(self, compare: F) -> Option<Self::Item>
1.6.0 (const: unstable) · Source§fn min_by_key<B, F>(self, f: F) -> Option<Self::Item>
fn min_by_key<B, F>(self, f: F) -> Option<Self::Item>
1.15.0 (const: unstable) · Source§fn min_by<F>(self, compare: F) -> Option<Self::Item>
fn min_by<F>(self, compare: F) -> Option<Self::Item>
1.0.0 (const: unstable) · Source§fn rev(self) -> Rev<Self> ⓘwhere
Self: Sized + DoubleEndedIterator,
fn rev(self) -> Rev<Self> ⓘwhere
Self: Sized + DoubleEndedIterator,
1.0.0 (const: unstable) · Source§fn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)
fn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)
1.36.0 (const: unstable) · Source§fn copied<'a, T>(self) -> Copied<Self> ⓘ
fn copied<'a, T>(self) -> Copied<Self> ⓘ
1.0.0 (const: unstable) · Source§fn cycle(self) -> Cycle<Self> ⓘ
fn cycle(self) -> Cycle<Self> ⓘ
Source§fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> ⓘwhere
Self: Sized,
fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> ⓘwhere
Self: Sized,
iter_array_chunks)N elements of the iterator at a time. Read more1.11.0 (const: unstable) · Source§fn product<P>(self) -> P
fn product<P>(self) -> P
Source§fn cmp_by<I, F>(self, other: I, cmp: F) -> Ordering
fn cmp_by<I, F>(self, other: I, cmp: F) -> Ordering
iter_order_by)Iterator with those
of another with respect to the specified comparison function. Read more1.5.0 (const: unstable) · Source§fn partial_cmp<I>(self, other: I) -> Option<Ordering>
fn partial_cmp<I>(self, other: I) -> Option<Ordering>
PartialOrd elements of
this Iterator with those of another. The comparison works like short-circuit
evaluation, returning a result without comparing the remaining elements.
As soon as an order can be determined, the evaluation stops and a result is returned. Read moreSource§fn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
Self: Sized,
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
fn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
Self: Sized,
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
iter_order_by)Iterator with those
of another with respect to the specified comparison function. Read moreSource§fn eq_by<I, F>(self, other: I, eq: F) -> bool
fn eq_by<I, F>(self, other: I, eq: F) -> bool
iter_order_by)1.5.0 (const: unstable) · Source§fn lt<I>(self, other: I) -> bool
fn lt<I>(self, other: I) -> bool
Iterator are lexicographically
less than those of another. Read more1.5.0 (const: unstable) · Source§fn le<I>(self, other: I) -> bool
fn le<I>(self, other: I) -> bool
Iterator are lexicographically
less or equal to those of another. Read more1.5.0 (const: unstable) · Source§fn gt<I>(self, other: I) -> bool
fn gt<I>(self, other: I) -> bool
Iterator are lexicographically
greater than those of another. Read more1.5.0 (const: unstable) · Source§fn ge<I>(self, other: I) -> bool
fn ge<I>(self, other: I) -> bool
Iterator are lexicographically
greater than or equal to those of another. Read more1.82.0 (const: unstable) · Source§fn is_sorted(self) -> bool
fn is_sorted(self) -> bool
1.82.0 (const: unstable) · Source§fn is_sorted_by<F>(self, compare: F) -> bool
fn is_sorted_by<F>(self, compare: F) -> bool
§impl<A, B, C, D, E, F, G, H, S> Layer<S> for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H, S> Layer<S> for Either8<A, B, C, D, E, F, G, H>
§type Service = Either8<<A as Layer<S>>::Service, <B as Layer<S>>::Service, <C as Layer<S>>::Service, <D as Layer<S>>::Service, <E as Layer<S>>::Service, <F as Layer<S>>::Service, <G as Layer<S>>::Service, <H as Layer<S>>::Service>
type Service = Either8<<A as Layer<S>>::Service, <B as Layer<S>>::Service, <C as Layer<S>>::Service, <D as Layer<S>>::Service, <E as Layer<S>>::Service, <F as Layer<S>>::Service, <G as Layer<S>>::Service, <H as Layer<S>>::Service>
§impl<A, B, C, D, E, F, G, H, Input> Matcher<Input> for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H, Input> Matcher<Input> for Either8<A, B, C, D, E, F, G, H>
§fn matches(&self, ext: Option<&Extensions>, input: &Input) -> bool
fn matches(&self, ext: Option<&Extensions>, input: &Input) -> bool
§fn or<M>(self, other: M) -> impl Matcher<Input>
fn or<M>(self, other: M) -> impl Matcher<Input>
§impl<A, B, C, D, E, F, G, H, Input> Policy<Input> for Either8<A, B, C, D, E, F, G, H>where
A: Policy<Input>,
<A as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
B: Policy<Input>,
<B as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
C: Policy<Input>,
<C as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
D: Policy<Input>,
<D as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
E: Policy<Input>,
<E as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
F: Policy<Input>,
<F as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
G: Policy<Input>,
<G as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
H: Policy<Input>,
<H as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
Input: Send + 'static,
impl<A, B, C, D, E, F, G, H, Input> Policy<Input> for Either8<A, B, C, D, E, F, G, H>where
A: Policy<Input>,
<A as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
B: Policy<Input>,
<B as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
C: Policy<Input>,
<C as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
D: Policy<Input>,
<D as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
E: Policy<Input>,
<E as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
F: Policy<Input>,
<F as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
G: Policy<Input>,
<G as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
H: Policy<Input>,
<H as Policy<Input>>::Error: Into<Box<dyn Error + Sync + Send>>,
Input: Send + 'static,
§type Guard = Either8<<A as Policy<Input>>::Guard, <B as Policy<Input>>::Guard, <C as Policy<Input>>::Guard, <D as Policy<Input>>::Guard, <E as Policy<Input>>::Guard, <F as Policy<Input>>::Guard, <G as Policy<Input>>::Guard, <H as Policy<Input>>::Guard>
type Guard = Either8<<A as Policy<Input>>::Guard, <B as Policy<Input>>::Guard, <C as Policy<Input>>::Guard, <D as Policy<Input>>::Guard, <E as Policy<Input>>::Guard, <F as Policy<Input>>::Guard, <G as Policy<Input>>::Guard, <H as Policy<Input>>::Guard>
§impl<A, B, C, D, E, F, G, H, Response, Error> Policy<Response, Error> for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H, Response, Error> Policy<Response, Error> for Either8<A, B, C, D, E, F, G, H>
§impl<A, B, C, D, E, F, G, H> ProxyDB for Either8<A, B, C, D, E, F, G, H>where
A: ProxyDB,
<A as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
B: ProxyDB,
<B as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
C: ProxyDB,
<C as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
D: ProxyDB,
<D as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
E: ProxyDB,
<E as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
F: ProxyDB,
<F as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
G: ProxyDB,
<G as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
H: ProxyDB,
<H as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
impl<A, B, C, D, E, F, G, H> ProxyDB for Either8<A, B, C, D, E, F, G, H>where
A: ProxyDB,
<A as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
B: ProxyDB,
<B as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
C: ProxyDB,
<C as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
D: ProxyDB,
<D as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
E: ProxyDB,
<E as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
F: ProxyDB,
<F as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
G: ProxyDB,
<G as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
H: ProxyDB,
<H as ProxyDB>::Error: Into<Box<dyn Error + Sync + Send>>,
§type Error = Box<dyn Error + Sync + Send>
type Error = Box<dyn Error + Sync + Send>
§async fn get_proxy_if(
&self,
ctx: ProxyContext,
filter: ProxyFilter,
predicate: impl ProxyQueryPredicate,
) -> Result<Proxy, <Either8<A, B, C, D, E, F, G, H> as ProxyDB>::Error>
async fn get_proxy_if( &self, ctx: ProxyContext, filter: ProxyFilter, predicate: impl ProxyQueryPredicate, ) -> Result<Proxy, <Either8<A, B, C, D, E, F, G, H> as ProxyDB>::Error>
Self::get_proxy but with a predicate
to filter out found proxies that do not match the given predicate.§async fn get_proxy(
&self,
ctx: ProxyContext,
filter: ProxyFilter,
) -> Result<Proxy, <Either8<A, B, C, D, E, F, G, H> as ProxyDB>::Error>
async fn get_proxy( &self, ctx: ProxyContext, filter: ProxyFilter, ) -> Result<Proxy, <Either8<A, B, C, D, E, F, G, H> as ProxyDB>::Error>
Proxy based on the given ProxyContext and ProxyFilter,
or return an error in case no Proxy could be returned.§impl<A, B, C, D, E, F, G, H, Input, Output> Service<Input> for Either8<A, B, C, D, E, F, G, H>where
A: Service<Input, Output = Output>,
B: Service<Input, Output = Output>,
<B as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
C: Service<Input, Output = Output>,
<C as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
D: Service<Input, Output = Output>,
<D as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
E: Service<Input, Output = Output>,
<E as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
F: Service<Input, Output = Output>,
<F as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
G: Service<Input, Output = Output>,
<G as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
H: Service<Input, Output = Output>,
<H as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
Input: Send + 'static,
Output: Send + 'static,
impl<A, B, C, D, E, F, G, H, Input, Output> Service<Input> for Either8<A, B, C, D, E, F, G, H>where
A: Service<Input, Output = Output>,
B: Service<Input, Output = Output>,
<B as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
C: Service<Input, Output = Output>,
<C as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
D: Service<Input, Output = Output>,
<D as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
E: Service<Input, Output = Output>,
<E as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
F: Service<Input, Output = Output>,
<F as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
G: Service<Input, Output = Output>,
<G as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
H: Service<Input, Output = Output>,
<H as Service<Input>>::Error: Into<<A as Service<Input>>::Error>,
Input: Send + 'static,
Output: Send + 'static,
§async fn serve(
&self,
input: Input,
) -> Result<<Either8<A, B, C, D, E, F, G, H> as Service<Input>>::Output, <Either8<A, B, C, D, E, F, G, H> as Service<Input>>::Error>
async fn serve( &self, input: Input, ) -> Result<<Either8<A, B, C, D, E, F, G, H> as Service<Input>>::Output, <Either8<A, B, C, D, E, F, G, H> as Service<Input>>::Error>
§fn boxed(self) -> BoxService<Input, Self::Output, Self::Error>
fn boxed(self) -> BoxService<Input, Self::Output, Self::Error>
§impl<Input, ModifiedInput, A, B, C, D, E, F, G, H> ServiceMatcher<Input> for Either8<A, B, C, D, E, F, G, H>where
Input: Send + 'static,
ModifiedInput: Send + 'static,
A: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
B: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<B as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
C: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<C as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
D: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<D as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
E: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<E as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
F: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<F as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
G: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<G as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
H: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<H as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
impl<Input, ModifiedInput, A, B, C, D, E, F, G, H> ServiceMatcher<Input> for Either8<A, B, C, D, E, F, G, H>where
Input: Send + 'static,
ModifiedInput: Send + 'static,
A: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
B: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<B as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
C: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<C as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
D: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<D as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
E: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<E as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
F: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<F as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
G: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<G as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
H: ServiceMatcher<Input, ModifiedInput = ModifiedInput>,
<H as ServiceMatcher<Input>>::Error: Into<<A as ServiceMatcher<Input>>::Error>,
§type Service = Either8<<A as ServiceMatcher<Input>>::Service, <B as ServiceMatcher<Input>>::Service, <C as ServiceMatcher<Input>>::Service, <D as ServiceMatcher<Input>>::Service, <E as ServiceMatcher<Input>>::Service, <F as ServiceMatcher<Input>>::Service, <G as ServiceMatcher<Input>>::Service, <H as ServiceMatcher<Input>>::Service>
type Service = Either8<<A as ServiceMatcher<Input>>::Service, <B as ServiceMatcher<Input>>::Service, <C as ServiceMatcher<Input>>::Service, <D as ServiceMatcher<Input>>::Service, <E as ServiceMatcher<Input>>::Service, <F as ServiceMatcher<Input>>::Service, <G as ServiceMatcher<Input>>::Service, <H as ServiceMatcher<Input>>::Service>
§type Error = <A as ServiceMatcher<Input>>::Error
type Error = <A as ServiceMatcher<Input>>::Error
§type ModifiedInput = ModifiedInput
type ModifiedInput = ModifiedInput
§async fn match_service(
&self,
input: Input,
) -> Result<ServiceMatch<<Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::ModifiedInput, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Service>, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Error>
async fn match_service( &self, input: Input, ) -> Result<ServiceMatch<<Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::ModifiedInput, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Service>, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Error>
input.§async fn into_match_service(
self,
input: Input,
) -> Result<ServiceMatch<<Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::ModifiedInput, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Service>, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Error>where
Input: Send,
async fn into_match_service(
self,
input: Input,
) -> Result<ServiceMatch<<Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::ModifiedInput, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Service>, <Either8<A, B, C, D, E, F, G, H> as ServiceMatcher<Input>>::Error>where
Input: Send,
input, consuming the matcher. Read more§fn boxed(
self,
) -> BoxServiceMatcher<Input, Self::Service, Self::Error, Self::ModifiedInput>where
Self: Sized,
fn boxed(
self,
) -> BoxServiceMatcher<Input, Self::Service, Self::Error, Self::ModifiedInput>where
Self: Sized,
§impl<A, B, C, D, E, F, G, H> TcpStreamConnector for Either8<A, B, C, D, E, F, G, H>where
A: TcpStreamConnector,
<A as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
B: TcpStreamConnector,
<B as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
C: TcpStreamConnector,
<C as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
D: TcpStreamConnector,
<D as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
E: TcpStreamConnector,
<E as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
F: TcpStreamConnector,
<F as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
G: TcpStreamConnector,
<G as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
H: TcpStreamConnector,
<H as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
impl<A, B, C, D, E, F, G, H> TcpStreamConnector for Either8<A, B, C, D, E, F, G, H>where
A: TcpStreamConnector,
<A as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
B: TcpStreamConnector,
<B as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
C: TcpStreamConnector,
<C as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
D: TcpStreamConnector,
<D as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
E: TcpStreamConnector,
<E as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
F: TcpStreamConnector,
<F as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
G: TcpStreamConnector,
<G as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
H: TcpStreamConnector,
<H as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
§type Error = Box<dyn Error + Sync + Send>
type Error = Box<dyn Error + Sync + Send>
§async fn connect(
&self,
addr: SocketAddr,
) -> Result<TcpStream, <Either8<A, B, C, D, E, F, G, H> as TcpStreamConnector>::Error>
async fn connect( &self, addr: SocketAddr, ) -> Result<TcpStream, <Either8<A, B, C, D, E, F, G, H> as TcpStreamConnector>::Error>
SocketAddress to establish a TcpStream.§impl<A, B, C, D, E, F, G, H> TcpStreamConnectorFactory for Either8<A, B, C, D, E, F, G, H>where
A: TcpStreamConnectorFactory,
<A as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<A as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<A as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
B: TcpStreamConnectorFactory,
<B as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<B as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
C: TcpStreamConnectorFactory,
<C as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<C as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
D: TcpStreamConnectorFactory,
<D as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<D as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
E: TcpStreamConnectorFactory,
<E as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<E as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
F: TcpStreamConnectorFactory,
<F as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<F as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
G: TcpStreamConnectorFactory,
<G as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<G as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
H: TcpStreamConnectorFactory,
<H as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<H as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
impl<A, B, C, D, E, F, G, H> TcpStreamConnectorFactory for Either8<A, B, C, D, E, F, G, H>where
A: TcpStreamConnectorFactory,
<A as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<A as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<A as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
B: TcpStreamConnectorFactory,
<B as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<B as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
C: TcpStreamConnectorFactory,
<C as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<C as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
D: TcpStreamConnectorFactory,
<D as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<D as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
E: TcpStreamConnectorFactory,
<E as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<E as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
F: TcpStreamConnectorFactory,
<F as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<F as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
G: TcpStreamConnectorFactory,
<G as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<G as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
H: TcpStreamConnectorFactory,
<H as TcpStreamConnectorFactory>::Connector: TcpStreamConnector,
<<H as TcpStreamConnectorFactory>::Connector as TcpStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as TcpStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
§type Connector = Either8<<A as TcpStreamConnectorFactory>::Connector, <B as TcpStreamConnectorFactory>::Connector, <C as TcpStreamConnectorFactory>::Connector, <D as TcpStreamConnectorFactory>::Connector, <E as TcpStreamConnectorFactory>::Connector, <F as TcpStreamConnectorFactory>::Connector, <G as TcpStreamConnectorFactory>::Connector, <H as TcpStreamConnectorFactory>::Connector>
type Connector = Either8<<A as TcpStreamConnectorFactory>::Connector, <B as TcpStreamConnectorFactory>::Connector, <C as TcpStreamConnectorFactory>::Connector, <D as TcpStreamConnectorFactory>::Connector, <E as TcpStreamConnectorFactory>::Connector, <F as TcpStreamConnectorFactory>::Connector, <G as TcpStreamConnectorFactory>::Connector, <H as TcpStreamConnectorFactory>::Connector>
TcpStreamConnector created by this TcpStreamConnectorFactory§type Error = Box<dyn Error + Sync + Send>
type Error = Box<dyn Error + Sync + Send>
TcpStreamConnectorFactory was
not able to create a TcpStreamConnector.§async fn make_connector(
&self,
) -> Result<CreatedTcpStreamConnector<<Either8<A, B, C, D, E, F, G, H> as TcpStreamConnectorFactory>::Connector>, <Either8<A, B, C, D, E, F, G, H> as TcpStreamConnectorFactory>::Error>
async fn make_connector( &self, ) -> Result<CreatedTcpStreamConnector<<Either8<A, B, C, D, E, F, G, H> as TcpStreamConnectorFactory>::Connector>, <Either8<A, B, C, D, E, F, G, H> as TcpStreamConnectorFactory>::Error>
TcpStreamConnector, and return an error or otherwise.§impl<A, B, C, D, E, F, G, H> UnixStreamConnector for Either8<A, B, C, D, E, F, G, H>where
A: UnixStreamConnector,
<A as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
B: UnixStreamConnector,
<B as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
C: UnixStreamConnector,
<C as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
D: UnixStreamConnector,
<D as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
E: UnixStreamConnector,
<E as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
F: UnixStreamConnector,
<F as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
G: UnixStreamConnector,
<G as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
H: UnixStreamConnector,
<H as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
impl<A, B, C, D, E, F, G, H> UnixStreamConnector for Either8<A, B, C, D, E, F, G, H>where
A: UnixStreamConnector,
<A as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
B: UnixStreamConnector,
<B as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
C: UnixStreamConnector,
<C as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
D: UnixStreamConnector,
<D as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
E: UnixStreamConnector,
<E as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
F: UnixStreamConnector,
<F as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
G: UnixStreamConnector,
<G as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
H: UnixStreamConnector,
<H as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
§type Error = Box<dyn Error + Sync + Send>
type Error = Box<dyn Error + Sync + Send>
§async fn connect(
&self,
path: PathBuf,
) -> Result<UnixStream, <Either8<A, B, C, D, E, F, G, H> as UnixStreamConnector>::Error>
async fn connect( &self, path: PathBuf, ) -> Result<UnixStream, <Either8<A, B, C, D, E, F, G, H> as UnixStreamConnector>::Error>
UnixStream.§impl<A, B, C, D, E, F, G, H> UnixStreamConnectorFactory for Either8<A, B, C, D, E, F, G, H>where
A: UnixStreamConnectorFactory,
<A as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<A as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<A as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
B: UnixStreamConnectorFactory,
<B as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<B as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
C: UnixStreamConnectorFactory,
<C as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<C as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
D: UnixStreamConnectorFactory,
<D as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<D as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
E: UnixStreamConnectorFactory,
<E as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<E as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
F: UnixStreamConnectorFactory,
<F as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<F as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
G: UnixStreamConnectorFactory,
<G as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<G as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
H: UnixStreamConnectorFactory,
<H as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<H as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
impl<A, B, C, D, E, F, G, H> UnixStreamConnectorFactory for Either8<A, B, C, D, E, F, G, H>where
A: UnixStreamConnectorFactory,
<A as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<A as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<A as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
B: UnixStreamConnectorFactory,
<B as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<B as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<B as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
C: UnixStreamConnectorFactory,
<C as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<C as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<C as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
D: UnixStreamConnectorFactory,
<D as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<D as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<D as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
E: UnixStreamConnectorFactory,
<E as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<E as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<E as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
F: UnixStreamConnectorFactory,
<F as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<F as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<F as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
G: UnixStreamConnectorFactory,
<G as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<G as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<G as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
H: UnixStreamConnectorFactory,
<H as UnixStreamConnectorFactory>::Connector: UnixStreamConnector,
<<H as UnixStreamConnectorFactory>::Connector as UnixStreamConnector>::Error: Into<Box<dyn Error + Sync + Send>>,
<H as UnixStreamConnectorFactory>::Error: Into<Box<dyn Error + Sync + Send>>,
§type Connector = Either8<<A as UnixStreamConnectorFactory>::Connector, <B as UnixStreamConnectorFactory>::Connector, <C as UnixStreamConnectorFactory>::Connector, <D as UnixStreamConnectorFactory>::Connector, <E as UnixStreamConnectorFactory>::Connector, <F as UnixStreamConnectorFactory>::Connector, <G as UnixStreamConnectorFactory>::Connector, <H as UnixStreamConnectorFactory>::Connector>
type Connector = Either8<<A as UnixStreamConnectorFactory>::Connector, <B as UnixStreamConnectorFactory>::Connector, <C as UnixStreamConnectorFactory>::Connector, <D as UnixStreamConnectorFactory>::Connector, <E as UnixStreamConnectorFactory>::Connector, <F as UnixStreamConnectorFactory>::Connector, <G as UnixStreamConnectorFactory>::Connector, <H as UnixStreamConnectorFactory>::Connector>
UnixStreamConnector created by this UnixStreamConnectorFactory§type Error = Box<dyn Error + Sync + Send>
type Error = Box<dyn Error + Sync + Send>
UnixStreamConnectorFactory was
not able to create a UnixStreamConnector.§async fn make_connector(
&self,
) -> Result<<Either8<A, B, C, D, E, F, G, H> as UnixStreamConnectorFactory>::Connector, <Either8<A, B, C, D, E, F, G, H> as UnixStreamConnectorFactory>::Error>
async fn make_connector( &self, ) -> Result<<Either8<A, B, C, D, E, F, G, H> as UnixStreamConnectorFactory>::Connector, <Either8<A, B, C, D, E, F, G, H> as UnixStreamConnectorFactory>::Error>
UnixStreamConnector, and return an error or otherwise.§impl<A, B, C, D, E, F, G, H> UriMatchReplace for Either8<A, B, C, D, E, F, G, H>where
A: UriMatchReplace,
B: UriMatchReplace,
C: UriMatchReplace,
D: UriMatchReplace,
E: UriMatchReplace,
F: UriMatchReplace,
G: UriMatchReplace,
H: UriMatchReplace,
impl<A, B, C, D, E, F, G, H> UriMatchReplace for Either8<A, B, C, D, E, F, G, H>where
A: UriMatchReplace,
B: UriMatchReplace,
C: UriMatchReplace,
D: UriMatchReplace,
E: UriMatchReplace,
F: UriMatchReplace,
G: UriMatchReplace,
H: UriMatchReplace,
§fn match_replace_uri<'a>(
&self,
uri: Cow<'a, Uri>,
) -> Result<Cow<'a, Uri>, UriMatchError<'a>>
fn match_replace_uri<'a>( &self, uri: Cow<'a, Uri>, ) -> Result<Cow<'a, Uri>, UriMatchError<'a>>
uri against the rule’s pattern and, on success,
returns the same Uri or a new reformatted Uri. Read more§impl<A, B, C, D, E, F, G, H> UserAgentProvider for Either8<A, B, C, D, E, F, G, H>where
A: UserAgentProvider,
B: UserAgentProvider,
C: UserAgentProvider,
D: UserAgentProvider,
E: UserAgentProvider,
F: UserAgentProvider,
G: UserAgentProvider,
H: UserAgentProvider,
impl<A, B, C, D, E, F, G, H> UserAgentProvider for Either8<A, B, C, D, E, F, G, H>where
A: UserAgentProvider,
B: UserAgentProvider,
C: UserAgentProvider,
D: UserAgentProvider,
E: UserAgentProvider,
F: UserAgentProvider,
G: UserAgentProvider,
H: UserAgentProvider,
§fn select_user_agent_profile(
&self,
extensions: &Extensions,
) -> Option<&UserAgentProfile>
fn select_user_agent_profile( &self, extensions: &Extensions, ) -> Option<&UserAgentProfile>
§impl<const SEPARATOR: char, A, B, C, D, E, F, G, H> UsernameLabelWriter<SEPARATOR> for Either8<A, B, C, D, E, F, G, H>where
A: UsernameLabelWriter<SEPARATOR>,
B: UsernameLabelWriter<SEPARATOR>,
C: UsernameLabelWriter<SEPARATOR>,
D: UsernameLabelWriter<SEPARATOR>,
E: UsernameLabelWriter<SEPARATOR>,
F: UsernameLabelWriter<SEPARATOR>,
G: UsernameLabelWriter<SEPARATOR>,
H: UsernameLabelWriter<SEPARATOR>,
impl<const SEPARATOR: char, A, B, C, D, E, F, G, H> UsernameLabelWriter<SEPARATOR> for Either8<A, B, C, D, E, F, G, H>where
A: UsernameLabelWriter<SEPARATOR>,
B: UsernameLabelWriter<SEPARATOR>,
C: UsernameLabelWriter<SEPARATOR>,
D: UsernameLabelWriter<SEPARATOR>,
E: UsernameLabelWriter<SEPARATOR>,
F: UsernameLabelWriter<SEPARATOR>,
G: UsernameLabelWriter<SEPARATOR>,
H: UsernameLabelWriter<SEPARATOR>,
§fn write_labels(
&self,
composer: &mut Composer<SEPARATOR>,
) -> Result<(), ComposeError>
fn write_labels( &self, composer: &mut Composer<SEPARATOR>, ) -> Result<(), ComposeError>
Composer.Auto Trait Implementations§
impl<A, B, C, D, E, F, G, H> Freeze for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> RefUnwindSafe for Either8<A, B, C, D, E, F, G, H>where
A: RefUnwindSafe,
B: RefUnwindSafe,
C: RefUnwindSafe,
D: RefUnwindSafe,
E: RefUnwindSafe,
F: RefUnwindSafe,
G: RefUnwindSafe,
H: RefUnwindSafe,
impl<A, B, C, D, E, F, G, H> Send for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> Sync for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> Unpin for Either8<A, B, C, D, E, F, G, H>
impl<A, B, C, D, E, F, G, H> UnsafeUnpin for Either8<A, B, C, D, E, F, G, H>where
A: UnsafeUnpin,
B: UnsafeUnpin,
C: UnsafeUnpin,
D: UnsafeUnpin,
E: UnsafeUnpin,
F: UnsafeUnpin,
G: UnsafeUnpin,
H: UnsafeUnpin,
impl<A, B, C, D, E, F, G, H> UnwindSafe for Either8<A, B, C, D, E, F, G, H>where
A: UnwindSafe,
B: UnwindSafe,
C: UnwindSafe,
D: UnwindSafe,
E: UnwindSafe,
F: UnwindSafe,
G: UnwindSafe,
H: UnwindSafe,
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
§impl<R> AsyncReadExt for Rwhere
R: AsyncRead + ?Sized,
impl<R> AsyncReadExt for Rwhere
R: AsyncRead + ?Sized,
§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
§fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
buf. Read more§fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
§fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
§fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
§fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
§fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
§fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
§fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
§fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
§fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
§fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
§fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
§fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
§fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
§fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
§fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
§fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
§fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
§fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
§fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
§fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
§fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
§fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
§fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
buf. Read more§fn read_to_string<'a>(
&'a mut self,
dst: &'a mut String,
) -> ReadToString<'a, Self>where
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
dst: &'a mut String,
) -> ReadToString<'a, Self>where
Self: Unpin,
buf. Read more§impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
§fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
fn write<'a>(&'a mut self, src: &'a [u8]) -> Write<'a, Self>where
Self: Unpin,
§fn write_vectored<'a, 'b>(
&'a mut self,
bufs: &'a [IoSlice<'b>],
) -> WriteVectored<'a, 'b, Self>where
Self: Unpin,
fn write_vectored<'a, 'b>(
&'a mut self,
bufs: &'a [IoSlice<'b>],
) -> WriteVectored<'a, 'b, Self>where
Self: Unpin,
§fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
fn write_buf<'a, B>(&'a mut self, src: &'a mut B) -> WriteBuf<'a, Self, B>
§fn write_all_buf<'a, B>(
&'a mut self,
src: &'a mut B,
) -> WriteAllBuf<'a, Self, B>
fn write_all_buf<'a, B>( &'a mut self, src: &'a mut B, ) -> WriteAllBuf<'a, Self, B>
§fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
fn write_all<'a>(&'a mut self, src: &'a [u8]) -> WriteAll<'a, Self>where
Self: Unpin,
§fn write_u8(&mut self, n: u8) -> WriteU8<&mut Self>where
Self: Unpin,
fn write_u8(&mut self, n: u8) -> WriteU8<&mut Self>where
Self: Unpin,
§fn write_i8(&mut self, n: i8) -> WriteI8<&mut Self>where
Self: Unpin,
fn write_i8(&mut self, n: i8) -> WriteI8<&mut Self>where
Self: Unpin,
§fn write_u16(&mut self, n: u16) -> WriteU16<&mut Self>where
Self: Unpin,
fn write_u16(&mut self, n: u16) -> WriteU16<&mut Self>where
Self: Unpin,
§fn write_i16(&mut self, n: i16) -> WriteI16<&mut Self>where
Self: Unpin,
fn write_i16(&mut self, n: i16) -> WriteI16<&mut Self>where
Self: Unpin,
§fn write_u32(&mut self, n: u32) -> WriteU32<&mut Self>where
Self: Unpin,
fn write_u32(&mut self, n: u32) -> WriteU32<&mut Self>where
Self: Unpin,
§fn write_i32(&mut self, n: i32) -> WriteI32<&mut Self>where
Self: Unpin,
fn write_i32(&mut self, n: i32) -> WriteI32<&mut Self>where
Self: Unpin,
§fn write_u64(&mut self, n: u64) -> WriteU64<&mut Self>where
Self: Unpin,
fn write_u64(&mut self, n: u64) -> WriteU64<&mut Self>where
Self: Unpin,
§fn write_i64(&mut self, n: i64) -> WriteI64<&mut Self>where
Self: Unpin,
fn write_i64(&mut self, n: i64) -> WriteI64<&mut Self>where
Self: Unpin,
§fn write_u128(&mut self, n: u128) -> WriteU128<&mut Self>where
Self: Unpin,
fn write_u128(&mut self, n: u128) -> WriteU128<&mut Self>where
Self: Unpin,
§fn write_i128(&mut self, n: i128) -> WriteI128<&mut Self>where
Self: Unpin,
fn write_i128(&mut self, n: i128) -> WriteI128<&mut Self>where
Self: Unpin,
§fn write_f32(&mut self, n: f32) -> WriteF32<&mut Self>where
Self: Unpin,
fn write_f32(&mut self, n: f32) -> WriteF32<&mut Self>where
Self: Unpin,
§fn write_f64(&mut self, n: f64) -> WriteF64<&mut Self>where
Self: Unpin,
fn write_f64(&mut self, n: f64) -> WriteF64<&mut Self>where
Self: Unpin,
§fn write_u16_le(&mut self, n: u16) -> WriteU16Le<&mut Self>where
Self: Unpin,
fn write_u16_le(&mut self, n: u16) -> WriteU16Le<&mut Self>where
Self: Unpin,
§fn write_i16_le(&mut self, n: i16) -> WriteI16Le<&mut Self>where
Self: Unpin,
fn write_i16_le(&mut self, n: i16) -> WriteI16Le<&mut Self>where
Self: Unpin,
§fn write_u32_le(&mut self, n: u32) -> WriteU32Le<&mut Self>where
Self: Unpin,
fn write_u32_le(&mut self, n: u32) -> WriteU32Le<&mut Self>where
Self: Unpin,
§fn write_i32_le(&mut self, n: i32) -> WriteI32Le<&mut Self>where
Self: Unpin,
fn write_i32_le(&mut self, n: i32) -> WriteI32Le<&mut Self>where
Self: Unpin,
§fn write_u64_le(&mut self, n: u64) -> WriteU64Le<&mut Self>where
Self: Unpin,
fn write_u64_le(&mut self, n: u64) -> WriteU64Le<&mut Self>where
Self: Unpin,
§fn write_i64_le(&mut self, n: i64) -> WriteI64Le<&mut Self>where
Self: Unpin,
fn write_i64_le(&mut self, n: i64) -> WriteI64Le<&mut Self>where
Self: Unpin,
§fn write_u128_le(&mut self, n: u128) -> WriteU128Le<&mut Self>where
Self: Unpin,
fn write_u128_le(&mut self, n: u128) -> WriteU128Le<&mut Self>where
Self: Unpin,
§fn write_i128_le(&mut self, n: i128) -> WriteI128Le<&mut Self>where
Self: Unpin,
fn write_i128_le(&mut self, n: i128) -> WriteI128Le<&mut Self>where
Self: Unpin,
§fn write_f32_le(&mut self, n: f32) -> WriteF32Le<&mut Self>where
Self: Unpin,
fn write_f32_le(&mut self, n: f32) -> WriteF32Le<&mut Self>where
Self: Unpin,
§fn write_f64_le(&mut self, n: f64) -> WriteF64Le<&mut Self>where
Self: Unpin,
fn write_f64_le(&mut self, n: f64) -> WriteF64Le<&mut Self>where
Self: Unpin,
§impl<T> BodyExt for T
impl<T> BodyExt for T
§fn frame(&mut self) -> Frame<'_, Self> ⓘwhere
Self: Unpin,
fn frame(&mut self) -> Frame<'_, Self> ⓘwhere
Self: Unpin,
Frame, if any.§fn boxed_unsync(self) -> UnsyncBoxBody<Self::Data, Self::Error>
fn boxed_unsync(self) -> UnsyncBoxBody<Self::Data, Self::Error>
§fn collect(self) -> Collect<Self> ⓘwhere
Self: Sized,
fn collect(self) -> Collect<Self> ⓘwhere
Self: Sized,
Collected body which will collect all the DATA frames
and trailers.§fn with_trailers<F>(self, trailers: F) -> WithTrailers<Self, F>
fn with_trailers<F>(self, trailers: F) -> WithTrailers<Self, F>
§fn into_data_stream(self) -> BodyDataStream<Self>where
Self: Sized,
fn into_data_stream(self) -> BodyDataStream<Self>where
Self: Sized,
BodyDataStream.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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T, M1, M2> ClientStreamingService<M1> for T
impl<T, M1, M2> ClientStreamingService<M1> for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<S, Input, Connection> ConnectorService<Input> for S
impl<S, Input, Connection> ConnectorService<Input> for S
§type Connection = Connection
type Connection = Connection
ConnectorService§fn connect(
&self,
input: Input,
) -> impl Future<Output = Result<EstablishedClientConnection<<S as ConnectorService<Input>>::Connection, Input>, <S as ConnectorService<Input>>::Error>> + Send
fn connect( &self, input: Input, ) -> impl Future<Output = Result<EstablishedClientConnection<<S as ConnectorService<Input>>::Connection, Input>, <S as ConnectorService<Input>>::Error>> + Send
§impl<Input, T> DynServiceMatcher<Input> for Twhere
T: ServiceMatcher<Input>,
impl<Input, T> DynServiceMatcher<Input> for Twhere
T: ServiceMatcher<Input>,
§type Service = <T as ServiceMatcher<Input>>::Service
type Service = <T as ServiceMatcher<Input>>::Service
§type Error = <T as ServiceMatcher<Input>>::Error
type Error = <T as ServiceMatcher<Input>>::Error
§type ModifiedInput = <T as ServiceMatcher<Input>>::ModifiedInput
type ModifiedInput = <T as ServiceMatcher<Input>>::ModifiedInput
§fn match_service_box(
&self,
input: Input,
) -> Pin<Box<dyn Future<Output = Result<ServiceMatch<<T as DynServiceMatcher<Input>>::ModifiedInput, <T as DynServiceMatcher<Input>>::Service>, <T as DynServiceMatcher<Input>>::Error>> + Send + '_>>
fn match_service_box( &self, input: Input, ) -> Pin<Box<dyn Future<Output = Result<ServiceMatch<<T as DynServiceMatcher<Input>>::ModifiedInput, <T as DynServiceMatcher<Input>>::Service>, <T as DynServiceMatcher<Input>>::Error>> + Send + '_>>
input.Source§impl<N, E, I> ElementIterator<N, E> for I
impl<N, E, I> ElementIterator<N, E> for I
§impl<'e, I, E> EmitAndCount for I
impl<'e, I, E> EmitAndCount for I
§fn emit(&mut self, encoder: &mut BinEncoder<'_>) -> Result<usize, ProtoError>
fn emit(&mut self, encoder: &mut BinEncoder<'_>) -> Result<usize, ProtoError>
§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<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, or crate features alloc and spin 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_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> FutureExt for T
impl<T> FutureExt for T
§impl<T, ReqBody, ResBody> GrpcService<ReqBody> for T
impl<T, ReqBody, ResBody> GrpcService<ReqBody> for T
§type ResponseBody = ResBody
type ResponseBody = ResBody
§fn serve(
&self,
request: Request<ReqBody>,
) -> impl Future<Output = Result<Response<<T as GrpcService<ReqBody>>::ResponseBody>, <T as GrpcService<ReqBody>>::Error>> + Send
fn serve( &self, request: Request<ReqBody>, ) -> impl Future<Output = Result<Response<<T as GrpcService<ReqBody>>::ResponseBody>, <T as GrpcService<ReqBody>>::Error>> + Send
§impl<R> HappyEyeballAddressResolverExt for Rwhere
R: DnsAddressResolver,
impl<R> HappyEyeballAddressResolverExt for Rwhere
R: DnsAddressResolver,
§fn happy_eyeballs_resolver(
&self,
host: impl Into<Host>,
) -> HappyEyeballAddressResolver<'_, R>
fn happy_eyeballs_resolver( &self, host: impl Into<Host>, ) -> HappyEyeballAddressResolver<'_, R>
§impl<S, Body> HttpClientExt for S
impl<S, Body> HttpClientExt for S
§type ExecuteResponse = Response<Body>
type ExecuteResponse = Response<Body>
execute method.§type ExecuteError = <S as Service<Request>>::Error
type ExecuteError = <S as Service<Request>>::Error
execute method.§fn get(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn get( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
GET request to a URL. Read more§fn post(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn post( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
POST request to a URL. Read more§fn put(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn put( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
PUT request to a URL. Read more§fn patch(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn patch( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
PATCH request to a URL. Read more§fn delete(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn delete( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
DELETE request to a URL. Read more§fn head(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn head( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
HEAD request to a URL. Read more§fn connect(
&self,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn connect( &self, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
CONNECT request to a URL. Read more§fn request(
&self,
method: Method,
url: impl IntoUrl,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn request( &self, method: Method, url: impl IntoUrl, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
§fn build_from_request<RequestBody>(
&self,
request: Request<RequestBody>,
) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
fn build_from_request<RequestBody>( &self, request: Request<RequestBody>, ) -> RequestBuilder<'_, S, <S as HttpClientExt>::ExecuteResponse>
§fn execute(
&self,
request: Request,
) -> impl Future<Output = Result<<S as HttpClientExt>::ExecuteResponse, <S as HttpClientExt>::ExecuteError>>
fn execute( &self, request: Request, ) -> impl Future<Output = Result<<S as HttpClientExt>::ExecuteResponse, <S as HttpClientExt>::ExecuteError>>
Request. Read more§impl<S, Body> HttpClientWebSocketExt<Body> for S
impl<S, Body> HttpClientWebSocketExt<Body> for S
§fn websocket(
&self,
url: impl IntoUrl,
) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
fn websocket( &self, url: impl IntoUrl, ) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
WebSocketRequestBuilder] to be used to establish a WebSocket connection over http/1.1.§fn websocket_h2(
&self,
url: impl IntoUrl,
) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
fn websocket_h2( &self, url: impl IntoUrl, ) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
WebSocketRequestBuilder to be used to establish a WebSocket connection over h2.§fn websocket_with_request<RequestBody>(
&self,
req: Request<RequestBody>,
) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
fn websocket_with_request<RequestBody>( &self, req: Request<RequestBody>, ) -> WebSocketRequestBuilder<WithService<'_, S, Body>>
WebSocketRequestBuilder starting from the given request. Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 more§impl<S> IntoEndpointService<(S,)> for S
impl<S> IntoEndpointService<(S,)> for S
type Service = S
§fn into_endpoint_service(self) -> <S as IntoEndpointService<(S,)>>::Service
fn into_endpoint_service(self) -> <S as IntoEndpointService<(S,)>>::Service
rama_core::Service.§impl<O> IntoEndpointService<Response> for O
impl<O> IntoEndpointService<Response> for O
type Service = StaticOutput<O>
§fn into_endpoint_service(self) -> <O as IntoEndpointService<Response>>::Service
fn into_endpoint_service(self) -> <O as IntoEndpointService<Response>>::Service
rama_core::Service.§impl<S, State> IntoEndpointServiceWithState<(S,), State> for S
impl<S, State> IntoEndpointServiceWithState<(S,), State> for S
type Service = S
§fn into_endpoint_service_with_state(
self,
_state: State,
) -> <S as IntoEndpointServiceWithState<(S,), State>>::Service
fn into_endpoint_service_with_state( self, _state: State, ) -> <S as IntoEndpointServiceWithState<(S,), State>>::Service
rama_core::Service with state.§impl<O, State> IntoEndpointServiceWithState<Response, State> for O
impl<O, State> IntoEndpointServiceWithState<Response, State> for O
type Service = StaticOutput<O>
§fn into_endpoint_service_with_state(
self,
_state: State,
) -> <O as IntoEndpointServiceWithState<Response, State>>::Service
fn into_endpoint_service_with_state( self, _state: State, ) -> <O as IntoEndpointServiceWithState<Response, State>>::Service
rama_core::Service with state.Source§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
Source§impl<I> IntoIterator for Iwhere
I: Iterator,
impl<I> IntoIterator for Iwhere
I: Iterator,
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Requestimpl<T> Io for Twhere
T: AsyncRead + AsyncWrite + Send + 'static,
§impl<'a, I, M, Input> IteratorMatcherExt<'a, M, Input> for I
impl<'a, I, M, Input> IteratorMatcherExt<'a, M, Input> for I
§fn matches_and(self, ext: Option<&Extensions>, input: &Input) -> bool
fn matches_and(self, ext: Option<&Extensions>, input: &Input) -> bool
§fn matches_or(self, ext: Option<&Extensions>, input: &Input) -> bool
fn matches_or(self, ext: Option<&Extensions>, input: &Input) -> bool
Matcher elements match for the given Input
within the specified Extensions.Source§impl<I> IteratorRandom for Iwhere
I: Iterator,
impl<I> IteratorRandom for Iwhere
I: Iterator,
Source§fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>
fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>
§impl<I> IteratorRandom for Iwhere
I: Iterator,
impl<I> IteratorRandom for Iwhere
I: Iterator,
§fn choose<R>(self, rng: &mut R) -> Option<Self::Item>where
R: Rng + ?Sized,
fn choose<R>(self, rng: &mut R) -> Option<Self::Item>where
R: Rng + ?Sized,
§fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>where
R: Rng + ?Sized,
fn choose_stable<R>(self, rng: &mut R) -> Option<Self::Item>where
R: Rng + ?Sized,
§fn sample_fill<R>(self, rng: &mut R, buf: &mut [Self::Item]) -> usizewhere
R: Rng + ?Sized,
fn sample_fill<R>(self, rng: &mut R, buf: &mut [Self::Item]) -> usizewhere
R: Rng + ?Sized,
amount distinct elements into a buffer Read more§fn sample<R>(self, rng: &mut R, amount: usize) -> Vec<Self::Item>where
R: Rng + ?Sized,
fn sample<R>(self, rng: &mut R, amount: usize) -> Vec<Self::Item>where
R: Rng + ?Sized,
alloc only.§impl<T> Itertools for T
impl<T> Itertools for T
§fn interleave<J>(
self,
other: J,
) -> Interleave<Self, <J as IntoIterator>::IntoIter> ⓘ
fn interleave<J>( self, other: J, ) -> Interleave<Self, <J as IntoIterator>::IntoIter> ⓘ
§fn interleave_shortest<J>(
self,
other: J,
) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> ⓘ
fn interleave_shortest<J>( self, other: J, ) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> ⓘ
§fn intersperse(
self,
element: Self::Item,
) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> ⓘ
fn intersperse( self, element: Self::Item, ) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> ⓘ
§fn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> ⓘ
fn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> ⓘ
§fn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
fn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
§fn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
fn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
§fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
§fn batching<B, F>(self, f: F) -> Batching<Self, F> ⓘ
fn batching<B, F>(self, f: F) -> Batching<Self, F> ⓘ
§fn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
use_alloc only.§fn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
Use .chunk_by() instead
use_alloc only..chunk_by().§fn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
fn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
use_alloc only.§fn tuple_windows<T>(self) -> TupleWindows<Self, T> ⓘ
fn tuple_windows<T>(self) -> TupleWindows<Self, T> ⓘ
§fn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> ⓘ
fn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> ⓘ
§fn tuples<T>(self) -> Tuples<Self, T> ⓘ
fn tuples<T>(self) -> Tuples<Self, T> ⓘ
§fn tee(self) -> (Tee<Self>, Tee<Self>)
fn tee(self) -> (Tee<Self>, Tee<Self>)
use_alloc only.§fn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
fn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
Result::Ok value. Result::Err values are
unchanged. Read more§fn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> ⓘ
fn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> ⓘ
Result::Ok
value with the provided closure. Result::Err values are
unchanged. Read more§fn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> ⓘ
fn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> ⓘ
Result::Ok value with the provided closure. Result::Err
values are unchanged. Read more§fn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> ⓘ
fn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> ⓘ
Result::Ok value into
a series of Result::Ok values. Result::Err values are unchanged. Read more§fn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
fn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
Result values instead. Read more§fn merge<J>(
self,
other: J,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> ⓘ
fn merge<J>( self, other: J, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> ⓘ
§fn merge_by<J, F>(
self,
other: J,
is_first: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> ⓘ
fn merge_by<J, F>( self, other: J, is_first: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> ⓘ
§fn merge_join_by<J, F, T>(
self,
other: J,
cmp_fn: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> ⓘ
fn merge_join_by<J, F, T>( self, other: J, cmp_fn: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> ⓘ
§fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> ⓘ
fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> ⓘ
use_alloc only.§fn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
fn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
use_alloc only.§fn cartesian_product<J>(
self,
other: J,
) -> Product<Self, <J as IntoIterator>::IntoIter> ⓘ
fn cartesian_product<J>( self, other: J, ) -> Product<Self, <J as IntoIterator>::IntoIter> ⓘ
self and J. Read more§fn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
fn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
use_alloc only.self. Read more§fn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
fn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
§fn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
fn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
§fn dedup_by<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
fn dedup_by<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
§fn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
fn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
§fn dedup_by_with_count<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
fn dedup_by_with_count<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
§fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> ⓘ
fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> ⓘ
accept returns true. Read more§fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> ⓘ
fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> ⓘ
Clone-able iterator
to only pick off elements while the predicate accept returns true. Read more§fn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> ⓘ
fn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> ⓘ
true, including the element for which the predicate
first returned false. Read more§fn while_some<A>(self) -> WhileSome<Self> ⓘ
fn while_some<A>(self) -> WhileSome<Self> ⓘ
Option<A> iterator elements
and produces A. Stops on the first None encountered. Read more§fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> ⓘ
fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> ⓘ
§fn array_combinations<const K: usize>(
self,
) -> CombinationsGeneric<Self, [usize; K]>
fn array_combinations<const K: usize>( self, ) -> CombinationsGeneric<Self, [usize; K]>
use_alloc only.§fn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
fn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
use_alloc only.k-length combinations of
the elements from an iterator. Read more§fn combinations_with_replacement(
self,
k: usize,
) -> CombinationsWithReplacement<Self> ⓘ
fn combinations_with_replacement( self, k: usize, ) -> CombinationsWithReplacement<Self> ⓘ
use_alloc only.k-length combinations of
the elements from an iterator, with replacement. Read more§fn permutations(self, k: usize) -> Permutations<Self> ⓘ
fn permutations(self, k: usize) -> Permutations<Self> ⓘ
use_alloc only.§fn powerset(self) -> Powerset<Self> ⓘ
fn powerset(self) -> Powerset<Self> ⓘ
use_alloc only.§fn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> ⓘ
fn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> ⓘ
min by filling missing elements using a closure f. Read more§fn with_position(self) -> WithPosition<Self> ⓘwhere
Self: Sized,
fn with_position(self) -> WithPosition<Self> ⓘwhere
Self: Sized,
Position to
ease special-case handling of the first or last elements. Read more§fn positions<P>(self, predicate: P) -> Positions<Self, P> ⓘ
fn positions<P>(self, predicate: P) -> Positions<Self, P> ⓘ
§fn update<F>(self, updater: F) -> Update<Self, F> ⓘ
fn update<F>(self, updater: F) -> Update<Self, F> ⓘ
§fn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
fn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
§fn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
fn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
§fn next_tuple<T>(&mut self) -> Option<T>
fn next_tuple<T>(&mut self) -> Option<T>
§fn collect_tuple<T>(self) -> Option<T>
fn collect_tuple<T>(self) -> Option<T>
§fn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
fn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
§fn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
§fn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
§fn contains<Q>(&mut self, query: &Q) -> bool
fn contains<Q>(&mut self, query: &Q) -> bool
true if the given item is present in this iterator. Read more§fn all_equal_value(
&mut self,
) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
fn all_equal_value( &mut self, ) -> Result<Self::Item, Option<(Self::Item, Self::Item)>>
§fn dropping(self, n: usize) -> Selfwhere
Self: Sized,
fn dropping(self, n: usize) -> Selfwhere
Self: Sized,
n elements from the iterator eagerly,
and return the same iterator again. Read more§fn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
fn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
n elements from the iterator eagerly,
and return the same iterator again. Read more§fn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
fn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
use_alloc only..collect_vec() is simply a type specialization of Iterator::collect,
for convenience.§fn try_collect<T, U, E>(self) -> Result<U, E>
fn try_collect<T, U, E>(self) -> Result<U, E>
§fn set_from<'a, A, J>(&mut self, from: J) -> usize
fn set_from<'a, A, J>(&mut self, from: J) -> usize
self from the from iterator,
stopping at the shortest of the two iterators. Read more§fn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
fn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
sep. Read more§fn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
fn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
sep. Read more§fn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
fn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
Result values from an iterator. Read more§fn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
fn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
Option values from an iterator. Read more§fn fold1<F>(self, f: F) -> Option<Self::Item>
fn fold1<F>(self, f: F) -> Option<Self::Item>
Use Iterator::reduce instead
§fn tree_reduce<F>(self, f: F) -> Option<Self::Item>
fn tree_reduce<F>(self, f: F) -> Option<Self::Item>
§fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
Use .tree_reduce() instead
.tree_reduce().§fn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
fn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
§fn product1<P>(self) -> Option<P>
fn product1<P>(self) -> Option<P>
§fn sorted_unstable(self) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable(self) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted(self) -> IntoIter<Self::Item> ⓘ
fn sorted(self) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_smallest(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_largest(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn tail(self, n: usize) -> IntoIter<Self::Item> ⓘwhere
Self: Sized,
fn tail(self, n: usize) -> IntoIter<Self::Item> ⓘwhere
Self: Sized,
use_alloc only.n elements. Read more§fn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
fn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
Iterator::partition, each partition may
have a distinct type. Read more§fn partition_result<A, B, T, E>(self) -> (A, B)
fn partition_result<A, B, T, E>(self) -> (A, B)
Results into one list of all the Ok elements
and another list of all the Err elements. Read more§fn min_set(self) -> Vec<Self::Item>
fn min_set(self) -> Vec<Self::Item>
use_alloc only.§fn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
use_alloc only.§fn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
use_alloc only.§fn max_set(self) -> Vec<Self::Item>
fn max_set(self) -> Vec<Self::Item>
use_alloc only.§fn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
use_alloc only.§fn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
use_alloc only.§fn minmax(self) -> MinMaxResult<Self::Item>
fn minmax(self) -> MinMaxResult<Self::Item>
§fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
§fn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
fn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
§fn position_max(self) -> Option<usize>
fn position_max(self) -> Option<usize>
§fn position_max_by_key<K, F>(self, key: F) -> Option<usize>
fn position_max_by_key<K, F>(self, key: F) -> Option<usize>
§fn position_max_by<F>(self, compare: F) -> Option<usize>
fn position_max_by<F>(self, compare: F) -> Option<usize>
§fn position_min(self) -> Option<usize>
fn position_min(self) -> Option<usize>
§fn position_min_by_key<K, F>(self, key: F) -> Option<usize>
fn position_min_by_key<K, F>(self, key: F) -> Option<usize>
§fn position_min_by<F>(self, compare: F) -> Option<usize>
fn position_min_by<F>(self, compare: F) -> Option<usize>
§fn position_minmax(self) -> MinMaxResult<usize>
fn position_minmax(self) -> MinMaxResult<usize>
§fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
§fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
§fn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
fn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
§fn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
fn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
Ok(None) will be returned. If the iterator yields
exactly one element, that element will be returned, otherwise an error will be returned
containing an iterator that has the same output as the input iterator. Read more§fn multipeek(self) -> MultiPeek<Self> ⓘwhere
Self: Sized,
fn multipeek(self) -> MultiPeek<Self> ⓘwhere
Self: Sized,
use_alloc only..next()
values without advancing the base iterator. Read more§fn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
fn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
§impl<T> Itertools for T
impl<T> Itertools for T
§fn interleave<J>(
self,
other: J,
) -> Interleave<Self, <J as IntoIterator>::IntoIter> ⓘ
fn interleave<J>( self, other: J, ) -> Interleave<Self, <J as IntoIterator>::IntoIter> ⓘ
§fn interleave_shortest<J>(
self,
other: J,
) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> ⓘ
fn interleave_shortest<J>( self, other: J, ) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> ⓘ
§fn intersperse(
self,
element: Self::Item,
) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> ⓘ
fn intersperse( self, element: Self::Item, ) -> IntersperseWith<Self, IntersperseElementSimple<Self::Item>> ⓘ
§fn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> ⓘ
fn intersperse_with<F>(self, element: F) -> IntersperseWith<Self, F> ⓘ
§fn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
fn get<R>(self, index: R) -> <R as IteratorIndex<Self>>::Outputwhere
Self: Sized,
R: IteratorIndex<Self>,
§fn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
fn zip_longest<J>(
self,
other: J,
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
§fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> ⓘwhere
J: IntoIterator,
Self: Sized,
§fn batching<B, F>(self, f: F) -> Batching<Self, F> ⓘ
fn batching<B, F>(self, f: F) -> Batching<Self, F> ⓘ
§fn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn chunk_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
use_alloc only.§fn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
fn group_by<K, F>(self, key: F) -> ChunkBy<K, Self, F>
Use .chunk_by() instead
use_alloc only..chunk_by().§fn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
fn chunks(self, size: usize) -> IntoChunks<Self>where
Self: Sized,
use_alloc only.§fn tuple_windows<T>(self) -> TupleWindows<Self, T> ⓘ
fn tuple_windows<T>(self) -> TupleWindows<Self, T> ⓘ
§fn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> ⓘ
fn circular_tuple_windows<T>(self) -> CircularTupleWindows<Self, T> ⓘ
§fn tuples<T>(self) -> Tuples<Self, T> ⓘ
fn tuples<T>(self) -> Tuples<Self, T> ⓘ
§fn array_windows<const N: usize>(self) -> ArrayWindows<Self, N> ⓘ
fn array_windows<const N: usize>(self) -> ArrayWindows<Self, N> ⓘ
N. Read more§fn circular_array_windows<const N: usize>(self) -> CircularArrayWindows<Self, N> ⓘ
fn circular_array_windows<const N: usize>(self) -> CircularArrayWindows<Self, N> ⓘ
N. Read more§fn tee(self) -> (Tee<Self>, Tee<Self>)
fn tee(self) -> (Tee<Self>, Tee<Self>)
use_alloc only.§fn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
fn map_ok<F, T, U, E>(self, f: F) -> MapSpecialCase<Self, MapSpecialCaseFnOk<F>>
Result::Ok value. Result::Err values are
unchanged. Read more§fn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> ⓘ
fn filter_ok<F, T, E>(self, f: F) -> FilterOk<Self, F> ⓘ
Result::Ok
value with the provided closure. Result::Err values are
unchanged. Read more§fn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> ⓘ
fn filter_map_ok<F, T, U, E>(self, f: F) -> FilterMapOk<Self, F> ⓘ
Result::Ok value with the provided closure. Result::Err
values are unchanged. Read more§fn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> ⓘ
fn flatten_ok<T, E>(self) -> FlattenOk<Self, T, E> ⓘ
Result::Ok value into
a series of Result::Ok values. Result::Err values are unchanged. Read more§fn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
fn process_results<F, T, E, R>(self, processor: F) -> Result<R, E>
Result values instead. Read more§fn merge<J>(
self,
other: J,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> ⓘ
fn merge<J>( self, other: J, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> ⓘ
§fn merge_by<J, F>(
self,
other: J,
is_first: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> ⓘ
fn merge_by<J, F>( self, other: J, is_first: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, F> ⓘ
§fn merge_join_by<J, F, T>(
self,
other: J,
cmp_fn: F,
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> ⓘ
fn merge_join_by<J, F, T>( self, other: J, cmp_fn: F, ) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeFuncLR<F, <F as FuncLR<Self::Item, <<J as IntoIterator>::IntoIter as Iterator>::Item>>::T>> ⓘ
§fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> ⓘ
fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> ⓘ
use_alloc only.§fn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
fn kmerge_by<F>(
self,
first: F,
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
use_alloc only.§fn cartesian_product<J>(
self,
other: J,
) -> Product<Self, <J as IntoIterator>::IntoIter> ⓘ
fn cartesian_product<J>( self, other: J, ) -> Product<Self, <J as IntoIterator>::IntoIter> ⓘ
self and J. Read more§fn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
fn multi_cartesian_product(
self,
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
use_alloc only.self. Read more§fn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
fn coalesce<F>(self, f: F) -> CoalesceBy<Self, F, NoCount>
§fn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
fn dedup(self) -> CoalesceBy<Self, DedupPred2CoalescePred<DedupEq>, NoCount>
§fn dedup_by<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
fn dedup_by<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPred2CoalescePred<Cmp>, NoCount>
§fn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
fn dedup_with_count(
self,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<DedupEq>, WithCount>where
Self: Sized,
§fn dedup_by_with_count<Cmp>(
self,
cmp: Cmp,
) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
fn dedup_by_with_count<Cmp>( self, cmp: Cmp, ) -> CoalesceBy<Self, DedupPredWithCount2CoalescePred<Cmp>, WithCount>
§fn duplicates(self) -> DuplicatesBy<Self, Self::Item, ById>
fn duplicates(self) -> DuplicatesBy<Self, Self::Item, ById>
use_std only.§fn duplicates_with_hasher<S>(
self,
hash_builder: S,
) -> DuplicatesBy<Self, Self::Item, ById, S>
fn duplicates_with_hasher<S>( self, hash_builder: S, ) -> DuplicatesBy<Self, Self::Item, ById, S>
use_std only.§fn duplicates_by<V, F>(self, f: F) -> DuplicatesBy<Self, V, ByFn<F>>
fn duplicates_by<V, F>(self, f: F) -> DuplicatesBy<Self, V, ByFn<F>>
use_std only.§fn duplicates_by_with_hasher<V, F, S>(
self,
f: F,
hash_builder: S,
) -> DuplicatesBy<Self, V, ByFn<F>, S>
fn duplicates_by_with_hasher<V, F, S>( self, f: F, hash_builder: S, ) -> DuplicatesBy<Self, V, ByFn<F>, S>
use_std only.§fn unique(self) -> Unique<Self> ⓘ
fn unique(self) -> Unique<Self> ⓘ
use_std only.§fn unique_with_hasher<S>(self, hash_builder: S) -> Unique<Self, S> ⓘ
fn unique_with_hasher<S>(self, hash_builder: S) -> Unique<Self, S> ⓘ
use_std only.§fn unique_by<V, F>(self, f: F) -> UniqueBy<Self, V, F> ⓘ
fn unique_by<V, F>(self, f: F) -> UniqueBy<Self, V, F> ⓘ
use_std only.§fn unique_by_with_hasher<V, F, S>(
self,
f: F,
hash_builder: S,
) -> UniqueBy<Self, V, F, S> ⓘ
fn unique_by_with_hasher<V, F, S>( self, f: F, hash_builder: S, ) -> UniqueBy<Self, V, F, S> ⓘ
use_std only.§fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> ⓘ
fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> ⓘ
accept returns true. Read more§fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> ⓘ
fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> ⓘ
Clone-able iterator
to only pick off elements while the predicate accept returns true. Read more§fn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> ⓘ
fn take_while_inclusive<F>(self, accept: F) -> TakeWhileInclusive<Self, F> ⓘ
true, including the element for which the predicate
first returned false. Read more§fn while_some<A>(self) -> WhileSome<Self> ⓘ
fn while_some<A>(self) -> WhileSome<Self> ⓘ
Option<A> iterator elements
and produces A. Stops on the first None encountered. Read more§fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> ⓘ
fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> ⓘ
Use .array_combinations() instead
§fn array_combinations<const K: usize>(
self,
) -> CombinationsGeneric<Self, [usize; K]>
fn array_combinations<const K: usize>( self, ) -> CombinationsGeneric<Self, [usize; K]>
use_alloc only.§fn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
fn combinations(self, k: usize) -> CombinationsGeneric<Self, Vec<usize>>
use_alloc only.k-length combinations of
the elements from an iterator. Read more§fn combinations_with_replacement(
self,
k: usize,
) -> CombinationsWithReplacementGeneric<Self, Box<[usize]>>
fn combinations_with_replacement( self, k: usize, ) -> CombinationsWithReplacementGeneric<Self, Box<[usize]>>
use_alloc only.k-length combinations of
the elements from an iterator, with replacement. Read more§fn array_combinations_with_replacement<const K: usize>(
self,
) -> CombinationsWithReplacementGeneric<Self, [usize; K]>
fn array_combinations_with_replacement<const K: usize>( self, ) -> CombinationsWithReplacementGeneric<Self, [usize; K]>
use_alloc only.k-length combinations of
the elements from an iterator, with replacement. Read more§fn permutations(self, k: usize) -> Permutations<Self> ⓘ
fn permutations(self, k: usize) -> Permutations<Self> ⓘ
use_alloc only.§fn powerset(self) -> Powerset<Self> ⓘ
fn powerset(self) -> Powerset<Self> ⓘ
use_alloc only.§fn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> ⓘ
fn pad_using<F>(self, min: usize, f: F) -> PadUsing<Self, F> ⓘ
min by filling missing elements using a closure f. Read more§fn with_position(self) -> WithPosition<Self> ⓘwhere
Self: Sized,
fn with_position(self) -> WithPosition<Self> ⓘwhere
Self: Sized,
Position
to ease special-case handling of the first or last elements. Read more§fn positions<P>(self, predicate: P) -> Positions<Self, P> ⓘ
fn positions<P>(self, predicate: P) -> Positions<Self, P> ⓘ
§fn update<F>(self, updater: F) -> Update<Self, F> ⓘ
fn update<F>(self, updater: F) -> Update<Self, F> ⓘ
§fn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
fn next_array<const N: usize>(&mut self) -> Option<[Self::Item; N]>where
Self: Sized,
§fn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
fn collect_array<const N: usize>(self) -> Option<[Self::Item; N]>where
Self: Sized,
§fn next_tuple<T>(&mut self) -> Option<T>
fn next_tuple<T>(&mut self) -> Option<T>
§fn collect_tuple<T>(self) -> Option<T>
fn collect_tuple<T>(self) -> Option<T>
§fn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
fn find_position<P>(&mut self, pred: P) -> Option<(usize, Self::Item)>
§fn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_last<P>(self, predicate: P) -> Option<Self::Item>
§fn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
fn find_or_first<P>(self, predicate: P) -> Option<Self::Item>
§fn contains<Q>(&mut self, query: &Q) -> bool
fn contains<Q>(&mut self, query: &Q) -> bool
true if the given item is present in this iterator. Read more§fn all_equal_value(
&mut self,
) -> Result<Self::Item, AllEqualValueError<Self::Item>>
fn all_equal_value( &mut self, ) -> Result<Self::Item, AllEqualValueError<Self::Item>>
§fn all_unique(&mut self) -> bool
fn all_unique(&mut self) -> bool
use_std only.§fn all_unique_with_hasher<S>(&mut self, hash_builder: S) -> bool
fn all_unique_with_hasher<S>(&mut self, hash_builder: S) -> bool
use_std only.§fn dropping(self, n: usize) -> Selfwhere
Self: Sized,
fn dropping(self, n: usize) -> Selfwhere
Self: Sized,
n elements from the iterator eagerly,
and return the same iterator again. Read more§fn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
fn dropping_back(self, n: usize) -> Selfwhere
Self: Sized + DoubleEndedIterator,
n elements from the iterator eagerly,
and return the same iterator again. Read more§fn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
fn collect_vec(self) -> Vec<Self::Item>where
Self: Sized,
use_alloc only..collect_vec() is simply a type specialization of Iterator::collect,
for convenience.§fn try_collect<T, U, E>(self) -> Result<U, E>
fn try_collect<T, U, E>(self) -> Result<U, E>
§fn set_from<'a, A, J>(&mut self, from: J) -> usize
fn set_from<'a, A, J>(&mut self, from: J) -> usize
self from the from iterator,
stopping at the shortest of the two iterators. Read more§fn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
fn format(self, sep: &str) -> Format<'_, Self>where
Self: Sized,
sep. Read more§fn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
fn format_with<F>(self, sep: &str, format: F) -> FormatWith<'_, Self, F>
sep. Read more§fn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
fn fold_ok<A, E, B, F>(&mut self, start: B, f: F) -> Result<B, E>
Result values from an iterator. Read more§fn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
fn fold_options<A, B, F>(&mut self, start: B, f: F) -> Option<B>
Option values from an iterator. Read more§fn fold1<F>(self, f: F) -> Option<Self::Item>
fn fold1<F>(self, f: F) -> Option<Self::Item>
Use Iterator::reduce instead
§fn tree_reduce<F>(self, f: F) -> Option<Self::Item>
fn tree_reduce<F>(self, f: F) -> Option<Self::Item>
§fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
fn tree_fold1<F>(self, f: F) -> Option<Self::Item>
Use .tree_reduce() instead
.tree_reduce().§fn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
fn fold_while<B, F>(&mut self, init: B, f: F) -> FoldWhile<B>
§fn product1<P>(self) -> Option<P>
fn product1<P>(self) -> Option<P>
§fn sorted_unstable(self) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable(self) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_unstable_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted(self) -> IntoIter<Self::Item> ⓘ
fn sorted(self) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by<F>(self, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
fn sorted_by_cached_key<K, F>(self, f: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_smallest(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_smallest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> ⓘ
fn k_smallest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_largest(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_by_key<F, K>(self, k: usize, key: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed(self, k: usize) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed_by<F>(self, k: usize, cmp: F) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn k_largest_relaxed_by_key<F, K>(
self,
k: usize,
key: F,
) -> IntoIter<Self::Item> ⓘ
fn k_largest_relaxed_by_key<F, K>( self, k: usize, key: F, ) -> IntoIter<Self::Item> ⓘ
use_alloc only.§fn tail(self, n: usize) -> IntoIter<Self::Item> ⓘwhere
Self: Sized,
fn tail(self, n: usize) -> IntoIter<Self::Item> ⓘwhere
Self: Sized,
use_alloc only.n elements. Read more§fn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
fn partition_map<A, B, F, L, R>(self, predicate: F) -> (A, B)
Iterator::partition, each partition may
have a distinct type. Read more§fn partition_result<A, B, T, E>(self) -> (A, B)
fn partition_result<A, B, T, E>(self) -> (A, B)
Results into one list of all the Ok elements
and another list of all the Err elements. Read more§fn into_group_map<K, V>(self) -> HashMap<K, Vec<V>>
fn into_group_map<K, V>(self) -> HashMap<K, Vec<V>>
use_std only.HashMap of keys mapped to Vecs of values. Keys and values
are taken from (Key, Value) tuple pairs yielded by the input iterator. Read more§fn into_group_map_with_hasher<K, V, S>(
self,
hash_builder: S,
) -> HashMap<K, Vec<V>, S>
fn into_group_map_with_hasher<K, V, S>( self, hash_builder: S, ) -> HashMap<K, Vec<V>, S>
use_std only.HashMap of keys mapped to Vecs of values, using the hash builder for hashing.
See .into_group_map() for more information. Read more§fn into_group_map_by<K, V, F>(self, f: F) -> HashMap<K, Vec<V>>
fn into_group_map_by<K, V, F>(self, f: F) -> HashMap<K, Vec<V>>
use_std only.HashMap of keys mapped to Vecs of values. The key is specified
in the closure. The values are taken from the input iterator. Read more§fn into_group_map_by_with_hasher<K, V, F, S>(
self,
f: F,
hash_builder: S,
) -> HashMap<K, Vec<V>, S>
fn into_group_map_by_with_hasher<K, V, F, S>( self, f: F, hash_builder: S, ) -> HashMap<K, Vec<V>, S>
use_std only.HashMap of keys mapped to Vecs of values, using the hash builder for hashing.
See .into_group_map_by() for more information. Read more§fn into_grouping_map<K, V>(self) -> GroupingMap<Self>
fn into_grouping_map<K, V>(self) -> GroupingMap<Self>
use_std only.GroupingMap to be used later with one of the efficient
group-and-fold operations it allows to perform. Read more§fn into_grouping_map_with_hasher<K, V, S>(
self,
hash_builder: S,
) -> GroupingMap<Self, S>
fn into_grouping_map_with_hasher<K, V, S>( self, hash_builder: S, ) -> GroupingMap<Self, S>
use_std only.GroupingMap to be used later with one of the efficient
group-and-fold operations it allows to perform, using the specified hash builder for
hashing the elements.
See .into_grouping_map() for more information.§fn into_grouping_map_by<K, V, F>(
self,
key_mapper: F,
) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>>
fn into_grouping_map_by<K, V, F>( self, key_mapper: F, ) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>>
use_std only.GroupingMap to be used later with one of the efficient
group-and-fold operations it allows to perform. Read more§fn into_grouping_map_by_with_hasher<K, V, F, S>(
self,
key_mapper: F,
hash_builder: S,
) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>, S>
fn into_grouping_map_by_with_hasher<K, V, F, S>( self, key_mapper: F, hash_builder: S, ) -> GroupingMap<MapSpecialCase<Self, GroupingMapFn<F>>, S>
use_std only.GroupingMap to be used later with one of the efficient
group-and-fold operations it allows to perform, using the specified hash builder for
hashing the keys.
See .into_grouping_map_by() for more information.§fn min_set(self) -> Vec<Self::Item>
fn min_set(self) -> Vec<Self::Item>
use_alloc only.§fn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn min_set_by<F>(self, compare: F) -> Vec<Self::Item>
use_alloc only.§fn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn min_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
use_alloc only.§fn max_set(self) -> Vec<Self::Item>
fn max_set(self) -> Vec<Self::Item>
use_alloc only.§fn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
fn max_set_by<F>(self, compare: F) -> Vec<Self::Item>
use_alloc only.§fn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
fn max_set_by_key<K, F>(self, key: F) -> Vec<Self::Item>
use_alloc only.§fn minmax(self) -> MinMaxResult<Self::Item>
fn minmax(self) -> MinMaxResult<Self::Item>
§fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item>
§fn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
fn minmax_by<F>(self, compare: F) -> MinMaxResult<Self::Item>
§fn position_max(self) -> Option<usize>
fn position_max(self) -> Option<usize>
§fn position_max_by_key<K, F>(self, key: F) -> Option<usize>
fn position_max_by_key<K, F>(self, key: F) -> Option<usize>
§fn position_max_by<F>(self, compare: F) -> Option<usize>
fn position_max_by<F>(self, compare: F) -> Option<usize>
§fn position_min(self) -> Option<usize>
fn position_min(self) -> Option<usize>
§fn position_min_by_key<K, F>(self, key: F) -> Option<usize>
fn position_min_by_key<K, F>(self, key: F) -> Option<usize>
§fn position_min_by<F>(self, compare: F) -> Option<usize>
fn position_min_by<F>(self, compare: F) -> Option<usize>
§fn position_minmax(self) -> MinMaxResult<usize>
fn position_minmax(self) -> MinMaxResult<usize>
§fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize>
§fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize>
§fn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
fn exactly_one(self) -> Result<Self::Item, ExactlyOneError<Self>>where
Self: Sized,
§fn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
fn at_most_one(self) -> Result<Option<Self::Item>, ExactlyOneError<Self>>where
Self: Sized,
Ok(None) will be returned. If the iterator yields
exactly one element, that element will be returned, otherwise an error will be returned
containing an iterator that has the same output as the input iterator. Read more§fn multipeek(self) -> MultiPeek<Self> ⓘwhere
Self: Sized,
fn multipeek(self) -> MultiPeek<Self> ⓘwhere
Self: Sized,
use_alloc only..next()
values without advancing the base iterator. Read more§fn counts(self) -> HashMap<Self::Item, usize>
fn counts(self) -> HashMap<Self::Item, usize>
use_std only.HashMap which
contains each item that appears in the iterator and the number
of times it appears. Read more§fn counts_with_hasher<S>(self, hash_builder: S) -> HashMap<Self::Item, usize, S>
fn counts_with_hasher<S>(self, hash_builder: S) -> HashMap<Self::Item, usize, S>
use_std only.HashMap the same way
.counts() does, but use the specified hash builder for hashing.§fn counts_by<K, F>(self, f: F) -> HashMap<K, usize>
fn counts_by<K, F>(self, f: F) -> HashMap<K, usize>
use_std only.HashMap which
contains each item that appears in the iterator and the number
of times it appears,
determining identity using a keying function. Read more§fn counts_by_with_hasher<K, F, S>(
self,
f: F,
hash_builder: S,
) -> HashMap<K, usize, S>
fn counts_by_with_hasher<K, F, S>( self, f: F, hash_builder: S, ) -> HashMap<K, usize, S>
use_std only.HashMap the same way
.counts_by() does, but use the specified hash builder for hashing.§fn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
fn multiunzip<FromI>(self) -> FromIwhere
Self: Sized + MultiUnzip<FromI>,
§fn try_len(&self) -> Result<usize, (usize, Option<usize>)>
fn try_len(&self) -> Result<usize, (usize, Option<usize>)>
self.size_hint(). Read more§fn strip_prefix<Prefix>(
self,
prefix: Prefix,
) -> Result<Self, StripPrefixError<Self, <Prefix as IntoIterator>::IntoIter, Self::Item>>
fn strip_prefix<Prefix>( self, prefix: Prefix, ) -> Result<Self, StripPrefixError<Self, <Prefix as IntoIterator>::IntoIter, Self::Item>>
§fn strip_prefix_by<Prefix, F>(
self,
prefix: Prefix,
eq: F,
) -> Result<Self, StripPrefixError<Self, <Prefix as IntoIterator>::IntoIter, Self::Item>>where
Self: Sized,
Prefix: IntoIterator,
F: FnMut(&Self::Item, &<Prefix as IntoIterator>::Item) -> bool,
fn strip_prefix_by<Prefix, F>(
self,
prefix: Prefix,
eq: F,
) -> Result<Self, StripPrefixError<Self, <Prefix as IntoIterator>::IntoIter, Self::Item>>where
Self: Sized,
Prefix: IntoIterator,
F: FnMut(&Self::Item, &<Prefix as IntoIterator>::Item) -> bool,
eq to compare items. Read more§impl<IT> MultiUnzip<()> for IT
impl<IT> MultiUnzip<()> for IT
§fn multiunzip(self)
fn multiunzip(self)
§impl<IT> MultiUnzip<()> for IT
impl<IT> MultiUnzip<()> for IT
§fn multiunzip(self)
fn multiunzip(self)
§impl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
impl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
§fn multiunzip(self) -> (FromA, FromB)
fn multiunzip(self) -> (FromA, FromB)
§impl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
impl<IT, A, FromA, B, FromB> MultiUnzip<(FromA, FromB)> for IT
§fn multiunzip(self) -> (FromA, FromB)
fn multiunzip(self) -> (FromA, FromB)
§impl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
impl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC)
fn multiunzip(self) -> (FromA, FromB, FromC)
§impl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
impl<IT, A, FromA, B, FromB, C, FromC> MultiUnzip<(FromA, FromB, FromC)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC)
fn multiunzip(self) -> (FromA, FromB, FromC)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD> MultiUnzip<(FromA, FromB, FromC, FromD)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE> MultiUnzip<(FromA, FromB, FromC, FromD, FromE)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)> for IT
§fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
fn multiunzip(self) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
§impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
impl<IT, A, FromA, B, FromB, C, FromC, D, FromD, E, FromE, F, FromF, G, FromG, H, FromH, I, FromI, J, FromJ, K, FromK, L, FromL> MultiUnzip<(FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)> for ITwhere
IT: Iterator<Item = (A, B, C, D, E, F, G, H, I, J, K, L)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
FromC: Default + Extend<C>,
FromD: Default + Extend<D>,
FromE: Default + Extend<E>,
FromF: Default + Extend<F>,
FromG: Default + Extend<G>,
FromH: Default + Extend<H>,
FromI: Default + Extend<I>,
FromJ: Default + Extend<J>,
FromK: Default + Extend<K>,
FromL: Default + Extend<L>,
§fn multiunzip(
self,
) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
fn multiunzip( self, ) -> (FromA, FromB, FromC, FromD, FromE, FromF, FromG, FromH, FromI, FromJ, FromK, FromL)
§impl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
impl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
§fn multiunzip(self) -> (FromA,)
fn multiunzip(self) -> (FromA,)
§impl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
impl<IT, A, FromA> MultiUnzip<(FromA,)> for IT
§fn multiunzip(self) -> (FromA,)
fn multiunzip(self) -> (FromA,)
§impl<T> PeekIoProvider for Twhere
T: Io,
impl<T> PeekIoProvider for Twhere
T: Io,
§type Mapped<PeekedIo: Io> = PeekedIo
type Mapped<PeekedIo: Io> = PeekedIo
Self type produced as a result of
mapping the PeekIo type.§fn peek_io_mut(&mut self) -> &mut <T as PeekIoProvider>::PeekIo
fn peek_io_mut(&mut self) -> &mut <T as PeekIoProvider>::PeekIo
§fn map_peek_io<PeekedIo, F>(
self,
map: F,
) -> <T as PeekIoProvider>::Mapped<PeekedIo>
fn map_peek_io<PeekedIo, F>( self, map: F, ) -> <T as PeekIoProvider>::Mapped<PeekedIo>
self
by mapping the Peeked Io type and produce a new type,
usually with the peeked data in-memory as prefix.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more§impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>
§impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
type Error = <U as RamaTryFrom<T, CrateMarker>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T, S, M1, M2> ServerStreamingService<M1> for T
impl<T, S, M1, M2> ServerStreamingService<M1> for T
§type ResponseStream = S
type ResponseStream = S
§fn serve(
&self,
request: Request<M1>,
) -> impl Future<Output = Result<Response<<T as ServerStreamingService<M1>>::ResponseStream>, Status>>
fn serve( &self, request: Request<M1>, ) -> impl Future<Output = Result<Response<<T as ServerStreamingService<M1>>::ResponseStream>, Status>>
§impl<S, Socket> SocketService for S
impl<S, Socket> SocketService for S
§type Socket = Socket
type Socket = Socket
SocketService§type Error = <S as Service<SocketAddress>>::Error
type Error = <S as Service<SocketAddress>>::Error
§fn bind_socket_with_address(
&self,
addr: impl Into<SocketAddress>,
) -> impl Future<Output = Result<<S as SocketService>::Socket, <S as SocketService>::Error>> + Send
fn bind_socket_with_address( &self, addr: impl Into<SocketAddress>, ) -> impl Future<Output = Result<<S as SocketService>::Socket, <S as SocketService>::Error>> + Send
§impl<T, S, M1, M2> StreamingService<M1> for T
impl<T, S, M1, M2> StreamingService<M1> for T
§type ResponseStream = S
type ResponseStream = S
§fn serve(
&self,
request: Request<Streaming<M1>>,
) -> impl Future<Output = Result<Response<<T as StreamingService<M1>>::ResponseStream>, Status>>
fn serve( &self, request: Request<Streaming<M1>>, ) -> impl Future<Output = Result<Response<<T as StreamingService<M1>>::ResponseStream>, Status>>
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.
§impl<Fut> TryFutureExt for Fut
impl<Fut> TryFutureExt for Fut
§fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok>
fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok>
sink only.§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> ⓘ
fn try_flatten(self) -> TryFlatten<Self, Self::Ok> ⓘ
§fn try_flatten_stream(self) -> TryFlattenStream<Self>
fn try_flatten_stream(self) -> TryFlattenStream<Self>
§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,
§fn try_poll_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<Self::Ok, Self::Error>>where
Self: Unpin,
fn try_poll_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<Self::Ok, Self::Error>>where
Self: Unpin,
TryFuture::try_poll on Unpin
future types.§impl<T, M1, M2> UnaryService<M1> for T
impl<T, M1, M2> UnaryService<M1> for T
§impl<I> UnicodeNormalization<I> for I
impl<I> UnicodeNormalization<I> for I
§fn nfd(self) -> Decompositions<I> ⓘ
fn nfd(self) -> Decompositions<I> ⓘ
§fn nfkd(self) -> Decompositions<I> ⓘ
fn nfkd(self) -> Decompositions<I> ⓘ
§fn nfc(self) -> Recompositions<I> ⓘ
fn nfc(self) -> Recompositions<I> ⓘ
§fn nfkc(self) -> Recompositions<I> ⓘ
fn nfkc(self) -> Recompositions<I> ⓘ
§fn cjk_compat_variants(self) -> Replacements<I> ⓘ
fn cjk_compat_variants(self) -> Replacements<I> ⓘ
§fn stream_safe(self) -> StreamSafe<I> ⓘ
fn stream_safe(self) -> StreamSafe<I> ⓘ
§impl<V, F> ValueFormatter<&V> for F
impl<V, F> ValueFormatter<&V> for F
§fn format_value(writer: impl ValueWriter, value: &&V)
fn format_value(writer: impl ValueWriter, value: &&V)
value to writer§impl<V, F> ValueFormatter<Arc<V>> for F
impl<V, F> ValueFormatter<Arc<V>> for F
§fn format_value(writer: impl ValueWriter, value: &Arc<V>)
fn format_value(writer: impl ValueWriter, value: &Arc<V>)
value to writer§impl<V, F> ValueFormatter<Box<V>> for F
impl<V, F> ValueFormatter<Box<V>> for F
§fn format_value(writer: impl ValueWriter, value: &Box<V>)
fn format_value(writer: impl ValueWriter, value: &Box<V>)
value to writer§impl<V, F> ValueFormatter<Cow<'_, V>> for F
impl<V, F> ValueFormatter<Cow<'_, V>> for F
§fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
value to writer§impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
§fn format_value(writer: impl ValueWriter, value: &Option<V>)
fn format_value(writer: impl ValueWriter, value: &Option<V>)
value to writer