Struct tor_rtcompat::tokio::TokioNativeTlsRuntime
source · 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 SleepProvider for TokioNativeTlsRuntime
impl SleepProvider for TokioNativeTlsRuntime
§type SleepFuture = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as SleepProvider>::SleepFuture
type SleepFuture = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, 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 TcpProvider for TokioNativeTlsRuntime
impl TcpProvider for TokioNativeTlsRuntime
§type TcpStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TcpProvider>::TcpStream
type TcpStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TcpProvider>::TcpStream
The type for the TCP connections returned by
Self::connect()
.§type TcpListener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TcpProvider>::TcpListener
type TcpListener = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TcpProvider>::TcpListener
The type for the TCP listeners returned by
Self::listen()
.source§fn connect<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr
) -> Pin<Box<dyn Future<Output = Result<Self::TcpStream>> + 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::TcpStream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Launch a TCP connection to a given socket address. Read more
source§fn listen<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr
) -> Pin<Box<dyn Future<Output = Result<Self::TcpListener>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn listen<'life0, 'life1, 'async_trait>(
&'life0 self,
addr: &'life1 SocketAddr
) -> Pin<Box<dyn Future<Output = Result<Self::TcpListener>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Open a TCP listener on a given socket address.
source§impl<S> TlsProvider<S> for TokioNativeTlsRuntime
impl<S> TlsProvider<S> for TokioNativeTlsRuntime
§type Connector = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::Connector
type Connector = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::Connector
The Connector object that this provider can return.
§type TlsStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as TlsProvider<S>>::TlsStream
type TlsStream = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, 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§impl UdpProvider for TokioNativeTlsRuntime
impl UdpProvider for TokioNativeTlsRuntime
§type UdpSocket = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, TokioRuntimeHandle, NativeTlsProvider, TokioRuntimeHandle> as UdpProvider>::UdpSocket
type UdpSocket = <CompoundRuntime<TokioRuntimeHandle, TokioRuntimeHandle, RealCoarseTimeProvider, 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> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> 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 moresource§impl<Sp> SpawnExt for Sp
impl<Sp> SpawnExt for Sp
source§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 moresource§fn spawn_with_handle<Fut>(
&self,
future: Fut
) -> Result<RemoteHandle<<Fut as Future>::Output>, SpawnError>
fn spawn_with_handle<Fut>( &self, future: Fut ) -> Result<RemoteHandle<<Fut as Future>::Output>, SpawnError>
Available on crate features
channel
and std
only.Spawns a task that polls the given future to completion and returns a
future that resolves to the spawned future’s output. Read more