Skip to main content

EventPayload

Enum EventPayload 

Source
pub enum EventPayload {
Show 120 variants NewBlock { block_hash: [u8; 32], height: u64, }, NewTransaction { tx_hash: [u8; 32], }, BlockDisconnected { hash: [u8; 32], height: u64, }, ChainReorg { old_tip: [u8; 32], new_tip: [u8; 32], }, ReservedPaymentRequestCreated, ReservedPaymentSettled, ReservedPaymentFailed, ReservedPaymentVerified, ReservedPaymentRouteFound, ReservedPaymentRouteFailed, ReservedChannelOpened, ReservedChannelClosed, BlockMined { block_hash: [u8; 32], height: u64, miner_id: Option<String>, }, BlockTemplateUpdated { prev_hash: [u8; 32], height: u64, tx_count: usize, }, MiningDifficultyChanged { old_difficulty: u32, new_difficulty: u32, height: u64, }, ReservedMiningJobCreated, ReservedShareSubmitted, ReservedMergeMiningReward, ReservedMiningPoolConnected, ReservedMiningPoolDisconnected, ReservedGovernanceProposalCreated, ReservedGovernanceProposalVoted, ReservedGovernanceProposalMerged, ReservedWebhookSent, ReservedWebhookFailed, ReservedGovernanceForkDetected, PeerConnected { peer_addr: String, transport_type: String, services: u64, version: u32, peer_node_id: Option<Vec<u8>>, }, PeerDisconnected { peer_addr: String, reason: String, }, PeerBanned { peer_addr: String, reason: String, ban_duration_seconds: u64, }, PeerUnbanned { peer_addr: String, }, MessageReceived { peer_addr: String, message_type: String, message_size: usize, protocol_version: u32, }, MessageSent { peer_addr: String, message_type: String, message_size: usize, }, ReservedBroadcastStarted, ReservedBroadcastCompleted, ReservedRouteDiscovered, ReservedRouteFailed, ReservedConnectionAttempt, ReservedAddressDiscovered, ReservedAddressExpired, ReservedNetworkPartition, ReservedNetworkReconnected, ReservedDoSAttackDetected, ReservedRateLimitExceeded, BlockValidationStarted { block_hash: [u8; 32], height: u64, }, BlockValidationCompleted { block_hash: [u8; 32], height: u64, success: bool, validation_time_ms: u64, error: Option<String>, }, ReservedScriptVerificationStarted, ReservedScriptVerificationCompleted, ReservedUTXOValidationStarted, ReservedUTXOValidationCompleted, DifficultyAdjusted { old_difficulty: u32, new_difficulty: u32, height: u64, }, ReservedSoftForkActivated, ReservedSoftForkLockedIn, ReservedConsensusRuleViolation, HeadersSyncStarted { start_height: u64, }, HeadersSyncProgress { current_height: u64, target_height: u64, progress_percent: f64, }, HeadersSyncCompleted { final_height: u64, duration_seconds: u64, }, BlockSyncStarted { start_height: u64, target_height: u64, }, BlockSyncProgress { current_height: u64, target_height: u64, progress_percent: f64, blocks_per_second: f64, }, BlockSyncCompleted { final_height: u64, duration_seconds: u64, }, SyncStateChanged { old_state: String, new_state: String, }, MempoolTransactionAdded { tx_hash: [u8; 32], fee_rate: f64, mempool_size: usize, }, MempoolTransactionRemoved { tx_hash: [u8; 32], reason: String, mempool_size: usize, }, MempoolThresholdExceeded { current_size: usize, threshold: usize, }, FeeRateChanged { old_fee_rate: f64, new_fee_rate: f64, mempool_size: usize, }, MempoolCleared { cleared_count: usize, }, ReservedStorageRead, ReservedStorageWrite, ReservedStorageQuery, ReservedDatabaseBackupStarted, ReservedDatabaseBackupCompleted, ModuleLoaded { module_name: String, version: String, }, ModuleUnloaded { module_name: String, version: String, }, ModuleReloaded { module_name: String, old_version: String, new_version: String, }, ReservedModuleStarted, ReservedModuleStopped, MeshPacketReceived { packet_data: Vec<u8>, peer_addr: String, }, StratumV2MessageReceived { message_data: Vec<u8>, peer_addr: String, }, ModuleCrashed { module_name: String, error: String, }, ModuleHealthChanged { module_name: String, old_health: String, new_health: String, }, ModuleStateChanged { module_name: String, old_state: String, new_state: String, }, ConfigLoaded { changed_sections: Vec<String>, config_json: Option<String>, }, NodeShutdown { reason: String, timeout_seconds: u64, }, NodeShutdownCompleted { duration_ms: u64, }, NodeStartupCompleted { duration_ms: u64, components: Vec<String>, }, ReservedMaintenanceStarted, ReservedMaintenanceCompleted, DataMaintenance { operation: String, urgency: String, reason: String, target_age_days: Option<u64>, timeout_seconds: Option<u64>, }, HealthCheck { check_type: String, node_healthy: bool, health_report: Option<String>, }, DiskSpaceLow { available_bytes: u64, total_bytes: u64, percent_free: f64, disk_path: String, }, ReservedResourceLimitWarning, ReservedDandelionStemStarted, ReservedDandelionStemAdvanced, ReservedDandelionFluffed, ReservedDandelionStemPathExpired, ReservedCompactBlockReceived, ReservedBlockReconstructionStarted, ReservedBlockReconstructionCompleted, ReservedFibreBlockEncoded, ReservedFibreBlockSent, CompanionUdpPeerRegistered { p2p_peer_addr: String, udp_addr: String, }, CompanionUdpPeerUnregistered { p2p_peer_addr: String, }, ReservedPackageReceived, ReservedPackageRejected, ReservedUtxoCommitmentReceived, ReservedUtxoCommitmentVerified, BanListShared { peer_addr: String, ban_count: usize, }, BanListReceived { peer_addr: String, ban_count: usize, }, ReservedSelectiveSyncPolicyApplied, ReservedActionExecuted, ReservedModulePurchaseCompleted, ReservedStratumClientConnected, ReservedStratumClientDisconnected, ReservedIBDBlockFiltered, ModuleDiscovered { module_name: String, version: String, source: String, }, ModuleInstalled { module_name: String, version: String, }, ModuleUpdated { module_name: String, old_version: String, new_version: String, }, ModuleRemoved { module_name: String, version: String, }, PeerPayment { command: String, payload: Vec<u8>, peer_addr: String, }, ModuleEvent { source_module: String, name: String, data: Vec<u8>, }, FeeTableReady { tip_hash: [u8; 32], tip_height: u64, generation: u64, },
}
Expand description

Event payload types

Variants§

§

NewBlock

Fields

§block_hash: [u8; 32]
§height: u64
§

NewTransaction

Fields

§tx_hash: [u8; 32]
§

BlockDisconnected

Fields

§hash: [u8; 32]
§height: u64
§

ChainReorg

Fields

§old_tip: [u8; 32]
§new_tip: [u8; 32]
§

ReservedPaymentRequestCreated

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPaymentSettled

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPaymentFailed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPaymentVerified

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPaymentRouteFound

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPaymentRouteFailed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedChannelOpened

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedChannelClosed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

BlockMined

Fields

§block_hash: [u8; 32]
§height: u64
§miner_id: Option<String>
§

BlockTemplateUpdated

Fields

§prev_hash: [u8; 32]
§height: u64
§tx_count: usize
§

MiningDifficultyChanged

Fields

§old_difficulty: u32
§new_difficulty: u32
§height: u64
§

ReservedMiningJobCreated

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedShareSubmitted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedMergeMiningReward

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedMiningPoolConnected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedMiningPoolDisconnected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedGovernanceProposalCreated

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedGovernanceProposalVoted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedGovernanceProposalMerged

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedWebhookSent

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedWebhookFailed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedGovernanceForkDetected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

PeerConnected

Fields

§peer_addr: String
§transport_type: String
§services: u64
§version: u32
§peer_node_id: Option<Vec<u8>>

Optional mesh/Bitcoin identity (32 bytes), when known at connect time.

§

PeerDisconnected

Fields

§peer_addr: String
§reason: String
§

PeerBanned

Fields

§peer_addr: String
§reason: String
§ban_duration_seconds: u64
§

PeerUnbanned

Fields

§peer_addr: String
§

MessageReceived

Fields

§peer_addr: String
§message_type: String
§message_size: usize
§protocol_version: u32
§

MessageSent

Fields

§peer_addr: String
§message_type: String
§message_size: usize
§

ReservedBroadcastStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedBroadcastCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedRouteDiscovered

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedRouteFailed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedConnectionAttempt

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedAddressDiscovered

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedAddressExpired

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedNetworkPartition

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedNetworkReconnected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDoSAttackDetected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedRateLimitExceeded

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

BlockValidationStarted

Fields

§block_hash: [u8; 32]
§height: u64
§

BlockValidationCompleted

Fields

§block_hash: [u8; 32]
§height: u64
§success: bool
§validation_time_ms: u64
§

ReservedScriptVerificationStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedScriptVerificationCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedUTXOValidationStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedUTXOValidationCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

DifficultyAdjusted

Fields

§old_difficulty: u32
§new_difficulty: u32
§height: u64
§

ReservedSoftForkActivated

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedSoftForkLockedIn

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedConsensusRuleViolation

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

HeadersSyncStarted

Fields

§start_height: u64
§

HeadersSyncProgress

Fields

§current_height: u64
§target_height: u64
§progress_percent: f64
§

HeadersSyncCompleted

Fields

§final_height: u64
§duration_seconds: u64
§

BlockSyncStarted

Fields

§start_height: u64
§target_height: u64
§

BlockSyncProgress

Fields

§current_height: u64
§target_height: u64
§progress_percent: f64
§blocks_per_second: f64
§

BlockSyncCompleted

Fields

§final_height: u64
§duration_seconds: u64
§

SyncStateChanged

Fields

§old_state: String
§new_state: String
§

MempoolTransactionAdded

Fields

§tx_hash: [u8; 32]
§fee_rate: f64
§mempool_size: usize
§

MempoolTransactionRemoved

Fields

§tx_hash: [u8; 32]
§reason: String
§mempool_size: usize
§

MempoolThresholdExceeded

Fields

§current_size: usize
§threshold: usize
§

FeeRateChanged

Fields

§old_fee_rate: f64
§new_fee_rate: f64
§mempool_size: usize
§

MempoolCleared

Fields

§cleared_count: usize
§

ReservedStorageRead

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedStorageWrite

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedStorageQuery

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDatabaseBackupStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDatabaseBackupCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ModuleLoaded

Fields

§module_name: String
§version: String
§

ModuleUnloaded

Fields

§module_name: String
§version: String
§

ModuleReloaded

Fields

§module_name: String
§old_version: String
§new_version: String
§

ReservedModuleStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedModuleStopped

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

MeshPacketReceived

Fields

§packet_data: Vec<u8>
§peer_addr: String
§

StratumV2MessageReceived

Fields

§message_data: Vec<u8>
§peer_addr: String
§

ModuleCrashed

Fields

§module_name: String
§error: String
§

ModuleHealthChanged

Fields

§module_name: String
§old_health: String
§new_health: String
§

ModuleStateChanged

Fields

§module_name: String
§old_state: String
§new_state: String
§

ConfigLoaded

Fields

§changed_sections: Vec<String>

Configuration sections that changed (e.g., [“network”, “governance”])

§config_json: Option<String>

Full config as JSON string (for modules that need full config)

§

NodeShutdown

Fields

§reason: String

Shutdown reason (e.g., “signal”, “rpc”, “error”)

§timeout_seconds: u64

Graceful shutdown timeout in seconds

§

NodeShutdownCompleted

Fields

§duration_ms: u64

Shutdown duration in milliseconds

§

NodeStartupCompleted

Fields

§duration_ms: u64

Startup duration in milliseconds

§components: Vec<String>

Components initialized

§

ReservedMaintenanceStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedMaintenanceCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

DataMaintenance

Fields

§operation: String

Maintenance operation type: “cleanup” (delete old data), “flush” (write pending data), or “both”

§urgency: String

Urgency level: “low” (periodic), “medium” (scheduled), “high” (shutdown/low-disk)

§reason: String

Reason for maintenance (e.g., “periodic”, “shutdown”, “low_disk”, “manual”)

§target_age_days: Option<u64>

Target age for cleanup in days (if operation includes cleanup)

§timeout_seconds: Option<u64>

Timeout in seconds (for high urgency operations)

§

HealthCheck

Fields

§check_type: String

Health check type (e.g., “periodic”, “manual”, “startup”)

§node_healthy: bool

Node health status

§health_report: Option<String>

Health report (optional JSON string)

§

DiskSpaceLow

Fields

§available_bytes: u64

Available space in bytes

§total_bytes: u64

Total space in bytes

§percent_free: f64

Percentage free

§disk_path: String

Disk path

§

ReservedResourceLimitWarning

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDandelionStemStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDandelionStemAdvanced

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDandelionFluffed

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedDandelionStemPathExpired

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedCompactBlockReceived

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedBlockReconstructionStarted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedBlockReconstructionCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedFibreBlockEncoded

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedFibreBlockSent

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

CompanionUdpPeerRegistered

Fields

§p2p_peer_addr: String

P2P peer key (SocketAddr display for TCP/QUIC).

§udp_addr: String

Companion UDP endpoint (same IP as P2P, port = P2P port + 1).

§

CompanionUdpPeerUnregistered

Fields

§p2p_peer_addr: String
§

ReservedPackageReceived

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedPackageRejected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedUtxoCommitmentReceived

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedUtxoCommitmentVerified

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

BanListShared

Fields

§peer_addr: String
§ban_count: usize
§

BanListReceived

Fields

§peer_addr: String
§ban_count: usize
§

ReservedSelectiveSyncPolicyApplied

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedActionExecuted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedModulePurchaseCompleted

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedStratumClientConnected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedStratumClientDisconnected

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ReservedIBDBlockFiltered

F5 reserved. Nothing publishes this. The slot keeps the bincode index.

§

ModuleDiscovered

Fields

§module_name: String
§version: String
§source: String
§

ModuleInstalled

Fields

§module_name: String
§version: String
§

ModuleUpdated

Fields

§module_name: String
§old_version: String
§new_version: String
§

ModuleRemoved

Fields

§module_name: String
§version: String
§

PeerPayment

Raw BIP70 frame from a peer. command is the P2P command name.

Fields

§command: String
§payload: Vec<u8>
§peer_addr: String
§

ModuleEvent

Published by a module. source_module is the authenticated session, not the caller’s value.

Fields

§source_module: String
§name: String
§data: Vec<u8>
§

FeeTableReady

First native table for a tip. One event per tip hash.

Fields

§tip_hash: [u8; 32]
§tip_height: u64
§generation: u64

Implementations§

Source§

impl EventPayload

Source

pub fn module_event(name: impl Into<String>, data: Vec<u8>) -> EventPayload

Build a module event. The node replaces source_module with the session id.

Source

pub fn module_event_json( name: impl Into<String>, data: &impl Serialize, ) -> EventPayload

Source§

impl EventPayload

Typed payload extraction for event handlers.

Use these helpers in #[on_event] handlers to get event-specific data without manual matching. Example: if let Some((hash, height)) = event.payload.as_new_block() { ... }

Source

pub fn as_new_block(&self) -> Option<(&[u8; 32], u64)>

Source

pub fn as_new_transaction(&self) -> Option<&[u8; 32]>

Source

pub fn as_module_loaded(&self) -> Option<(&str, &str)>

Source

pub fn as_block_disconnected(&self) -> Option<(&[u8; 32], u64)>

Source

pub fn as_chain_reorg(&self) -> Option<(&[u8; 32], &[u8; 32])>

Trait Implementations§

Source§

impl Clone for EventPayload

Source§

fn clone(&self) -> EventPayload

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for EventPayload

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for EventPayload

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<EventPayload, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for EventPayload

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> ArchivePointee for T

Source§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
Source§

fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> CompatExt for T

Source§

fn compat(self) -> Compat<T> ⓘ
where T: Sized,

Applies the Compat adapter by value. Read more
Source§

fn compat_ref(&self) -> Compat<&T> ⓘ

Applies the Compat adapter by shared reference. Read more
Source§

fn compat_mut(&mut self) -> Compat<&mut T> ⓘ

Applies the Compat adapter by mutable reference. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> LayoutRaw for T

Source§

fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>

Returns the layout of the type.
Source§

impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
where T: SharedNiching<N1, N2>, N1: Niching<T>, N2: Niching<T>,

Source§

unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool

Returns whether the given value has been niched. Read more
Source§

fn resolve_niched(out: Place<NichedOption<T, N1>>)

Writes data to out indicating that a T is niched.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Pointee for T

Source§

type Metadata = ()

The metadata type for pointers and references to this type.
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more