pub trait Writeable {
// Required method
fn write<W: Writer>(&self, writer: &mut W) -> Result<(), Error>;
// Provided methods
fn encode(&self) -> Vec<u8> ⓘ { ... }
fn serialized_length(&self) -> usize { ... }
}
Expand description
A trait that various LDK types implement allowing them to be written out to a Writer
.
This is not exported to bindings users as we only export serialization to/from byte arrays instead
Required Methods§
Provided Methods§
sourcefn serialized_length(&self) -> usize
fn serialized_length(&self) -> usize
Gets the length of this object after it has been serialized. This can be overridden to optimize cases where we prepend an object with its length.
Implementations on Foreign Types§
source§impl Writeable for Vec<&BlindedTail>
impl Writeable for Vec<&BlindedTail>
source§impl Writeable for Infallible
impl Writeable for Infallible
source§impl Writeable for Vec<ChannelMonitorUpdate>
impl Writeable for Vec<ChannelMonitorUpdate>
source§impl Writeable for Duration
impl Writeable for Duration
This is not exported to bindings users as Duration
s are simply mapped as ints.
source§impl Writeable for Transaction
impl Writeable for Transaction
Implementors§
impl Writeable for MonitorEvent
impl Writeable for ClosureReason
impl Writeable for Event
impl Writeable for HTLCDestination
impl Writeable for PathFailure
impl Writeable for PaymentFailureReason
impl Writeable for PaymentPurpose
impl Writeable for ChannelShutdownState
impl Writeable for NetAddress
impl Writeable for OffersMessage
impl Writeable for NetworkUpdate
impl Writeable for SpendableOutputDescriptor
impl Writeable for MaxDustHTLCExposure
impl Writeable for APIError
impl Writeable for BlindedHop
impl Writeable for BlindedPath
impl Writeable for ChannelMonitorUpdate
impl Writeable for HTLCUpdate
impl Writeable for ClaimId
impl Writeable for lightning::chain::transaction::OutPoint
impl Writeable for BuiltCommitmentTransaction
impl Writeable for ChannelPublicKeys
impl Writeable for ChannelTransactionParameters
impl Writeable for CommitmentTransaction
impl Writeable for CounterpartyChannelTransactionParameters
impl Writeable for CounterpartyCommitmentSecrets
impl Writeable for HTLCOutputInCommitment
impl Writeable for HolderCommitmentTransaction
impl Writeable for TxCreationKeys
impl Writeable for ChannelCounterparty
impl Writeable for ChannelDetails
impl Writeable for CounterpartyForwardingInfo
impl Writeable for InterceptId
impl Writeable for PaymentId
impl Writeable for PhantomRouteHints
impl Writeable for RecipientOnionFields
impl Writeable for AcceptChannel
impl Writeable for AcceptChannelV2
impl Writeable for AnnouncementSignatures
impl Writeable for ChannelAnnouncement
impl Writeable for ChannelReady
impl Writeable for ChannelReestablish
impl Writeable for ChannelUpdate
impl Writeable for ClosingSigned
impl Writeable for ClosingSignedFeeRange
impl Writeable for CommitmentSigned
impl Writeable for ErrorMessage
impl Writeable for FundingCreated
impl Writeable for FundingSigned
impl Writeable for GossipTimestampFilter
impl Writeable for Init
impl Writeable for NodeAnnouncement
impl Writeable for OnionMessage
impl Writeable for OpenChannel
impl Writeable for OpenChannelV2
impl Writeable for Ping
impl Writeable for Pong
impl Writeable for QueryChannelRange
impl Writeable for QueryShortChannelIds
impl Writeable for ReplyChannelRange
impl Writeable for ReplyShortChannelIdsEnd
impl Writeable for RevokeAndACK
impl Writeable for Shutdown
impl Writeable for TxAbort
impl Writeable for TxAckRbf
impl Writeable for TxAddInput
impl Writeable for TxAddOutput
impl Writeable for TxComplete
impl Writeable for TxInitRbf
impl Writeable for TxRemoveInput
impl Writeable for TxRemoveOutput
impl Writeable for TxSignatures
impl Writeable for UnsignedChannelAnnouncement
impl Writeable for UnsignedChannelUpdate
impl Writeable for UnsignedNodeAnnouncement
impl Writeable for UpdateAddHTLC
impl Writeable for UpdateFailHTLC
impl Writeable for UpdateFailMalformedHTLC
impl Writeable for UpdateFee
impl Writeable for UpdateFulfillHTLC
impl Writeable for WarningMessage
impl Writeable for ShutdownScript
impl Writeable for PaymentHash
impl Writeable for PaymentPreimage
impl Writeable for PaymentSecret
impl Writeable for BlindedPayInfo
impl Writeable for Bolt12Invoice
impl Writeable for InvoiceError
impl Writeable for InvoiceRequest
impl Writeable for Offer
impl Writeable for Refund
impl Writeable for ChannelInfo
impl Writeable for ChannelUpdateInfo
impl Writeable for NodeAlias
impl Writeable for NodeAnnouncementInfo
impl Writeable for NodeId
impl Writeable for NodeInfo
impl Writeable for RoutingFees
impl Writeable for BlindedTail
impl Writeable for InFlightHtlcs
impl Writeable for PaymentParameters
impl Writeable for Route
impl Writeable for RouteHint
impl Writeable for RouteHintHop
impl Writeable for RouteHop
impl Writeable for RouteParameters
impl Writeable for FixedPenaltyScorer
impl Writeable for DelayedPaymentOutputDescriptor
impl Writeable for InMemorySigner
impl Writeable for StaticPaymentOutputDescriptor
impl Writeable for ChannelConfig
impl Writeable for UntrustedString
impl Writeable for BigSize
impl Writeable for Hostname
impl Writeable for TransactionU16LenLimited
impl Writeable for WithoutLength<&UntrustedString>
impl Writeable for WithoutLength<&String>
impl Writeable for WithoutLength<&Script>
impl Writeable for BlindedHopFeatures
impl Writeable for Bolt11InvoiceFeatures
impl Writeable for Bolt12InvoiceFeatures
impl Writeable for ChannelFeatures
impl Writeable for ChannelTypeFeatures
impl Writeable for InitFeatures
impl Writeable for NodeFeatures
impl<'a> Writeable for UnsignedGossipMessage<'a>
impl<'a, T: Writeable> Writeable for WithoutLength<&'a Vec<T>>
impl<G: Deref<Target = NetworkGraph<L>>, L: Deref, T: Time> Writeable for ProbabilisticScorerUsingTime<G, L, T>where L::Target: Logger,
impl<L: Deref> Writeable for NetworkGraph<L>where L::Target: Logger,
impl<M: Deref, T: Deref, ES: Deref, NS: Deref, SP: Deref, F: Deref, R: Deref, L: Deref> Writeable for ChannelManager<M, T, ES, NS, SP, F, R, L>where M::Target: Watch<<SP::Target as SignerProvider>::Signer>, T::Target: BroadcasterInterface, ES::Target: EntropySource, NS::Target: NodeSigner, SP::Target: SignerProvider, F::Target: FeeEstimator, R::Target: Router, L::Target: Logger,
impl<Signer: WriteableEcdsaChannelSigner> Writeable for ChannelMonitor<Signer>
impl<T: CustomOnionMessageContents> Writeable for OnionMessageContents<T>
This is not exported to bindings users as methods on non-cloneable enums are not currently exportable