pub struct TokioNativeTlsRuntime { /* private fields */ }
Available on (crate features
native-tls
or rustls
) and crate feature tokio
and crate feature native-tls
only.Expand description
Implementations§
source§impl TokioNativeTlsRuntime
impl TokioNativeTlsRuntime
sourcepub fn create() -> IoResult<Self>
pub fn create() -> IoResult<Self>
Create a new TokioNativeTlsRuntime
.
The return value will own the underlying Tokio runtime object, which will be dropped when the last copy of this handle is freed.
If you want to use a currently running runtime instead, call
TokioNativeTlsRuntime::current()
.
sourcepub fn current() -> IoResult<Self>
pub fn current() -> IoResult<Self>
Return a TokioNativeTlsRuntime
wrapping the currently running
Tokio runtime.
§Usage note
We should never call this from inside other Arti crates, or from library
crates that want to support multiple runtimes! This function is for
Arti users who want to wrap some existing Tokio runtime as a
Runtime
. It is not for library crates that want to work with
multiple runtimes.
Once you have a runtime returned by this function, you should just
create more handles to it via Clone
.
Trait Implementations§
source§impl BlockOn for TokioNativeTlsRuntime
impl BlockOn for TokioNativeTlsRuntime
source§impl Clone for TokioNativeTlsRuntime
impl Clone for TokioNativeTlsRuntime
source§fn clone(&self) -> TokioNativeTlsRuntime
fn clone(&self) -> TokioNativeTlsRuntime
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl CoarseTimeProvider for TokioNativeTlsRuntime
impl CoarseTimeProvider for TokioNativeTlsRuntime
source§fn now_coarse(&self) -> CoarseInstant
fn now_coarse(&self) -> CoarseInstant
Return the
CoarseTimeProvider
’s view of the current instant. Read moresource§impl Debug for TokioNativeTlsRuntime
impl Debug for TokioNativeTlsRuntime
source§impl From<Handle> for TokioNativeTlsRuntime
impl From<Handle> for TokioNativeTlsRuntime
source§impl NetStreamProvider<SocketAddr> for TokioNativeTlsRuntime
impl NetStreamProvider<SocketAddr> for TokioNativeTlsRuntime
source§type Stream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider<SocketAddr>>::Stream
type Stream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider<SocketAddr>>::Stream
The type for the connections returned by
Self::connect()
.source§type Listener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider<SocketAddr>>::Listener
type Listener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider<SocketAddr>>::Listener
The type for the listeners returned by
Self::listen()
.source§fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Launch a connection connection to a given socket address. Read more
source§impl NetStreamProvider for TokioNativeTlsRuntime
impl NetStreamProvider for TokioNativeTlsRuntime
source§type Stream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider>::Stream
type Stream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider>::Stream
The type for the connections returned by
Self::connect()
.source§type Listener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider>::Listener
type Listener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as NetStreamProvider>::Listener
The type for the listeners returned by
Self::listen()
.source§fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Launch a connection connection to a given socket address. Read more
source§impl SleepProvider for TokioNativeTlsRuntime
impl SleepProvider for TokioNativeTlsRuntime
source§type SleepFuture = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as SleepProvider>::SleepFuture
type SleepFuture = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as SleepProvider>::SleepFuture
A future returned by
SleepProvider::sleep()
source§fn sleep(&self, duration: Duration) -> Self::SleepFuture
fn sleep(&self, duration: Duration) -> Self::SleepFuture
Return a future that will be ready after
duration
has
elapsed.source§fn wallclock(&self) -> SystemTime
fn wallclock(&self) -> SystemTime
Return the SleepProvider’s view of the current wall-clock time. Read more
source§fn block_advance<T: Into<String>>(&self, _reason: T)
fn block_advance<T: Into<String>>(&self, _reason: T)
Signify that a test running under mock time shouldn’t advance time yet, with a given
unique reason string. This is useful for making sure (mock) time doesn’t advance while
things that might require some (real-world) time to complete do so, such as spawning a task
on another thread. Read more
source§fn release_advance<T: Into<String>>(&self, _reason: T)
fn release_advance<T: Into<String>>(&self, _reason: T)
Signify that the reason to withhold time advancing provided in a call to
block_advance
no
longer exists, and it’s fine to move time forward if nothing else is blocking advances. Read moresource§fn allow_one_advance(&self, _dur: Duration)
fn allow_one_advance(&self, _dur: Duration)
Allow a test running under mock time to advance time by the provided duration, even if the
above
block_advance
API has been used. Read moresource§impl Spawn for TokioNativeTlsRuntime
impl Spawn for TokioNativeTlsRuntime
source§impl<S> TlsProvider<S> for TokioNativeTlsRuntime
impl<S> TlsProvider<S> for TokioNativeTlsRuntime
source§type Connector = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::Connector
type Connector = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::Connector
The Connector object that this provider can return.
source§type TlsStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::TlsStream
type TlsStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::TlsStream
The type of the stream returned by that connector.
source§fn tls_connector(&self) -> Self::Connector
fn tls_connector(&self) -> Self::Connector
Return a TLS connector for use with this runtime.
source§fn supports_keying_material_export(&self) -> bool
fn supports_keying_material_export(&self) -> bool
Return true iff the keying material exporters (RFC 5705) is supported.
source§impl UdpProvider for TokioNativeTlsRuntime
impl UdpProvider for TokioNativeTlsRuntime
source§type UdpSocket = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as UdpProvider>::UdpSocket
type UdpSocket = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as UdpProvider>::UdpSocket
The type of Udp Socket returned by
Self::bind()
Auto Trait Implementations§
impl Freeze for TokioNativeTlsRuntime
impl !RefUnwindSafe for TokioNativeTlsRuntime
impl Send for TokioNativeTlsRuntime
impl Sync for TokioNativeTlsRuntime
impl Unpin for TokioNativeTlsRuntime
impl !UnwindSafe for TokioNativeTlsRuntime
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§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> NetStreamProvider<SocketAddr> for T
impl<T> NetStreamProvider<SocketAddr> for T
source§type Stream = Stream
type Stream = Stream
The type for the connections returned by
Self::connect()
.source§type Listener = Listener
type Listener = Listener
The type for the listeners returned by
Self::listen()
.source§fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Stream, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr,
) -> Pin<Box<dyn Future<Output = Result<Stream, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
Launch a connection connection to a given socket address. Read more
source§impl<R> RuntimeSubstExt for Rwhere
R: Runtime,
impl<R> RuntimeSubstExt for Rwhere
R: Runtime,
source§fn with_tcp_provider<T>(
&self,
new_tcp: T,
) -> CompoundRuntime<R, R, R, T, R, R, R>
fn with_tcp_provider<T>( &self, new_tcp: T, ) -> CompoundRuntime<R, R, R, T, R, R, R>
Return a new runtime wrapping this runtime, but replacing its TCP NetStreamProvider.
source§fn with_sleep_provider<T>(
&self,
new_sleep: T,
) -> CompoundRuntime<R, T, R, R, R, R, R>
fn with_sleep_provider<T>( &self, new_sleep: T, ) -> CompoundRuntime<R, T, R, R, R, R, R>
Return a new runtime wrapping this runtime, but replacing its SleepProvider.
source§fn with_coarse_time_provider<T>(
&self,
new_coarse_time: T,
) -> CompoundRuntime<R, R, T, R, R, R, R>
fn with_coarse_time_provider<T>( &self, new_coarse_time: T, ) -> CompoundRuntime<R, R, T, R, R, R, R>
Return a new runtime wrapping this runtime, but replacing its CoarseTimeProvider.
source§impl<T> SleepProviderExt for Twhere
T: SleepProvider,
impl<T> SleepProviderExt for Twhere
T: SleepProvider,
source§fn timeout<F: Future>(
&self,
duration: Duration,
future: F,
) -> Timeout<F, Self::SleepFuture> ⓘ
fn timeout<F: Future>( &self, duration: Duration, future: F, ) -> Timeout<F, Self::SleepFuture> ⓘ
source§fn sleep_until_wallclock(
&self,
when: SystemTime,
) -> SleepUntilWallclock<'_, Self>
fn sleep_until_wallclock( &self, when: SystemTime, ) -> SleepUntilWallclock<'_, Self>
Pause until the wall-clock is at
when
or later, trying to
recover from clock jumps. Read more§impl<Sp> SpawnExt for Spwhere
Sp: Spawn + ?Sized,
impl<Sp> SpawnExt for Spwhere
Sp: Spawn + ?Sized,
§fn spawn<Fut>(&self, future: Fut) -> Result<(), SpawnError>
fn spawn<Fut>(&self, future: Fut) -> Result<(), SpawnError>
Available on crate feature
alloc
only.Spawns a task that polls the given future with output
()
to
completion. Read more