Make `OffersMessage` and offers errors `Clone`able
authorMatt Corallo <git@bluematt.me>
Wed, 19 Jul 2023 20:22:41 +0000 (20:22 +0000)
committerMatt Corallo <git@bluematt.me>
Thu, 20 Jul 2023 21:43:52 +0000 (21:43 +0000)
lightning/src/offers/parse.rs
lightning/src/onion_message/offers.rs

index b722499f251ad5213e1d27bbdb613da2c6aba2f7..e9477086ee981358aea419416e676e4b682c1fc1 100644 (file)
@@ -116,7 +116,7 @@ impl<T: SeekReadable> TryFrom<Vec<u8>> for ParsedMessage<T> {
 }
 
 /// Error when parsing a bech32 encoded message using [`str::parse`].
-#[derive(Debug, PartialEq)]
+#[derive(Clone, Debug, PartialEq)]
 pub enum Bolt12ParseError {
        /// The bech32 encoding does not conform to the BOLT 12 requirements for continuing messages
        /// across multiple parts (i.e., '+' followed by whitespace).
@@ -135,7 +135,7 @@ pub enum Bolt12ParseError {
 }
 
 /// Error when interpreting a TLV stream as a specific type.
-#[derive(Debug, PartialEq)]
+#[derive(Clone, Debug, PartialEq)]
 pub enum Bolt12SemanticError {
        /// The current [`std::time::SystemTime`] is past the offer or invoice's expiration.
        AlreadyExpired,
index 9a1f59b84592eac465b718e8ee89c6037c24423e..de373bda1bce81b104f1cd616be1ea4fb3e0b756 100644 (file)
@@ -38,7 +38,7 @@ pub trait OffersMessageHandler {
 /// Possible BOLT 12 Offers messages sent and received via an [`OnionMessage`].
 ///
 /// [`OnionMessage`]: crate::ln::msgs::OnionMessage
-#[derive(Debug)]
+#[derive(Clone, Debug)]
 pub enum OffersMessage {
        /// A request for a [`Bolt12Invoice`] for a particular [`Offer`].
        ///