Skip to main content

MaybeSend

Trait MaybeSend 

1.0.0 · Source
pub unsafe auto trait MaybeSend { }
Available on crate feature std only.
Expand description

Marker trait to optionally implement Send under std.

This is not exported to bindings users as async is only supported in Rust. Types that can be transferred across thread boundaries.

This trait is automatically implemented when the compiler determines it’s appropriate.

An example of a non-Send type is the reference-counting pointer rc::Rc. If two threads attempt to clone Rcs that point to the same reference-counted value, they might try to update the reference count at the same time, which is undefined behavior because Rc doesn’t use atomic operations. Its cousin sync::Arc does use atomic operations (incurring some overhead) and thus is Send.

See the Nomicon and the Sync trait for more details.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

1.26.0 · Source§

impl !Send for Args

1.26.0 · Source§

impl !Send for ArgsOs

1.0.0 · Source§

impl !Send for Arguments<'_>

Source§

impl !Send for LocalWaker

1.98.0 · Source§

impl !Send for VarsOs

Source§

impl Send for Bytes<'_>

1.6.0 · Source§

impl Send for alloc::string::Drain<'_>

1.10.0 · Source§

impl Send for Location<'_>

1.0.0 · Source§

impl Send for TypeId

1.36.0 · Source§

impl Send for Waker

Source§

impl<'a, 'b, K, Q, V, S, A> Send for OccupiedEntryRef<'a, 'b, K, Q, V, S, A>
where K: Send, Q: Sync + ?Sized, V: Send, S: Send, A: Send + Allocator + Clone,

Source§

impl<'a, T, const CAP: usize> Send for arrayvec::arrayvec::Drain<'a, T, CAP>
where T: Send,

1.44.0 · Source§

impl<'a> Send for IoSlice<'a>

1.44.0 · Source§

impl<'a> Send for IoSliceMut<'a>

Source§

impl<C> Send for Secp256k1<C>
where C: Context,

Source§

impl<Dyn> Send for DynMetadata<Dyn>
where Dyn: ?Sized,

Source§

impl<K, V, S, A> Send for lightning::util::hash_tables::hash_map::OccupiedEntry<'_, K, V, S, A>
where K: Send, V: Send, S: Send, A: Send + Allocator + Clone,

Source§

impl<K, V, S, A> Send for RawOccupiedEntryMut<'_, K, V, S, A>
where K: Send, V: Send, S: Send, A: Send + Allocator + Clone,

Source§

impl<K, V> Send for lightning::util::hash_tables::hash_map::IterMut<'_, K, V>
where K: Send, V: Send,

1.0.0 · Source§

impl<T, A> !Send for Rc<T, A>
where A: Allocator, T: ?Sized,

Source§

impl<T, A> !Send for UniqueRc<T, A>
where A: Allocator, T: ?Sized,

1.4.0 · Source§

impl<T, A> !Send for alloc::rcs::rc::Weak<T, A>
where A: Allocator, T: ?Sized,

1.0.0 · Source§

impl<T, A> Send for Arc<T, A>
where T: Sync + Send + ?Sized, A: Allocator + Send + Sync,

Source§

impl<T, A> Send for alloc::collections::linked_list::Cursor<'_, T, A>
where T: Sync, A: Allocator + Sync,

Source§

impl<T, A> Send for CursorMut<'_, T, A>
where T: Send, A: Allocator + Send,

1.6.0 · Source§

impl<T, A> Send for alloc::collections::vec_deque::drain::Drain<'_, T, A>
where T: Send, A: Allocator + Send,

1.6.0 · Source§

impl<T, A> Send for alloc::vec::drain::Drain<'_, T, A>
where T: Send, A: Send + Allocator,

1.0.0 · Source§

impl<T, A> Send for alloc::vec::into_iter::IntoIter<T, A>
where T: Send, A: Allocator + Send,

1.0.0 · Source§

impl<T, A> Send for LinkedList<T, A>
where T: Send, A: Allocator + Send,

Source§

impl<T, A> Send for UniqueArc<T, A>
where T: Sync + Send + ?Sized, A: Allocator + Send + Sync,

1.4.0 · Source§

impl<T, A> Send for alloc::rcs::arc::Weak<T, A>
where T: Sync + Send + ?Sized, A: Allocator + Send + Sync,

1.0.0 · Source§

impl<T> !Send for *const T
where T: ?Sized,

1.0.0 · Source§

impl<T> !Send for *mut T
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::mutex::MappedMutexGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::poison::mutex::MappedMutexGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::rwlock::MappedRwLockReadGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::poison::rwlock::MappedRwLockReadGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::rwlock::MappedRwLockWriteGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::poison::rwlock::MappedRwLockWriteGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::mutex::MutexGuard<'_, T>
where T: ?Sized,

A MutexGuard is not Send to maximize platform portability.

On platforms that use POSIX threads (commonly referred to as pthreads) there is a requirement to release mutex locks on the same thread they were acquired. For this reason, MutexGuard must not implement Send to prevent it being dropped from another thread.

1.0.0 · Source§

impl<T> !Send for std::sync::poison::mutex::MutexGuard<'_, T>
where T: ?Sized,

A MutexGuard is not Send to maximize platform portability.

On platforms that use POSIX threads (commonly referred to as pthreads) there is a requirement to release mutex locks on the same thread they were acquired. For this reason, MutexGuard must not implement Send to prevent it being dropped from another thread.

1.25.0 · Source§

impl<T> !Send for NonNull<T>
where T: ?Sized,

NonNull pointers are not Send because the data they reference may be aliased.

Source§

impl<T> !Send for ReentrantLockGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::rwlock::RwLockReadGuard<'_, T>
where T: ?Sized,

1.0.0 · Source§

impl<T> !Send for std::sync::poison::rwlock::RwLockReadGuard<'_, T>
where T: ?Sized,

Source§

impl<T> !Send for std::sync::nonpoison::rwlock::RwLockWriteGuard<'_, T>
where T: ?Sized,

1.0.0 · Source§

impl<T> !Send for std::sync::poison::rwlock::RwLockWriteGuard<'_, T>
where T: ?Sized,

1.0.0 · Source§

impl<T> Send for &T
where T: Sync + ?Sized,

1.0.0 · Source§

impl<T> Send for Atomic<T>
where T: AtomicPrimitive,

Source§

impl<T> Send for BorrowedCursor<'_, T>
where T: Send,

1.0.0 · Source§

impl<T> Send for Cell<T>
where T: Send + ?Sized,

1.31.0 · Source§

impl<T> Send for ChunksExactMut<'_, T>
where T: Send,

1.0.0 · Source§

impl<T> Send for ChunksMut<'_, T>
where T: Send,

1.0.0 · Source§

impl<T> Send for core::slice::iter::Iter<'_, T>
where T: Sync,

1.0.0 · Source§

impl<T> Send for alloc::collections::linked_list::Iter<'_, T>
where T: Sync,

1.0.0 · Source§

impl<T> Send for core::slice::iter::IterMut<'_, T>
where T: Send,

1.0.0 · Source§

impl<T> Send for alloc::collections::linked_list::IterMut<'_, T>
where T: Send,

1.29.0 · Source§

impl<T> Send for JoinHandle<T>

Source§

impl<T> Send for std::sync::nonpoison::mutex::Mutex<T>
where T: Send + ?Sized,

T must be Send for a Mutex to be Send because it is possible to acquire the owned T from the Mutex via into_inner.

1.0.0 · Source§

impl<T> Send for std::sync::poison::mutex::Mutex<T>
where T: Send + ?Sized,

T must be Send for a Mutex to be Send because it is possible to acquire the owned T from the Mutex via into_inner.

1.28.0 · Source§

impl<T> Send for NonZero<T>

1.70.0 · Source§

impl<T> Send for OnceLock<T>
where T: Send,

1.31.0 · Source§

impl<T> Send for RChunksExactMut<'_, T>
where T: Send,

1.31.0 · Source§

impl<T> Send for RChunksMut<'_, T>
where T: Send,

Source§

impl<T> Send for std::sync::mpmc::Receiver<T>
where T: Send,

1.0.0 · Source§

impl<T> Send for std::sync::mpsc::Receiver<T>
where T: Send,

Source§

impl<T> Send for ReentrantLock<T>
where T: Send + ?Sized,

1.0.0 · Source§

impl<T> Send for RefCell<T>
where T: Send + ?Sized,

Source§

impl<T> Send for std::sync::nonpoison::rwlock::RwLock<T>
where T: Send + ?Sized,

1.0.0 · Source§

impl<T> Send for std::sync::poison::rwlock::RwLock<T>
where T: Send + ?Sized,

Source§

impl<T> Send for std::sync::mpmc::Sender<T>
where T: Send,

1.0.0 · Source§

impl<T> Send for std::sync::mpsc::Sender<T>
where T: Send,

1.0.0 · Source§

impl<T> Send for SyncSender<T>
where T: Send,

Source§

impl<T> Send for ThinBox<T>
where T: Send + ?Sized,

ThinBox<T> is Send if T is Send because the data is owned.

Auto implementors§

§

impl Send for APIError

§

impl Send for AcceptChannel

§

impl Send for AcceptChannelV2

§

impl Send for Amount

§

impl Send for AnchorChannelReserveContext

§

impl Send for AnchorDescriptor

§

impl Send for AnnouncementSignatures

§

impl Send for AsyncBolt12OfferContext

§

impl Send for AsyncPaymentsContext

§

impl Send for AsyncPaymentsMessage

§

impl Send for AsyncReceiveOfferCache

§

impl Send for AttributionData

§

impl Send for Balance

§

impl Send for BalanceSource

§

impl Send for BestBlock

§

impl Send for BigSize

§

impl Send for BlindedFailure

§

impl Send for BlindedForward

§

impl Send for BlindedHop

§

impl Send for BlindedMessagePath

§

impl Send for BlindedPayInfo

§

impl Send for BlindedPaymentPath

§

impl Send for BlindedTail

§

impl Send for Bolt11InvoiceParameters

§

impl Send for Bolt11PaymentError

§

impl Send for Bolt12Invoice

§

impl Send for Bolt12OfferContext

§

impl Send for Bolt12ParseError

§

impl Send for Bolt12PaymentError

§

impl Send for Bolt12RefundContext

§

impl Send for Bolt12SemanticError

§

impl Send for BuiltCommitmentTransaction

§

impl Send for BumpTransactionEvent

§

impl Send for ChainParameters

§

impl Send for ChannelAnnouncement

§

impl Send for ChannelConfig

§

impl Send for ChannelConfigOverrides

§

impl Send for ChannelConfigUpdate

§

impl Send for ChannelCounterparty

§

impl Send for ChannelDerivationParameters

§

impl Send for ChannelDetails

§

impl Send for ChannelHandshakeConfig

§

impl Send for ChannelHandshakeConfigUpdate

§

impl Send for ChannelHandshakeLimits

§

impl Send for ChannelId

§

impl Send for ChannelInfo

§

impl Send for ChannelLiquidities

§

impl Send for ChannelMonitorUpdate

§

impl Send for ChannelMonitorUpdateStatus

§

impl Send for ChannelParameters

§

impl Send for ChannelPublicKeys

§

impl Send for ChannelReady

§

impl Send for ChannelReestablish

§

impl Send for ChannelShutdownState

§

impl Send for ChannelTransactionParameters

§

impl Send for ChannelUpdate

§

impl Send for ChannelUpdateInfo

§

impl Send for ChannelUsage

§

impl Send for ClaimId

§

impl Send for ClaimedHTLC

§

impl Send for ClosingComplete

§

impl Send for ClosingSig

§

impl Send for ClosingSigned

§

impl Send for ClosingSignedFeeRange

§

impl Send for ClosingTransaction

§

impl Send for ClosureReason

§

impl Send for CoinSelection

§

impl Send for CollectionLength

§

impl Send for CommitmentSigned

§

impl Send for CommitmentTransaction

§

impl Send for CommitmentUpdate

§

impl Send for CommonAcceptChannelFields

§

impl Send for CommonOpenChannelFields

§

impl Send for Condvar

§

impl Send for ConfirmationTarget

§

impl Send for CounterpartyChannelTransactionParameters

§

impl Send for CounterpartyCommitmentSecrets

§

impl Send for CounterpartyForwardingInfo

§

impl Send for CurrencyCode

§

impl Send for CurrencyCodeError

§

impl Send for DNSResolverContext

§

impl Send for DNSResolverMessage

§

impl Send for DNSSECProof

§

impl Send for DNSSECQuery

§

impl Send for DecodeError

§

impl Send for DecryptedOurPeerStorage

§

impl Send for DefaultHashBuilder

§

impl Send for DelayedPaymentBasepoint

§

impl Send for DelayedPaymentKey

§

impl Send for DelayedPaymentOutputDescriptor

§

impl Send for DerivedMetadata

§

impl Send for DerivedSigningPubkey

§

impl Send for Destination

§

impl Send for Direction

§

impl Send for EffectiveCapacity

§

impl Send for EmptyNodeIdLookUp

§

impl Send for EncryptedOurPeerStorage

§

impl Send for ErroneousField

§

impl Send for Error

§

impl Send for ErrorAction

§

impl Send for ErrorKind

§

impl Send for ErrorMessage

§

impl Send for ErroringMessageHandler

§

impl Send for Event

§

impl Send for ExpandedKey

§

impl Send for ExplicitMetadata

§

impl Send for ExplicitSigningPubkey

§

impl Send for FailureCode

§

impl Send for FinalOnionHopData

§

impl Send for FixedPenaltyScorer

§

impl Send for ForwardTlvs

§

impl Send for FundingCreated

§

impl Send for FundingInfo

§

impl Send for FundingLocked

§

impl Send for FundingLockedFlags

§

impl Send for FundingSigned

§

impl Send for FundingTxInput

§

impl Send for Future

§

impl Send for GossipTimestampFilter

§

impl Send for HTLCClaim

§

impl Send for HTLCDescriptor

§

impl Send for HTLCHandlingFailureReason

§

impl Send for HTLCHandlingFailureType

§

impl Send for HTLCOutputInCommitment

§

impl Send for HTLCUpdate

§

impl Send for HeldHtlcAvailable

§

impl Send for HeldHtlcReplyPath

§

impl Send for HolderCommitmentTransaction

§

impl Send for HolderCommitmentTransactionBalance

§

impl Send for Hostname

§

impl Send for HtlcBasepoint

§

impl Send for HtlcKey

§

impl Send for HumanReadableName

§

impl Send for IgnoringMessageHandler

§

impl Send for InFlightHtlcs

§

impl Send for InMemorySigner

§

impl Send for InboundChannelFunds

§

impl Send for InboundHTLCDetails

§

impl Send for InboundHTLCErr

§

impl Send for InboundHTLCStateDetails

§

impl Send for Init

§

impl Send for Input

§

impl Send for Instant

§

impl Send for InterceptId

§

impl Send for IntroductionNode

§

impl Send for InvalidShutdownScript

§

impl Send for InvoiceError

§

impl Send for InvoiceRequest

§

impl Send for InvoiceRequestFields

§

impl Send for InvreqResponseInstructions

§

impl Send for KeysManager

§

impl Send for LengthCalculatingWriter

§

impl Send for Level

§

impl Send for LightningError

§

impl Send for LocalHTLCFailureReason

§

impl Send for MaxDustHTLCExposure

§

impl Send for MessageContext

§

impl Send for MessageForwardNode

§

impl Send for MessageSendEvent

§

impl Send for MessageSendInstructions

§

impl Send for MonitorEvent

§

impl Send for MonitorName

§

impl Send for NetworkUpdate

§

impl Send for NextFunding

§

impl Send for NextFundingFlag

§

impl Send for NextMessageHop

§

impl Send for NodeAlias

§

impl Send for NodeAnnouncement

§

impl Send for NodeAnnouncementDetails

§

impl Send for NodeAnnouncementInfo

§

impl Send for NodeId

§

impl Send for NodeInfo

§

impl Send for Nonce

§

impl Send for Notifier

§

impl Send for NullMessageRouter

§

impl Send for OMNameResolver

§

impl Send for Offer

§

impl Send for OfferFromHrn

§

impl Send for OfferId

§

impl Send for OfferPaths

§

impl Send for OfferPathsRequest

§

impl Send for OffersContext

§

impl Send for OffersMessage

§

impl Send for OnionMessage

§

impl Send for OnionMessagePath

§

impl Send for OnionPacket

§

impl Send for OpenChannel

§

impl Send for OpenChannelV2

§

impl Send for OptionalOfferPaymentParams

§

impl Send for OutPoint

§

impl Send for OutboundHTLCDetails

§

impl Send for OutboundHTLCStateDetails

§

impl Send for OutputSpendStatus

§

impl Send for Packet

§

impl Send for PaidBolt12Invoice

§

impl Send for Path

§

impl Send for PathFailure

§

impl Send for Payee

§

impl Send for PaymentConstraints

§

impl Send for PaymentContext

§

impl Send for PaymentFailureReason

§

impl Send for PaymentForwardNode

§

impl Send for PaymentId

§

impl Send for PaymentParameters

§

impl Send for PaymentPurpose

§

impl Send for PaymentRelay

§

impl Send for PeerDetails

§

impl Send for PeerHandleError

§

impl Send for PeerStorage

§

impl Send for PeerStorageKey

§

impl Send for PeerStorageRetrieval

§

impl Send for PendingHTLCInfo

§

impl Send for PendingHTLCRouting

§

impl Send for PhantomKeysManager

§

impl Send for PhantomRouteHints

§

impl Send for Ping

§

impl Send for Pong

§

impl Send for ProbabilisticScoringDecayParameters

§

impl Send for ProbabilisticScoringFeeParameters

§

impl Send for ProbeSendFailure

§

impl Send for Quantity

§

impl Send for QueryChannelRange

§

impl Send for QueryShortChannelIds

§

impl Send for RandomBytes

§

impl Send for RandomState

§

impl Send for ReceiveAuthKey

§

impl Send for ReceiveTlvs

§

impl Send for RecentPaymentDetails

§

impl Send for Recipient

§

impl Send for RecipientOnionFields

§

impl Send for Refund

§

impl Send for ReleaseHeldHtlc

§

impl Send for ReplayEvent

§

impl Send for ReplyChannelRange

§

impl Send for ReplyShortChannelIdsEnd

§

impl Send for Responder

§

impl Send for ResponseInstruction

§

impl Send for Retry

§

impl Send for RetryableSendFailure

§

impl Send for RevocationBasepoint

§

impl Send for RevocationKey

§

impl Send for RevokeAndACK

§

impl Send for Route

§

impl Send for RouteHint

§

impl Send for RouteHintHop

§

impl Send for RouteHop

§

impl Send for RouteParameters

§

impl Send for RouteParametersConfig

§

impl Send for RoutingFees

§

impl Send for SendError

§

impl Send for SendSuccess

§

impl Send for ServeStaticInvoice

§

impl Send for ShortChannelIdError

§

impl Send for Shutdown

§

impl Send for ShutdownScript

§

impl Send for SignError

§

impl Send for Sink

§

impl Send for Sleeper

§

impl Send for SocketAddress

§

impl Send for SocketAddressParseError

§

impl Send for SpendableOutputDescriptor

§

impl Send for SpendingDelay

§

impl Send for SpliceAck

§

impl Send for SpliceContribution

§

impl Send for SpliceInit

§

impl Send for SpliceLocked

§

impl Send for StartBatch

§

impl Send for StaticInvoice

§

impl Send for StaticInvoicePersisted

§

impl Send for StaticPaymentOutputDescriptor

§

impl Send for Stfu

§

impl Send for String

§

impl Send for TaggedHash

§

impl Send for TrackedSpendableOutput

§

impl Send for TrampolineForwardTlvs

§

impl Send for TrampolineHop

§

impl Send for TrampolineOnionPacket

§

impl Send for TxAbort

§

impl Send for TxAckRbf

§

impl Send for TxAddInput

§

impl Send for TxAddOutput

§

impl Send for TxComplete

§

impl Send for TxCreationKeys

§

impl Send for TxInitRbf

§

impl Send for TxRemoveInput

§

impl Send for TxRemoveOutput

§

impl Send for TxSignatures

§

impl Send for UnauthenticatedReceiveTlvs

§

impl Send for UnsignedBolt12Invoice

§

impl Send for UnsignedChannelAnnouncement

§

impl Send for UnsignedChannelUpdate

§

impl Send for UnsignedInvoiceRequest

§

impl Send for UnsignedNodeAnnouncement

§

impl Send for UnsignedStaticInvoice

§

impl Send for UpdateAddHTLC

§

impl Send for UpdateFailHTLC

§

impl Send for UpdateFailMalformedHTLC

§

impl Send for UpdateFee

§

impl Send for UpdateFulfillHTLC

§

impl Send for UpdateName

§

impl Send for UserConfig

§

impl Send for Utxo

§

impl Send for UtxoFuture

§

impl Send for UtxoLookupError

§

impl Send for UtxoResult

§

impl Send for VerifiedInvoiceRequest

§

impl Send for WarningMessage

§

impl Send for WatchedOutput

§

impl<'a, 'b, K, Q, V, S, A> Send for EntryRef<'a, 'b, K, Q, V, S, A>
where OccupiedEntryRef<'a, 'b, K, Q, V, S, A>: Send, VacantEntryRef<'a, 'b, K, Q, V, S, A>: Send, Q: ?Sized,

§

impl<'a, 'b, K, Q, V, S, A> Send for VacantEntryRef<'a, 'b, K, Q, V, S, A>
where KeyOrRef<'b, K, Q>: Send, &'a mut HashMap<K, V, S, A>: Send, Q: ?Sized,

§

impl<'a, 'b, T> Send for InvoiceRequestBuilder<'a, 'b, T>
where Option<&'b Secp256k1<T>>: Send,

§

impl<'a, ChannelSigner> !Send for LockedChannelMonitor<'a, ChannelSigner>

§

impl<'a, I, A> Send for Splice<'a, I, A>
where Drain<'a, <I as Iterator>::Item, A>: Send, I: Send,

§

impl<'a, K, V, A> Send for lightning::util::hash_tables::hash_map::Drain<'a, K, V, A>
where RawDrain<'a, (K, V), A>: Send,

§

impl<'a, K, V, F, A> Send for DrainFilter<'a, K, V, F, A>
where F: Send, DrainFilterInner<'a, K, V, A>: Send,

§

impl<'a, K, V, S, A> Send for lightning::util::hash_tables::hash_map::Entry<'a, K, V, S, A>
where OccupiedEntry<'a, K, V, S, A>: Send, VacantEntry<'a, K, V, S, A>: Send,

§

impl<'a, K, V, S, A> Send for OccupiedError<'a, K, V, S, A>
where OccupiedEntry<'a, K, V, S, A>: Send, V: Send,

§

impl<'a, K, V, S, A> Send for RawEntryBuilder<'a, K, V, S, A>
where &'a HashMap<K, V, S, A>: Send,

§

impl<'a, K, V, S, A> Send for RawEntryBuilderMut<'a, K, V, S, A>
where &'a mut HashMap<K, V, S, A>: Send,

§

impl<'a, K, V, S, A> Send for RawEntryMut<'a, K, V, S, A>
where RawOccupiedEntryMut<'a, K, V, S, A>: Send, RawVacantEntryMut<'a, K, V, S, A>: Send,

§

impl<'a, K, V, S, A> Send for RawVacantEntryMut<'a, K, V, S, A>
where &'a mut RawTable<(K, V), A>: Send, &'a S: Send,

§

impl<'a, K, V, S, A> Send for lightning::util::hash_tables::hash_map::VacantEntry<'a, K, V, S, A>
where K: Send, &'a mut HashMap<K, V, S, A>: Send,

§

impl<'a, K, V> Send for lightning::util::indexed_map::Entry<'a, K, V>
where VacantEntry<'a, K, V>: Send, OccupiedEntry<'a, K, V>: Send,

§

impl<'a, K, V> Send for lightning::util::hash_tables::hash_map::Iter<'a, K, V>
where RawIter<(K, V)>: Send, PhantomData<(&'a K, &'a V)>: Send,

§

impl<'a, K, V> Send for Keys<'a, K, V>
where Iter<'a, K, V>: Send,

§

impl<'a, K, V> Send for lightning::util::indexed_map::OccupiedEntry<'a, K, V>
where OccupiedEntry<'a, K, V, RandomState>: Send, &'a mut Vec<K>: Send,

§

impl<'a, K, V> Send for Range<'a, K, V>
where Iter<'a, K>: Send, &'a HashMap<K, V, RandomState>: Send,

§

impl<'a, K, V> Send for lightning::util::indexed_map::VacantEntry<'a, K, V>
where VacantEntry<'a, K, V, RandomState>: Send, K: Send, &'a mut Vec<K>: Send,

§

impl<'a, K, V> Send for Values<'a, K, V>
where Iter<'a, K, V>: Send,

§

impl<'a, K, V> Send for ValuesMut<'a, K, V>
where IterMut<'a, K, V>: Send,

§

impl<'a, L> Send for WithContext<'a, L>
where &'a L: Send,

§

impl<'a, M, T, ES, NS, SP, F, R, MR, L> Send for ChannelManagerReadArgs<'a, M, T, ES, NS, SP, F, R, MR, L>
where ES: Send, NS: Send, SP: Send, F: Send, M: Send, T: Send, R: Send, MR: Send, L: Send, HashMap<ChannelId, &'a ChannelMonitor<<<SP as Deref>::Target as SignerProvider>::EcdsaSigner>, RandomState>: Send,

§

impl<'a, M, T> Send for OfferBuilder<'a, M, T>
where PhantomData<M>: Send, Option<&'a Secp256k1<T>>: Send,

§

impl<'a, R> Send for FixedLengthReader<'a, R>
where &'a mut R: Send,

§

impl<'a, R> Send for ReadTrackingReader<'a, R>
where &'a mut R: Send,

§

impl<'a, R> Send for Take<'a, R>
where &'a mut R: Send, R: ?Sized,

§

impl<'a, S> Send for InvoiceBuilder<'a, S>
where S: Send,

§

impl<'a, S> Send for ScorerAccountingForInFlightHtlcs<'a, S>
where S: Send,

§

impl<'a, T, A> Send for PeekMut<'a, T, A>
where &'a mut Vec<T, A>: Send,

§

impl<'a, T, F, A> Send for ExtractIf<'a, T, F, A>
where &'a mut Vec<T, A>: Send, F: Send,

§

impl<'a, T> Send for RefundBuilder<'a, T>
where Option<&'a Secp256k1<T>>: Send,

§

impl<'a> !Send for ReadOnlyNetworkGraph<'a>

§

impl<'a> !Send for Record<'a>

§

impl<'a> Send for BlindedPathCandidate<'a>

§

impl<'a> Send for CandidateRouteHop<'a>

§

impl<'a> Send for DirectedChannelInfo<'a>

§

impl<'a> Send for DirectedChannelTransactionParameters<'a>

§

impl<'a> Send for FirstHopCandidate<'a>

§

impl<'a> Send for OneHopBlindedPathCandidate<'a>

§

impl<'a> Send for PrivateHopCandidate<'a>

§

impl<'a> Send for PublicHopCandidate<'a>

§

impl<'a> Send for StaticInvoiceBuilder<'a>

§

impl<'a> Send for TrustedClosingTransaction<'a>

§

impl<'a> Send for TrustedCommitmentTransaction<'a>

§

impl<'a> Send for UnsignedGossipMessage<'a>

§

impl<B, C, SP, L> Send for BumpTransactionEventHandler<B, C, SP, L>
where B: Send, C: Send, SP: Send, L: Send,

§

impl<B, C, SP, L> Send for BumpTransactionEventHandlerSync<B, C, SP, L>
where BumpTransactionEventHandler<B, CoinSelectionSourceSyncWrapper<C>, SP, L>: Send,

§

impl<B, D, E, F, K, L, O> Send for OutputSweeper<B, D, E, F, K, L, O>
where B: Send, E: Send, Option<F>: Send, O: Send, D: Send, K: Send, L: Send,

§

impl<B, D, E, F, K, L, O> Send for OutputSweeperSync<B, D, E, F, K, L, O>
where OutputSweeper<B, ChangeDestinationSourceSyncWrapper<D>, E, F, KVStoreSyncWrapper<K>, L, O>: Send,

§

impl<CM, RM, OM, CustomM, SM> Send for MessageHandler<CM, RM, OM, CustomM, SM>
where CM: Send, RM: Send, OM: Send, CustomM: Send, SM: Send,

§

impl<ChannelSigner, C, T, F, L, P, ES> Send for ChainMonitor<ChannelSigner, C, T, F, L, P, ES>
where RwLock<HashMap<ChannelId, MonitorHolder<ChannelSigner>, RandomState>>: Send, Option<C>: Send, T: Send, L: Send, F: Send, P: Send, ES: Send,

§

impl<D> Send for ReadError<D>
where D: Send,

§

impl<Descriptor, CM, RM, OM, L, CMH, NS, SM> Send for PeerManager<Descriptor, CM, RM, OM, L, CMH, NS, SM>
where MessageHandler<CM, RM, OM, CMH, SM>: Send, FairRwLock<HashMap<Descriptor, Mutex<Peer>, RandomState>>: Send, Mutex<HashMap<PublicKey, Descriptor, RandomState>>: Send, NS: Send, L: Send,

§

impl<ES, NS, L, NL, MR, OMH, APH, DRH, CMH> Send for OnionMessenger<ES, NS, L, NL, MR, OMH, APH, DRH, CMH>
where ES: Send, NS: Send, L: Send, NL: Send, MR: Send, OMH: Send, APH: Send, DRH: Send, CMH: Send,

§

impl<G, L, ES, S, SP, Sc> Send for DefaultRouter<G, L, ES, S, SP, Sc>
where G: Send, L: Send, ES: Send, S: Send, SP: Send,

§

impl<G, L, ES> Send for DefaultMessageRouter<G, L, ES>
where G: Send, ES: Send,

§

impl<G, L, ES> Send for NodeIdMessageRouter<G, L, ES>
where G: Send, ES: Send,

§

impl<G, L> Send for CombinedScorer<G, L>

§

impl<G, L> Send for ProbabilisticScorer<G, L>
where G: Send, L: Send,

§

impl<G, U, L> Send for P2PGossipSync<G, U, L>
where G: Send, RwLock<Option<U>>: Send, L: Send,

§

impl<K, L, ES, SP, BI, FE> Send for MonitorUpdatingPersister<K, L, ES, SP, BI, FE>
where <SP as Deref>::Target: Sized, <ES as Deref>::Target: Sized, MonitorUpdatingPersisterAsync<KVStoreSyncWrapper<K>, PanicingSpawner, L, ES, SP, BI, FE>: Send,

§

impl<K, S, L, ES, SP, BI, FE> Send for AsyncPersister<K, S, L, ES, SP, BI, FE>
where <SP as Deref>::Target: Sized, <ES as Deref>::Target: Sized, MonitorUpdatingPersisterAsync<K, S, L, ES, SP, BI, FE>: Send,

§

impl<K, S, L, ES, SP, BI, FE> Send for MonitorUpdatingPersisterAsync<K, S, L, ES, SP, BI, FE>
where <SP as Deref>::Target: Sized, <ES as Deref>::Target: Sized, Arc<MonitorUpdatingPersisterAsyncInner<K, S, L, ES, SP, BI, FE>>: Send,

§

impl<K, V, A> Send for lightning::util::hash_tables::hash_map::IntoIter<K, V, A>
where RawIntoIter<(K, V), A>: Send,

§

impl<K, V, A> Send for IntoKeys<K, V, A>
where IntoIter<K, V, A>: Send,

§

impl<K, V, A> Send for IntoValues<K, V, A>
where IntoIter<K, V, A>: Send,

§

impl<K, V, S, A> Send for HashMap<K, V, S, A>
where S: Send, RawTable<(K, V), A>: Send,

§

impl<K, V> Send for IndexedMap<K, V>
where HashMap<K, V, RandomState>: Send, Vec<K>: Send,

§

impl<K> Send for KVStoreSyncWrapper<K>
where K: Send,

§

impl<L> Send for NetworkGraph<L>
where L: Send,

§

impl<M, T, ES, NS, SP, F, R, MR, L> Send for ChannelManager<M, T, ES, NS, SP, F, R, MR, L>
where LowerBoundedFeeEstimator<F>: Send, M: Send, T: Send, R: Send, OffersMessageFlow<MR, L>: Send, FairRwLock<HashMap<PublicKey, Mutex<PeerState<SP>>, RandomState>>: Send, ES: Send, NS: Send, SP: Send, L: Send,

§

impl<MR, L> Send for OffersMessageFlow<MR, L>
where MR: Send, L: Send,

§

impl<Signer> Send for ChannelMonitor<Signer>
where Mutex<ChannelMonitorImpl<Signer>>: Send,

§

impl<T, A> Send for Box<T, A>
where Unique<T>: Send, A: Send, T: ?Sized,

§

impl<T, A> Send for Vec<T, A>
where RawVec<T, A>: Send,

§

impl<T, A> Send for VecDeque<T, A>
where RawVec<T, A>: Send,

§

impl<T> Send for lightning::io::Cursor<T>
where T: Send,

§

impl<T> Send for ParsedOnionMessageContents<T>
where T: Send,

§

impl<T> Send for PeeledOnion<T>
where T: Send,

§

impl<T> Send for RequiredWrapper<T>
where Option<T>: Send,

§

impl<T> Send for UpgradableRequired<T>
where Option<T>: Send,

§

impl<T> Send for WithoutLength<T>
where T: Send,

§

impl<W, L> Send for Wallet<W, L>

§

impl<W, L> Send for WalletSync<W, L>
where Wallet<WalletSourceSyncWrapper<W>, L>: Send,