Struct NetworkConfigBuilder
pub struct NetworkConfigBuilder<N = EthNetworkPrimitives>where
N: NetworkPrimitives,{ /* private fields */ }
Expand description
Builder for NetworkConfig
.
Implementations§
§impl<N> NetworkConfigBuilder<N>where
N: NetworkPrimitives,
impl<N> NetworkConfigBuilder<N>where
N: NetworkPrimitives,
pub fn with_rng_secret_key() -> NetworkConfigBuilder<N>
pub fn with_rng_secret_key() -> NetworkConfigBuilder<N>
Create a new builder instance with a random secret key.
pub fn new(secret_key: SecretKey) -> NetworkConfigBuilder<N>
pub fn new(secret_key: SecretKey) -> NetworkConfigBuilder<N>
Create a new builder instance with the given secret key.
pub fn apply<F>(self, f: F) -> NetworkConfigBuilder<N>
pub fn apply<F>(self, f: F) -> NetworkConfigBuilder<N>
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<N>
pub const fn network_mode( self, network_mode: NetworkMode, ) -> NetworkConfigBuilder<N>
Sets the NetworkMode
.
pub const fn with_pow(self) -> NetworkConfigBuilder<N>
pub const fn with_pow(self) -> NetworkConfigBuilder<N>
Configures the network to use proof-of-work.
This effectively allows block propagation in the eth
sub-protocol, which has been
soft-deprecated with ethereum PoS
after the merge. Even if block propagation is
technically allowed, according to the eth protocol, it is not expected to be used in PoS
networks and peers are supposed to terminate the connection if they receive a NewBlock
message.
pub const fn set_head(self, head: Head) -> NetworkConfigBuilder<N>
pub const fn set_head(self, head: Head) -> NetworkConfigBuilder<N>
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<N>
pub fn hello_message( self, hello_message: HelloMessageWithProtocols, ) -> NetworkConfigBuilder<N>
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<N>
pub fn peer_config(self, config: PeersConfig) -> NetworkConfigBuilder<N>
Set a custom peer config for how peers are handled
pub fn with_task_executor(
self,
executor: Box<dyn TaskSpawner>,
) -> NetworkConfigBuilder<N>
pub fn with_task_executor( self, executor: Box<dyn TaskSpawner>, ) -> NetworkConfigBuilder<N>
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<N>
pub const fn sessions_config( self, config: SessionsConfig, ) -> NetworkConfigBuilder<N>
Sets a custom config for how sessions are handled.
pub const fn transactions_manager_config(
self,
config: TransactionsManagerConfig,
) -> NetworkConfigBuilder<N>
pub const fn transactions_manager_config( self, config: TransactionsManagerConfig, ) -> NetworkConfigBuilder<N>
Configures the transactions manager with the given config.
pub const fn set_addrs(self, addr: SocketAddr) -> NetworkConfigBuilder<N>
pub const fn set_addrs(self, addr: SocketAddr) -> NetworkConfigBuilder<N>
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<N>
pub const fn listener_addr( self, listener_addr: SocketAddr, ) -> NetworkConfigBuilder<N>
Sets the socket address the network will listen on.
By default, this is [DEFAULT_DISCOVERY_ADDRESS
]
pub fn listener_port(self, port: u16) -> NetworkConfigBuilder<N>
pub fn listener_port(self, port: u16) -> NetworkConfigBuilder<N>
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<N>
pub const fn discovery_addr( self, discovery_addr: SocketAddr, ) -> NetworkConfigBuilder<N>
Sets the socket address the discovery network will listen on
pub fn discovery_port(self, port: u16) -> NetworkConfigBuilder<N>
pub fn discovery_port(self, port: u16) -> NetworkConfigBuilder<N>
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<N>
pub fn with_unused_discovery_port(self) -> NetworkConfigBuilder<N>
Sets the discovery port to an unused port. This is useful for testing.
pub fn with_unused_listener_port(self) -> NetworkConfigBuilder<N>
pub fn with_unused_listener_port(self) -> NetworkConfigBuilder<N>
Sets the listener port to an unused port. This is useful for testing.
pub fn external_ip_resolver(
self,
resolver: NatResolver,
) -> NetworkConfigBuilder<N>
pub fn external_ip_resolver( self, resolver: NatResolver, ) -> NetworkConfigBuilder<N>
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<N>
pub fn discovery(self, builder: Discv4ConfigBuilder) -> NetworkConfigBuilder<N>
Sets the discv4 config to use.
pub fn discovery_v5(self, builder: ConfigBuilder) -> NetworkConfigBuilder<N>
pub fn discovery_v5(self, builder: ConfigBuilder) -> NetworkConfigBuilder<N>
Sets the discv5 config to use.
pub fn dns_discovery(
self,
config: DnsDiscoveryConfig,
) -> NetworkConfigBuilder<N>
pub fn dns_discovery( self, config: DnsDiscoveryConfig, ) -> NetworkConfigBuilder<N>
Sets the dns discovery config to use.
pub fn mainnet_boot_nodes(self) -> NetworkConfigBuilder<N>
pub fn mainnet_boot_nodes(self) -> NetworkConfigBuilder<N>
Convenience function for setting Self::boot_nodes
to the mainnet boot nodes.
pub fn sepolia_boot_nodes(self) -> NetworkConfigBuilder<N>
pub fn sepolia_boot_nodes(self) -> NetworkConfigBuilder<N>
Convenience function for setting Self::boot_nodes
to the sepolia boot nodes.
pub fn boot_nodes<T>(
self,
nodes: impl IntoIterator<Item = T>,
) -> NetworkConfigBuilder<N>where
T: Into<TrustedPeer>,
pub fn boot_nodes<T>(
self,
nodes: impl IntoIterator<Item = T>,
) -> NetworkConfigBuilder<N>where
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<N>
pub fn disable_dns_discovery(self) -> NetworkConfigBuilder<N>
Disable the DNS discovery.
pub const fn disable_nat(self) -> NetworkConfigBuilder<N>
pub fn disable_discovery(self) -> NetworkConfigBuilder<N>
pub fn disable_discovery(self) -> NetworkConfigBuilder<N>
Disables all discovery.
pub fn disable_discovery_if(self, disable: bool) -> NetworkConfigBuilder<N>
pub fn disable_discovery_if(self, disable: bool) -> NetworkConfigBuilder<N>
Disables all discovery if the given condition is true.
pub fn disable_discv4_discovery(self) -> NetworkConfigBuilder<N>
pub fn disable_discv4_discovery(self) -> NetworkConfigBuilder<N>
Disable the Discv4 discovery.
pub fn disable_dns_discovery_if(self, disable: bool) -> NetworkConfigBuilder<N>
pub fn disable_dns_discovery_if(self, disable: bool) -> NetworkConfigBuilder<N>
Disable the DNS discovery if the given condition is true.
pub fn disable_discv4_discovery_if(
self,
disable: bool,
) -> NetworkConfigBuilder<N>
pub fn disable_discv4_discovery_if( self, disable: bool, ) -> NetworkConfigBuilder<N>
Disable the Discv4 discovery if the given condition is true.
pub fn add_rlpx_sub_protocol(
self,
protocol: impl IntoRlpxSubProtocol,
) -> NetworkConfigBuilder<N>
pub fn add_rlpx_sub_protocol( self, protocol: impl IntoRlpxSubProtocol, ) -> NetworkConfigBuilder<N>
Adds a new additional protocol to the RLPx
sub-protocol list.
pub const fn disable_tx_gossip(
self,
disable_tx_gossip: bool,
) -> NetworkConfigBuilder<N>
pub const fn disable_tx_gossip( self, disable_tx_gossip: bool, ) -> NetworkConfigBuilder<N>
Sets whether tx gossip is disabled.
pub fn block_import(
self,
block_import: Box<dyn BlockImport<<N as NetworkPrimitives>::Block>>,
) -> NetworkConfigBuilder<N>
pub fn block_import( self, block_import: Box<dyn BlockImport<<N as NetworkPrimitives>::Block>>, ) -> NetworkConfigBuilder<N>
Sets the block import type.
pub fn build_with_noop_provider<ChainSpec>(
self,
chain_spec: Arc<ChainSpec>,
) -> NetworkConfig<NoopProvider<ChainSpec>, N>where
ChainSpec: EthChainSpec + Hardforks + 'static,
pub fn build_with_noop_provider<ChainSpec>(
self,
chain_spec: Arc<ChainSpec>,
) -> NetworkConfig<NoopProvider<ChainSpec>, N>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<N>
pub const fn add_nat(self, nat: Option<NatResolver>) -> NetworkConfigBuilder<N>
Sets the NAT resolver for external IP.
pub fn build<C>(self, client: C) -> NetworkConfig<C, N>
pub fn build<C>(self, client: C) -> NetworkConfig<C, N>
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§
§impl<N> Debug for NetworkConfigBuilder<N>
impl<N> Debug for NetworkConfigBuilder<N>
Auto Trait Implementations§
impl<N> Freeze for NetworkConfigBuilder<N>
impl<N = EthNetworkPrimitives> !RefUnwindSafe for NetworkConfigBuilder<N>
impl<N> Send for NetworkConfigBuilder<N>
impl<N> Sync for NetworkConfigBuilder<N>
impl<N> Unpin for NetworkConfigBuilder<N>
impl<N = EthNetworkPrimitives> !UnwindSafe for NetworkConfigBuilder<N>
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