Struct NetworkConfigBuilder
pub struct NetworkConfigBuilder { /* private fields */ }
Expand description
Builder for NetworkConfig
.
Implementations§
§impl NetworkConfigBuilder
impl NetworkConfigBuilder
pub fn with_rng_secret_key() -> NetworkConfigBuilder
pub fn with_rng_secret_key() -> NetworkConfigBuilder
Create a new builder instance with a random secret key.
pub fn new(secret_key: SecretKey) -> NetworkConfigBuilder
pub fn new(secret_key: SecretKey) -> NetworkConfigBuilder
Create a new builder instance with the given secret key.
pub fn apply<F>(self, f: F) -> NetworkConfigBuilder
pub fn apply<F>(self, f: F) -> NetworkConfigBuilder
Apply a function to the builder.
pub fn get_peer_id(&self) -> FixedBytes<64>
pub fn get_peer_id(&self) -> FixedBytes<64>
Returns the configured [PeerId
]
pub const fn secret_key(&self) -> &SecretKey
pub const fn secret_key(&self) -> &SecretKey
Returns the configured SecretKey
, from which the node’s identity is derived.
pub const fn network_mode(
self,
network_mode: NetworkMode,
) -> NetworkConfigBuilder
pub const fn network_mode( self, network_mode: NetworkMode, ) -> NetworkConfigBuilder
Sets the NetworkMode
.
pub const fn set_head(self, head: Head) -> NetworkConfigBuilder
pub const fn set_head(self, head: Head) -> NetworkConfigBuilder
Sets the highest synced block.
This is used to construct the appropriate ForkFilter
and [Status
] message.
If not set, this defaults to the genesis specified by the current chain specification.
pub fn hello_message(
self,
hello_message: HelloMessageWithProtocols,
) -> NetworkConfigBuilder
pub fn hello_message( self, hello_message: HelloMessageWithProtocols, ) -> NetworkConfigBuilder
Sets the HelloMessage
to send when connecting to peers.
let peer_id = builder.get_peer_id();
builder.hello_message(HelloMessage::builder(peer_id).build());
pub fn peer_config(self, config: PeersConfig) -> NetworkConfigBuilder
pub fn peer_config(self, config: PeersConfig) -> NetworkConfigBuilder
Set a custom peer config for how peers are handled
pub fn with_task_executor(
self,
executor: Box<dyn TaskSpawner>,
) -> NetworkConfigBuilder
pub fn with_task_executor( self, executor: Box<dyn TaskSpawner>, ) -> NetworkConfigBuilder
Sets the executor to use for spawning tasks.
If None
, then [tokio::spawn
] is used for spawning tasks.
pub const fn sessions_config(
self,
config: SessionsConfig,
) -> NetworkConfigBuilder
pub const fn sessions_config( self, config: SessionsConfig, ) -> NetworkConfigBuilder
Sets a custom config for how sessions are handled.
pub const fn transactions_manager_config(
self,
config: TransactionsManagerConfig,
) -> NetworkConfigBuilder
pub const fn transactions_manager_config( self, config: TransactionsManagerConfig, ) -> NetworkConfigBuilder
Configures the transactions manager with the given config.
pub const fn set_addrs(self, addr: SocketAddr) -> NetworkConfigBuilder
pub const fn set_addrs(self, addr: SocketAddr) -> NetworkConfigBuilder
Sets the discovery and listener address
This is a convenience function for both NetworkConfigBuilder::listener_addr
and
NetworkConfigBuilder::discovery_addr
.
By default, both are on the same port:
DEFAULT_DISCOVERY_PORT
pub const fn listener_addr(
self,
listener_addr: SocketAddr,
) -> NetworkConfigBuilder
pub const fn listener_addr( self, listener_addr: SocketAddr, ) -> NetworkConfigBuilder
Sets the socket address the network will listen on.
By default, this is [DEFAULT_DISCOVERY_ADDRESS
]
pub fn listener_port(self, port: u16) -> NetworkConfigBuilder
pub fn listener_port(self, port: u16) -> NetworkConfigBuilder
Sets the port of the address the network will listen on.
By default, this is DEFAULT_DISCOVERY_PORT
pub const fn discovery_addr(
self,
discovery_addr: SocketAddr,
) -> NetworkConfigBuilder
pub const fn discovery_addr( self, discovery_addr: SocketAddr, ) -> NetworkConfigBuilder
Sets the socket address the discovery network will listen on
pub fn discovery_port(self, port: u16) -> NetworkConfigBuilder
pub fn discovery_port(self, port: u16) -> NetworkConfigBuilder
Sets the port of the address the discovery network will listen on.
By default, this is DEFAULT_DISCOVERY_PORT
pub fn with_unused_discovery_port(self) -> NetworkConfigBuilder
pub fn with_unused_discovery_port(self) -> NetworkConfigBuilder
Sets the discovery port to an unused port. This is useful for testing.
pub fn with_unused_listener_port(self) -> NetworkConfigBuilder
pub fn with_unused_listener_port(self) -> NetworkConfigBuilder
Sets the listener port to an unused port. This is useful for testing.
pub fn external_ip_resolver(self, resolver: NatResolver) -> NetworkConfigBuilder
pub fn external_ip_resolver(self, resolver: NatResolver) -> NetworkConfigBuilder
Sets the external ip resolver to use for discovery v4.
If no [Discv4ConfigBuilder
] is set via Self::discovery
, this will create a new one.
This is a convenience function for setting the external ip resolver on the default
[Discv4Config
] config.
pub fn discovery(self, builder: Discv4ConfigBuilder) -> NetworkConfigBuilder
pub fn discovery(self, builder: Discv4ConfigBuilder) -> NetworkConfigBuilder
Sets the discv4 config to use.
pub fn discovery_v5(self, builder: ConfigBuilder) -> NetworkConfigBuilder
pub fn discovery_v5(self, builder: ConfigBuilder) -> NetworkConfigBuilder
Sets the discv5 config to use.
pub fn dns_discovery(self, config: DnsDiscoveryConfig) -> NetworkConfigBuilder
pub fn dns_discovery(self, config: DnsDiscoveryConfig) -> NetworkConfigBuilder
Sets the dns discovery config to use.
pub fn mainnet_boot_nodes(self) -> NetworkConfigBuilder
pub fn mainnet_boot_nodes(self) -> NetworkConfigBuilder
Convenience function for setting Self::boot_nodes
to the mainnet boot nodes.
pub fn sepolia_boot_nodes(self) -> NetworkConfigBuilder
pub fn sepolia_boot_nodes(self) -> NetworkConfigBuilder
Convenience function for setting Self::boot_nodes
to the sepolia boot nodes.
pub fn boot_nodes<T>(
self,
nodes: impl IntoIterator<Item = T>,
) -> NetworkConfigBuilderwhere
T: Into<TrustedPeer>,
pub fn boot_nodes<T>(
self,
nodes: impl IntoIterator<Item = T>,
) -> NetworkConfigBuilderwhere
T: Into<TrustedPeer>,
Sets the boot nodes to use to bootstrap the configured discovery services (discv4 + discv5).
pub fn boot_nodes_iter(&self) -> impl Iterator<Item = &TrustedPeer>
pub fn boot_nodes_iter(&self) -> impl Iterator<Item = &TrustedPeer>
Returns an iterator over all configured boot nodes.
pub fn disable_dns_discovery(self) -> NetworkConfigBuilder
pub fn disable_dns_discovery(self) -> NetworkConfigBuilder
Disable the DNS discovery.
pub const fn disable_nat(self) -> NetworkConfigBuilder
pub fn disable_discovery(self) -> NetworkConfigBuilder
pub fn disable_discovery(self) -> NetworkConfigBuilder
Disables all discovery.
pub fn disable_discovery_if(self, disable: bool) -> NetworkConfigBuilder
pub fn disable_discovery_if(self, disable: bool) -> NetworkConfigBuilder
Disables all discovery if the given condition is true.
pub fn disable_discv4_discovery(self) -> NetworkConfigBuilder
pub fn disable_discv4_discovery(self) -> NetworkConfigBuilder
Disable the Discv4 discovery.
pub fn disable_dns_discovery_if(self, disable: bool) -> NetworkConfigBuilder
pub fn disable_dns_discovery_if(self, disable: bool) -> NetworkConfigBuilder
Disable the DNS discovery if the given condition is true.
pub fn disable_discv4_discovery_if(self, disable: bool) -> NetworkConfigBuilder
pub fn disable_discv4_discovery_if(self, disable: bool) -> NetworkConfigBuilder
Disable the Discv4 discovery if the given condition is true.
pub fn add_rlpx_sub_protocol(
self,
protocol: impl IntoRlpxSubProtocol,
) -> NetworkConfigBuilder
pub fn add_rlpx_sub_protocol( self, protocol: impl IntoRlpxSubProtocol, ) -> NetworkConfigBuilder
Adds a new additional protocol to the RLPx
sub-protocol list.
pub const fn disable_tx_gossip(
self,
disable_tx_gossip: bool,
) -> NetworkConfigBuilder
pub const fn disable_tx_gossip( self, disable_tx_gossip: bool, ) -> NetworkConfigBuilder
Sets whether tx gossip is disabled.
pub fn block_import(
self,
block_import: Box<dyn BlockImport>,
) -> NetworkConfigBuilder
pub fn block_import( self, block_import: Box<dyn BlockImport>, ) -> NetworkConfigBuilder
Sets the block import type.
pub fn build_with_noop_provider<ChainSpec>(
self,
chain_spec: Arc<ChainSpec>,
) -> NetworkConfig<NoopBlockReader<ChainSpec>>where
ChainSpec: EthChainSpec + Hardforks + 'static,
pub fn build_with_noop_provider<ChainSpec>(
self,
chain_spec: Arc<ChainSpec>,
) -> NetworkConfig<NoopBlockReader<ChainSpec>>where
ChainSpec: EthChainSpec + Hardforks + 'static,
Convenience function for creating a NetworkConfig
with a noop provider that does
nothing.
pub const fn add_nat(self, nat: Option<NatResolver>) -> NetworkConfigBuilder
pub const fn add_nat(self, nat: Option<NatResolver>) -> NetworkConfigBuilder
Sets the NAT resolver for external IP.
pub fn build<C>(self, client: C) -> NetworkConfig<C>
pub fn build<C>(self, client: C) -> NetworkConfig<C>
Consumes the type and creates the actual NetworkConfig
for the given client type that can interact with the chain.
The given client is to be used for interacting with the chain, for example fetching the corresponding block for a given block hash we receive from a peer in the status message when establishing a connection.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for NetworkConfigBuilder
impl !RefUnwindSafe for NetworkConfigBuilder
impl Send for NetworkConfigBuilder
impl Sync for NetworkConfigBuilder
impl Unpin for NetworkConfigBuilder
impl !UnwindSafe for NetworkConfigBuilder
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
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling [Attribute
] value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
[Quirk
] value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the [Condition
] value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
Source§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSend for Twhere
T: Send,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 2264 bytes