breez_sdk_core::lightning::util::ser

Trait ReadableArgs

pub trait ReadableArgs<P>: Sized {
    // Required method
    fn read<R>(reader: &mut R, params: P) -> Result<Self, DecodeError>
       where R: Read;
}
Expand description

A trait that various higher-level LDK types implement allowing them to be read in from a Read given some additional set of arguments which is required to deserialize.

This is not exported to bindings users as we only export serialization to/from byte arrays instead

Required Methods§

fn read<R>(reader: &mut R, params: P) -> Result<Self, DecodeError>
where R: Read,

Reads a Self in from the given Read.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl<'a, 'b, ES, SP> ReadableArgs<(&'a ES, &'b SP)> for (BlockHash, ChannelMonitor<<SP as SignerProvider>::Signer>)

§

fn read<R>( reader: &mut R, args: (&'a ES, &'b SP), ) -> Result<(BlockHash, ChannelMonitor<<SP as SignerProvider>::Signer>), DecodeError>
where R: Read,

§

impl<'a, M, T, ES, NS, SP, F, R, L> ReadableArgs<ChannelManagerReadArgs<'a, M, T, ES, NS, SP, F, R, L>> for (BlockHash, ChannelManager<M, T, ES, NS, SP, F, R, L>)
where M: Deref, T: Deref, ES: Deref, NS: Deref, SP: Deref, F: Deref, R: Deref, L: Deref, <M as Deref>::Target: Watch<<<SP as Deref>::Target as SignerProvider>::Signer>, <T as Deref>::Target: BroadcasterInterface, <ES as Deref>::Target: EntropySource, <NS as Deref>::Target: NodeSigner, <SP as Deref>::Target: SignerProvider, <F as Deref>::Target: FeeEstimator, <R as Deref>::Target: Router, <L as Deref>::Target: Logger,

§

fn read<Reader>( reader: &mut Reader, args: ChannelManagerReadArgs<'a, M, T, ES, NS, SP, F, R, L>, ) -> Result<(BlockHash, ChannelManager<M, T, ES, NS, SP, F, R, L>), DecodeError>
where Reader: Read,

§

impl<'a, M, T, ES, NS, SP, F, R, L> ReadableArgs<ChannelManagerReadArgs<'a, M, T, ES, NS, SP, F, R, L>> for (BlockHash, Arc<ChannelManager<M, T, ES, NS, SP, F, R, L>>)
where M: Deref, T: Deref, ES: Deref, NS: Deref, SP: Deref, F: Deref, R: Deref, L: Deref, <M as Deref>::Target: Watch<<<SP as Deref>::Target as SignerProvider>::Signer>, <T as Deref>::Target: BroadcasterInterface, <ES as Deref>::Target: EntropySource, <NS as Deref>::Target: NodeSigner, <SP as Deref>::Target: SignerProvider, <F as Deref>::Target: FeeEstimator, <R as Deref>::Target: Router, <L as Deref>::Target: Logger,

§

fn read<Reader>( reader: &mut Reader, args: ChannelManagerReadArgs<'a, M, T, ES, NS, SP, F, R, L>, ) -> Result<(BlockHash, Arc<ChannelManager<M, T, ES, NS, SP, F, R, L>>), DecodeError>
where Reader: Read,

Implementors§

§

impl ReadableArgs<u32> for PaymentParameters

§

impl ReadableArgs<u64> for FixedPenaltyScorer

§

impl<A, T> ReadableArgs<A> for RequiredWrapper<T>
where T: ReadableArgs<A>,

§

impl<ES> ReadableArgs<ES> for InMemorySigner
where ES: Deref, <ES as Deref>::Target: EntropySource,

§

impl<G, L, T> ReadableArgs<(ProbabilisticScoringDecayParameters, G, L)> for ProbabilisticScorerUsingTime<G, L, T>
where G: Deref<Target = NetworkGraph<L>>, L: Deref, T: Time, <L as Deref>::Target: Logger,

§

impl<L> ReadableArgs<(u64, &L)> for OffersMessage
where L: Logger + ?Sized,

§

impl<L> ReadableArgs<L> for NetworkGraph<L>
where L: Deref, <L as Deref>::Target: Logger,