X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-custom-message%2Fsrc%2Flib.rs;h=a0a70c9de03ff26dfd499bb7b8cb1dc6eeee8dbe;hb=a85d5b14444f3ef2dab994b404f4fb37635a3824;hp=a6e43978d47ded2e1c9efd58c50fe234d7a02564;hpb=d0b8f455fe86d3e55231d35d35dd96693abe2049;p=rust-lightning diff --git a/lightning-custom-message/src/lib.rs b/lightning-custom-message/src/lib.rs index a6e43978..a0a70c9d 100644 --- a/lightning-custom-message/src/lib.rs +++ b/lightning-custom-message/src/lib.rs @@ -20,6 +20,7 @@ //! # use bitcoin::secp256k1::PublicKey; //! # use lightning::io; //! # use lightning::ln::msgs::{DecodeError, LightningError}; +//! # use lightning::ln::features::{InitFeatures, NodeFeatures}; //! use lightning::ln::peer_handler::CustomMessageHandler; //! use lightning::ln::wire::{CustomMessageReader, self}; //! use lightning::util::ser::Writeable; @@ -66,6 +67,12 @@ //! # fn get_and_clear_pending_msg(&self) -> Vec<(PublicKey, Self::CustomMessage)> { //! # unimplemented!() //! # } +//! # fn provided_node_features(&self) -> NodeFeatures { +//! # unimplemented!() +//! # } +//! # fn provided_init_features(&self, _their_node_id: &PublicKey) -> InitFeatures { +//! # unimplemented!() +//! # } //! } //! //! #[derive(Debug)] @@ -106,6 +113,12 @@ //! # fn get_and_clear_pending_msg(&self) -> Vec<(PublicKey, Self::CustomMessage)> { //! # unimplemented!() //! # } +//! # fn provided_node_features(&self) -> NodeFeatures { +//! # unimplemented!() +//! # } +//! # fn provided_init_features(&self, _their_node_id: &PublicKey) -> InitFeatures { +//! # unimplemented!() +//! # } //! } //! //! #[derive(Debug)] @@ -146,6 +159,12 @@ //! # fn get_and_clear_pending_msg(&self) -> Vec<(PublicKey, Self::CustomMessage)> { //! # unimplemented!() //! # } +//! # fn provided_node_features(&self) -> NodeFeatures { +//! # unimplemented!() +//! # } +//! # fn provided_init_features(&self, _their_node_id: &PublicKey) -> InitFeatures { +//! # unimplemented!() +//! # } //! } //! //! # fn main() { @@ -268,6 +287,22 @@ macro_rules! composite_custom_message_handler { )* .collect() } + + fn provided_node_features(&self) -> $crate::lightning::ln::features::NodeFeatures { + $crate::lightning::ln::features::NodeFeatures::empty() + $( + | self.$field.provided_node_features() + )* + } + + fn provided_init_features( + &self, their_node_id: &$crate::bitcoin::secp256k1::PublicKey + ) -> $crate::lightning::ln::features::InitFeatures { + $crate::lightning::ln::features::InitFeatures::empty() + $( + | self.$field.provided_init_features(their_node_id) + )* + } } impl $crate::lightning::ln::wire::CustomMessageReader for $handler {