Update auto-generated bindings
authorMatt Corallo <git@bluematt.me>
Wed, 5 Jan 2022 06:43:58 +0000 (06:43 +0000)
committerMatt Corallo <git@bluematt.me>
Thu, 6 Jan 2022 03:56:51 +0000 (03:56 +0000)
34 files changed:
lightning-c-bindings/src/c_types/derived.rs
lightning-c-bindings/src/lib.rs
lightning-c-bindings/src/lightning/chain/chaininterface.rs
lightning-c-bindings/src/lightning/chain/chainmonitor.rs
lightning-c-bindings/src/lightning/chain/channelmonitor.rs
lightning-c-bindings/src/lightning/chain/keysinterface.rs
lightning-c-bindings/src/lightning/chain/mod.rs
lightning-c-bindings/src/lightning/chain/transaction.rs
lightning-c-bindings/src/lightning/ln/chan_utils.rs
lightning-c-bindings/src/lightning/ln/channelmanager.rs
lightning-c-bindings/src/lightning/ln/features.rs
lightning-c-bindings/src/lightning/ln/mod.rs
lightning-c-bindings/src/lightning/ln/msgs.rs
lightning-c-bindings/src/lightning/ln/peer_handler.rs
lightning-c-bindings/src/lightning/ln/script.rs
lightning-c-bindings/src/lightning/ln/wire.rs
lightning-c-bindings/src/lightning/mod.rs
lightning-c-bindings/src/lightning/routing/mod.rs
lightning-c-bindings/src/lightning/routing/network_graph.rs
lightning-c-bindings/src/lightning/routing/router.rs
lightning-c-bindings/src/lightning/routing/scoring.rs
lightning-c-bindings/src/lightning/util/config.rs
lightning-c-bindings/src/lightning/util/errors.rs
lightning-c-bindings/src/lightning/util/events.rs
lightning-c-bindings/src/lightning/util/logger.rs
lightning-c-bindings/src/lightning/util/message_signing.rs
lightning-c-bindings/src/lightning/util/mod.rs
lightning-c-bindings/src/lightning/util/ser.rs
lightning-c-bindings/src/lightning_background_processor.rs
lightning-c-bindings/src/lightning_invoice/constants.rs
lightning-c-bindings/src/lightning_invoice/mod.rs
lightning-c-bindings/src/lightning_invoice/payment.rs
lightning-c-bindings/src/lightning_invoice/utils.rs
lightning-c-bindings/src/lightning_persister.rs

index d2fd004df8ede7e7da902d7586135608462cd622..c8b0a5b94d2acee38f8dbb6c0961bd7a319088b8 100644 (file)
@@ -1,3 +1,12 @@
+
+use alloc::str::FromStr;
+use core::ffi::c_void;
+use core::convert::Infallible;
+use bitcoin::hashes::Hash;
+use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
+
 #[repr(C)]
 /// The contents of CResult_SecretKeyErrorZ
 pub union CResult_SecretKeyErrorZPtr {
@@ -64,11 +73,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::SecretKey, crate::c_types
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::SecretKey, crate::c_types::Secp256k1Error>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SecretKeyErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_SecretKeyErrorZPtr { err }
                };
                Self {
@@ -143,11 +152,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::PublicKey, crate::c_types
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::PublicKey, crate::c_types::Secp256k1Error>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PublicKeyErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PublicKeyErrorZPtr { err }
                };
                Self {
@@ -239,11 +248,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TxCreat
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TxCreationKeys, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TxCreationKeysDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_TxCreationKeysDecodeErrorZPtr { err }
                };
                Self {
@@ -335,11 +344,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Channel
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::ChannelPublicKeys, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelPublicKeysDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelPublicKeysDecodeErrorZPtr { err }
                };
                Self {
@@ -431,11 +440,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TxCreat
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TxCreationKeys, crate::c_types::Secp256k1Error>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TxCreationKeysErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_TxCreationKeysErrorZPtr { err }
                };
                Self {
@@ -564,11 +573,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::HTLCOut
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::HTLCOutputInCommitment, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_HTLCOutputInCommitmentDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_HTLCOutputInCommitmentDecodeErrorZPtr { err }
                };
                Self {
@@ -689,11 +698,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Counter
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::CounterpartyChannelTransactionParameters, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CounterpartyChannelTransactionParametersDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_CounterpartyChannelTransactionParametersDecodeErrorZPtr { err }
                };
                Self {
@@ -785,11 +794,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Channel
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::ChannelTransactionParameters, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelTransactionParametersDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelTransactionParametersDecodeErrorZPtr { err }
                };
                Self {
@@ -828,13 +837,13 @@ pub struct CVec_SignatureZ {
 impl CVec_SignatureZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::Signature> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::Signature] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::Signature>> for CVec_SignatureZ {
@@ -850,14 +859,14 @@ pub extern "C" fn CVec_SignatureZ_free(_res: CVec_SignatureZ) { }
 impl Drop for CVec_SignatureZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_SignatureZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -927,11 +936,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::HolderC
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::HolderCommitmentTransaction, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_HolderCommitmentTransactionDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_HolderCommitmentTransactionDecodeErrorZPtr { err }
                };
                Self {
@@ -1023,11 +1032,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::BuiltCo
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::BuiltCommitmentTransaction, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_BuiltCommitmentTransactionDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_BuiltCommitmentTransactionDecodeErrorZPtr { err }
                };
                Self {
@@ -1060,7 +1069,7 @@ pub union CResult_TrustedClosingTransactionNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning::ln::chan_utils::TrustedClosingTransaction,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_TrustedClosingTransactionNoneZ represents the result of a fallible operation,
@@ -1088,7 +1097,7 @@ pub extern "C" fn CResult_TrustedClosingTransactionNoneZ_ok(o: crate::lightning:
 pub extern "C" fn CResult_TrustedClosingTransactionNoneZ_err() -> CResult_TrustedClosingTransactionNoneZ {
        CResult_TrustedClosingTransactionNoneZ {
                contents: CResult_TrustedClosingTransactionNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -1115,12 +1124,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Trusted
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TrustedClosingTransaction, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TrustedClosingTransactionNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_TrustedClosingTransactionNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_TrustedClosingTransactionNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -1194,11 +1203,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Commitm
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::CommitmentTransaction, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CommitmentTransactionDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_CommitmentTransactionDecodeErrorZPtr { err }
                };
                Self {
@@ -1231,7 +1240,7 @@ pub union CResult_TrustedCommitmentTransactionNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning::ln::chan_utils::TrustedCommitmentTransaction,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_TrustedCommitmentTransactionNoneZ represents the result of a fallible operation,
@@ -1259,7 +1268,7 @@ pub extern "C" fn CResult_TrustedCommitmentTransactionNoneZ_ok(o: crate::lightni
 pub extern "C" fn CResult_TrustedCommitmentTransactionNoneZ_err() -> CResult_TrustedCommitmentTransactionNoneZ {
        CResult_TrustedCommitmentTransactionNoneZ {
                contents: CResult_TrustedCommitmentTransactionNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -1286,12 +1295,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::Trusted
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::chan_utils::TrustedCommitmentTransaction, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TrustedCommitmentTransactionNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_TrustedCommitmentTransactionNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_TrustedCommitmentTransactionNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -1306,7 +1315,7 @@ pub union CResult_CVec_SignatureZNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::derived::CVec_SignatureZ,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_CVec_SignatureZNoneZ represents the result of a fallible operation,
@@ -1334,7 +1343,7 @@ pub extern "C" fn CResult_CVec_SignatureZNoneZ_ok(o: crate::c_types::derived::CV
 pub extern "C" fn CResult_CVec_SignatureZNoneZ_err() -> CResult_CVec_SignatureZNoneZ {
        CResult_CVec_SignatureZNoneZ {
                contents: CResult_CVec_SignatureZNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -1361,12 +1370,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::CVec_SignatureZ,
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::CVec_SignatureZ, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CVec_SignatureZNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_CVec_SignatureZNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_CVec_SignatureZNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -1382,7 +1391,7 @@ impl Clone for CResult_CVec_SignatureZNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_CVec_SignatureZNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -1457,11 +1466,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::script::ShutdownScr
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::script::ShutdownScript, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ShutdownScriptDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ShutdownScriptDecodeErrorZPtr { err }
                };
                Self {
@@ -1553,11 +1562,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::script::ShutdownScr
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::script::ShutdownScript, crate::lightning::ln::script::InvalidShutdownScript>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ShutdownScriptInvalidShutdownScriptZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ShutdownScriptInvalidShutdownScriptZPtr { err }
                };
                Self {
@@ -1587,7 +1596,7 @@ pub extern "C" fn CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig: &CRes
 /// The contents of CResult_NoneErrorZ
 pub union CResult_NoneErrorZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::c_types::IOError,
@@ -1608,7 +1617,7 @@ pub struct CResult_NoneErrorZ {
 pub extern "C" fn CResult_NoneErrorZ_ok() -> CResult_NoneErrorZ {
        CResult_NoneErrorZ {
                contents: CResult_NoneErrorZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -1645,11 +1654,11 @@ impl From<crate::c_types::CResultTempl<(), crate::c_types::IOError>> for CResult
        fn from(mut o: crate::c_types::CResultTempl<(), crate::c_types::IOError>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneErrorZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneErrorZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NoneErrorZPtr { err }
                };
                Self {
@@ -1662,7 +1671,7 @@ impl Clone for CResult_NoneErrorZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneErrorZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneErrorZPtr {
@@ -1741,11 +1750,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::RouteH
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::RouteHop, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteHopDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteHopDecodeErrorZPtr { err }
                };
                Self {
@@ -1784,13 +1793,13 @@ pub struct CVec_RouteHopZ {
 impl CVec_RouteHopZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::routing::router::RouteHop> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::routing::router::RouteHop] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::routing::router::RouteHop>> for CVec_RouteHopZ {
@@ -1806,14 +1815,14 @@ pub extern "C" fn CVec_RouteHopZ_free(_res: CVec_RouteHopZ) { }
 impl Drop for CVec_RouteHopZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_RouteHopZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -1830,13 +1839,13 @@ pub struct CVec_CVec_RouteHopZZ {
 impl CVec_CVec_RouteHopZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::CVec_RouteHopZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::CVec_RouteHopZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::CVec_RouteHopZ>> for CVec_CVec_RouteHopZZ {
@@ -1852,14 +1861,14 @@ pub extern "C" fn CVec_CVec_RouteHopZZ_free(_res: CVec_CVec_RouteHopZZ) { }
 impl Drop for CVec_CVec_RouteHopZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_CVec_RouteHopZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -1929,11 +1938,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::Route,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::Route, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteDecodeErrorZPtr { err }
                };
                Self {
@@ -2025,11 +2034,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::RouteP
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::RouteParameters, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteParametersDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteParametersDecodeErrorZPtr { err }
                };
                Self {
@@ -2068,13 +2077,13 @@ pub struct CVec_RouteHintZ {
 impl CVec_RouteHintZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::routing::router::RouteHint> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::routing::router::RouteHint] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::routing::router::RouteHint>> for CVec_RouteHintZ {
@@ -2090,14 +2099,14 @@ pub extern "C" fn CVec_RouteHintZ_free(_res: CVec_RouteHintZ) { }
 impl Drop for CVec_RouteHintZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_RouteHintZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -2204,11 +2213,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::Payee,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::Payee, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PayeeDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PayeeDecodeErrorZPtr { err }
                };
                Self {
@@ -2247,13 +2256,13 @@ pub struct CVec_RouteHintHopZ {
 impl CVec_RouteHintHopZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::routing::router::RouteHintHop> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::routing::router::RouteHintHop] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::routing::router::RouteHintHop>> for CVec_RouteHintHopZ {
@@ -2269,14 +2278,14 @@ pub extern "C" fn CVec_RouteHintHopZ_free(_res: CVec_RouteHintHopZ) { }
 impl Drop for CVec_RouteHintHopZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_RouteHintHopZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -2346,11 +2355,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::RouteH
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::RouteHint, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteHintDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteHintDecodeErrorZPtr { err }
                };
                Self {
@@ -2442,11 +2451,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::RouteH
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::RouteHintHop, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteHintHopDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteHintHopDecodeErrorZPtr { err }
                };
                Self {
@@ -2485,13 +2494,13 @@ pub struct CVec_ChannelDetailsZ {
 impl CVec_ChannelDetailsZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::channelmanager::ChannelDetails> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::channelmanager::ChannelDetails] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::channelmanager::ChannelDetails>> for CVec_ChannelDetailsZ {
@@ -2507,14 +2516,14 @@ pub extern "C" fn CVec_ChannelDetailsZ_free(_res: CVec_ChannelDetailsZ) { }
 impl Drop for CVec_ChannelDetailsZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_ChannelDetailsZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -2584,11 +2593,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::router::Route,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::router::Route, crate::lightning::ln::msgs::LightningError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RouteLightningErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RouteLightningErrorZPtr { err }
                };
                Self {
@@ -2680,11 +2689,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::TxOut, crate::lightning::
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::TxOut, crate::lightning::chain::AccessError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TxOutAccessErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_TxOutAccessErrorZPtr { err }
                };
                Self {
@@ -2765,13 +2774,13 @@ pub struct CVec_C2Tuple_usizeTransactionZZ {
 impl CVec_C2Tuple_usizeTransactionZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_usizeTransactionZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_usizeTransactionZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_usizeTransactionZ>> for CVec_C2Tuple_usizeTransactionZZ {
@@ -2787,14 +2796,14 @@ pub extern "C" fn CVec_C2Tuple_usizeTransactionZZ_free(_res: CVec_C2Tuple_usizeT
 impl Drop for CVec_C2Tuple_usizeTransactionZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_C2Tuple_usizeTransactionZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -2811,13 +2820,13 @@ pub struct CVec_TxidZ {
 impl CVec_TxidZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::ThirtyTwoBytes> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::ThirtyTwoBytes] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::ThirtyTwoBytes>> for CVec_TxidZ {
@@ -2833,14 +2842,14 @@ pub extern "C" fn CVec_TxidZ_free(_res: CVec_TxidZ) { }
 impl Drop for CVec_TxidZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_TxidZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -2848,7 +2857,7 @@ impl Clone for CVec_TxidZ {
 /// The contents of CResult_NoneChannelMonitorUpdateErrZ
 pub union CResult_NoneChannelMonitorUpdateErrZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning::chain::ChannelMonitorUpdateErr,
@@ -2869,7 +2878,7 @@ pub struct CResult_NoneChannelMonitorUpdateErrZ {
 pub extern "C" fn CResult_NoneChannelMonitorUpdateErrZ_ok() -> CResult_NoneChannelMonitorUpdateErrZ {
        CResult_NoneChannelMonitorUpdateErrZ {
                contents: CResult_NoneChannelMonitorUpdateErrZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -2906,11 +2915,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning::chain::ChannelMonit
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning::chain::ChannelMonitorUpdateErr>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneChannelMonitorUpdateErrZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneChannelMonitorUpdateErrZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NoneChannelMonitorUpdateErrZPtr { err }
                };
                Self {
@@ -2923,7 +2932,7 @@ impl Clone for CResult_NoneChannelMonitorUpdateErrZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneChannelMonitorUpdateErrZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneChannelMonitorUpdateErrZPtr {
@@ -2949,13 +2958,13 @@ pub struct CVec_MonitorEventZ {
 impl CVec_MonitorEventZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::chain::channelmonitor::MonitorEvent> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::chain::channelmonitor::MonitorEvent] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::chain::channelmonitor::MonitorEvent>> for CVec_MonitorEventZ {
@@ -2971,14 +2980,14 @@ pub extern "C" fn CVec_MonitorEventZ_free(_res: CVec_MonitorEventZ) { }
 impl Drop for CVec_MonitorEventZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_MonitorEventZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -3122,11 +3131,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::COption_ClosureR
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::COption_ClosureReasonZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_COption_ClosureReasonZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_COption_ClosureReasonZDecodeErrorZPtr { err }
                };
                Self {
@@ -3202,13 +3211,13 @@ pub struct CVec_SpendableOutputDescriptorZ {
 impl CVec_SpendableOutputDescriptorZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::chain::keysinterface::SpendableOutputDescriptor> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::chain::keysinterface::SpendableOutputDescriptor] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::chain::keysinterface::SpendableOutputDescriptor>> for CVec_SpendableOutputDescriptorZ {
@@ -3224,14 +3233,14 @@ pub extern "C" fn CVec_SpendableOutputDescriptorZ_free(_res: CVec_SpendableOutpu
 impl Drop for CVec_SpendableOutputDescriptorZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_SpendableOutputDescriptorZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -3338,11 +3347,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::COption_EventZ,
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::COption_EventZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_COption_EventZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_COption_EventZDecodeErrorZPtr { err }
                };
                Self {
@@ -3381,13 +3390,13 @@ pub struct CVec_MessageSendEventZ {
 impl CVec_MessageSendEventZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::util::events::MessageSendEvent> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::util::events::MessageSendEvent] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::util::events::MessageSendEvent>> for CVec_MessageSendEventZ {
@@ -3403,14 +3412,14 @@ pub extern "C" fn CVec_MessageSendEventZ_free(_res: CVec_MessageSendEventZ) { }
 impl Drop for CVec_MessageSendEventZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_MessageSendEventZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -3480,11 +3489,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::scoring::Scori
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::scoring::ScoringParameters, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ScoringParametersDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ScoringParametersDecodeErrorZPtr { err }
                };
                Self {
@@ -3559,11 +3568,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::scoring::Score
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::scoring::Scorer, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ScorerDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ScorerDecodeErrorZPtr { err }
                };
                Self {
@@ -3638,11 +3647,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::features::InitFeatu
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::features::InitFeatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InitFeaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InitFeaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -3717,11 +3726,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::features::ChannelFe
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::features::ChannelFeatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelFeaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelFeaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -3796,11 +3805,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::features::NodeFeatu
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::features::NodeFeatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NodeFeaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NodeFeaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -3875,11 +3884,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::features::InvoiceFe
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::features::InvoiceFeatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InvoiceFeaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InvoiceFeaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -3954,11 +3963,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::features::ChannelTy
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::features::ChannelTypeFeatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelTypeFeaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelTypeFeaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -4033,11 +4042,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::D
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::DelayedPaymentOutputDescriptor, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_DelayedPaymentOutputDescriptorDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_DelayedPaymentOutputDescriptorDecodeErrorZPtr { err }
                };
                Self {
@@ -4129,11 +4138,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::S
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::StaticPaymentOutputDescriptor, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_StaticPaymentOutputDescriptorDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_StaticPaymentOutputDescriptorDecodeErrorZPtr { err }
                };
                Self {
@@ -4225,11 +4234,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::S
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::SpendableOutputDescriptor, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SpendableOutputDescriptorDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_SpendableOutputDescriptorDecodeErrorZPtr { err }
                };
                Self {
@@ -4259,9 +4268,9 @@ pub extern "C" fn CResult_SpendableOutputDescriptorDecodeErrorZ_clone(orig: &CRe
 /// The contents of CResult_NoneNoneZ
 pub union CResult_NoneNoneZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_NoneNoneZ represents the result of a fallible operation,
@@ -4279,7 +4288,7 @@ pub struct CResult_NoneNoneZ {
 pub extern "C" fn CResult_NoneNoneZ_ok() -> CResult_NoneNoneZ {
        CResult_NoneNoneZ {
                contents: CResult_NoneNoneZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -4289,7 +4298,7 @@ pub extern "C" fn CResult_NoneNoneZ_ok() -> CResult_NoneNoneZ {
 pub extern "C" fn CResult_NoneNoneZ_err() -> CResult_NoneNoneZ {
        CResult_NoneNoneZ {
                contents: CResult_NoneNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -4313,12 +4322,12 @@ impl From<crate::c_types::CResultTempl<(), ()>> for CResult_NoneNoneZ {
        fn from(mut o: crate::c_types::CResultTempl<(), ()>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneNoneZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneNoneZPtr { result: core::ptr::null_mut() }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_NoneNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_NoneNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -4330,11 +4339,11 @@ impl Clone for CResult_NoneNoneZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneNoneZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -4392,7 +4401,7 @@ pub union CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::derived::C2Tuple_SignatureCVec_SignatureZZ,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ represents the result of a fallible operation,
@@ -4420,7 +4429,7 @@ pub extern "C" fn CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(o: crate::c_
 pub extern "C" fn CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err() -> CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
        CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
                contents: CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -4447,12 +4456,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_Signatur
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_SignatureCVec_SignatureZZ, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -4468,7 +4477,7 @@ impl Clone for CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_C2Tuple_SignatureCVec_SignatureZZNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -4484,7 +4493,7 @@ pub union CResult_SignatureNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::Signature,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_SignatureNoneZ represents the result of a fallible operation,
@@ -4512,7 +4521,7 @@ pub extern "C" fn CResult_SignatureNoneZ_ok(o: crate::c_types::Signature) -> CRe
 pub extern "C" fn CResult_SignatureNoneZ_err() -> CResult_SignatureNoneZ {
        CResult_SignatureNoneZ {
                contents: CResult_SignatureNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -4539,12 +4548,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::Signature, ()>> for CResu
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::Signature, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SignatureNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_SignatureNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_SignatureNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -4560,7 +4569,7 @@ impl Clone for CResult_SignatureNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_SignatureNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -4635,11 +4644,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::S
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::Sign, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SignDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_SignDecodeErrorZPtr { err }
                };
                Self {
@@ -4678,13 +4687,13 @@ pub struct CVec_u8Z {
 impl CVec_u8Z {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<u8> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[u8] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<u8>> for CVec_u8Z {
@@ -4700,14 +4709,14 @@ pub extern "C" fn CVec_u8Z_free(_res: CVec_u8Z) { }
 impl Drop for CVec_u8Z {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_u8Z {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -4718,7 +4727,7 @@ pub union CResult_RecoverableSignatureNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::RecoverableSignature,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_RecoverableSignatureNoneZ represents the result of a fallible operation,
@@ -4746,7 +4755,7 @@ pub extern "C" fn CResult_RecoverableSignatureNoneZ_ok(o: crate::c_types::Recove
 pub extern "C" fn CResult_RecoverableSignatureNoneZ_err() -> CResult_RecoverableSignatureNoneZ {
        CResult_RecoverableSignatureNoneZ {
                contents: CResult_RecoverableSignatureNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -4773,12 +4782,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::RecoverableSignature, ()>
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::RecoverableSignature, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RecoverableSignatureNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_RecoverableSignatureNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_RecoverableSignatureNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -4794,7 +4803,7 @@ impl Clone for CResult_RecoverableSignatureNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_RecoverableSignatureNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -4816,13 +4825,13 @@ pub struct CVec_CVec_u8ZZ {
 impl CVec_CVec_u8ZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::CVec_u8Z> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::CVec_u8Z] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::CVec_u8Z>> for CVec_CVec_u8ZZ {
@@ -4838,14 +4847,14 @@ pub extern "C" fn CVec_CVec_u8ZZ_free(_res: CVec_CVec_u8ZZ) { }
 impl Drop for CVec_CVec_u8ZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_CVec_u8ZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -4856,7 +4865,7 @@ pub union CResult_CVec_CVec_u8ZZNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::derived::CVec_CVec_u8ZZ,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_CVec_CVec_u8ZZNoneZ represents the result of a fallible operation,
@@ -4884,7 +4893,7 @@ pub extern "C" fn CResult_CVec_CVec_u8ZZNoneZ_ok(o: crate::c_types::derived::CVe
 pub extern "C" fn CResult_CVec_CVec_u8ZZNoneZ_err() -> CResult_CVec_CVec_u8ZZNoneZ {
        CResult_CVec_CVec_u8ZZNoneZ {
                contents: CResult_CVec_CVec_u8ZZNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -4911,12 +4920,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::CVec_CVec_u8ZZ,
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::CVec_CVec_u8ZZ, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CVec_CVec_u8ZZNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_CVec_CVec_u8ZZNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_CVec_CVec_u8ZZNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -4932,7 +4941,7 @@ impl Clone for CResult_CVec_CVec_u8ZZNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_CVec_CVec_u8ZZNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -5007,11 +5016,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::I
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::keysinterface::InMemorySigner, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InMemorySignerDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InMemorySignerDecodeErrorZPtr { err }
                };
                Self {
@@ -5050,13 +5059,13 @@ pub struct CVec_TxOutZ {
 impl CVec_TxOutZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::TxOut> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::TxOut] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::TxOut>> for CVec_TxOutZ {
@@ -5072,14 +5081,14 @@ pub extern "C" fn CVec_TxOutZ_free(_res: CVec_TxOutZ) { }
 impl Drop for CVec_TxOutZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_TxOutZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -5090,7 +5099,7 @@ pub union CResult_TransactionNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::Transaction,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_TransactionNoneZ represents the result of a fallible operation,
@@ -5118,7 +5127,7 @@ pub extern "C" fn CResult_TransactionNoneZ_ok(o: crate::c_types::Transaction) ->
 pub extern "C" fn CResult_TransactionNoneZ_err() -> CResult_TransactionNoneZ {
        CResult_TransactionNoneZ {
                contents: CResult_TransactionNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -5145,12 +5154,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::Transaction, ()>> for CRe
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::Transaction, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_TransactionNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_TransactionNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_TransactionNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -5166,7 +5175,7 @@ impl Clone for CResult_TransactionNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_TransactionNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -5218,13 +5227,13 @@ pub struct CVec_C2Tuple_BlockHashChannelMonitorZZ {
 impl CVec_C2Tuple_BlockHashChannelMonitorZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_BlockHashChannelMonitorZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_BlockHashChannelMonitorZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_BlockHashChannelMonitorZ>> for CVec_C2Tuple_BlockHashChannelMonitorZZ {
@@ -5240,7 +5249,7 @@ pub extern "C" fn CVec_C2Tuple_BlockHashChannelMonitorZZ_free(_res: CVec_C2Tuple
 impl Drop for CVec_C2Tuple_BlockHashChannelMonitorZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 #[repr(C)]
@@ -5309,11 +5318,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::CVec_C2Tuple_Blo
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::CVec_C2Tuple_BlockHashChannelMonitorZZ, crate::c_types::IOError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZPtr { err }
                };
                Self {
@@ -5363,7 +5372,7 @@ pub extern "C" fn COption_u16Z_clone(orig: &COption_u16Z) -> COption_u16Z { Clon
 /// The contents of CResult_NoneAPIErrorZ
 pub union CResult_NoneAPIErrorZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning::util::errors::APIError,
@@ -5384,7 +5393,7 @@ pub struct CResult_NoneAPIErrorZ {
 pub extern "C" fn CResult_NoneAPIErrorZ_ok() -> CResult_NoneAPIErrorZ {
        CResult_NoneAPIErrorZ {
                contents: CResult_NoneAPIErrorZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -5421,11 +5430,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning::util::errors::APIEr
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning::util::errors::APIError>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneAPIErrorZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneAPIErrorZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NoneAPIErrorZPtr { err }
                };
                Self {
@@ -5438,7 +5447,7 @@ impl Clone for CResult_NoneAPIErrorZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneAPIErrorZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneAPIErrorZPtr {
@@ -5464,13 +5473,13 @@ pub struct CVec_CResult_NoneAPIErrorZZ {
 impl CVec_CResult_NoneAPIErrorZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::CResult_NoneAPIErrorZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::CResult_NoneAPIErrorZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::CResult_NoneAPIErrorZ>> for CVec_CResult_NoneAPIErrorZZ {
@@ -5486,14 +5495,14 @@ pub extern "C" fn CVec_CResult_NoneAPIErrorZZ_free(_res: CVec_CResult_NoneAPIErr
 impl Drop for CVec_CResult_NoneAPIErrorZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_CResult_NoneAPIErrorZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -5510,13 +5519,13 @@ pub struct CVec_APIErrorZ {
 impl CVec_APIErrorZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::util::errors::APIError> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::util::errors::APIError] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::util::errors::APIError>> for CVec_APIErrorZ {
@@ -5532,14 +5541,14 @@ pub extern "C" fn CVec_APIErrorZ_free(_res: CVec_APIErrorZ) { }
 impl Drop for CVec_APIErrorZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_APIErrorZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -5609,11 +5618,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::li
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::lightning::util::errors::APIError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult__u832APIErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult__u832APIErrorZPtr { err }
                };
                Self {
@@ -5705,11 +5714,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::li
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::lightning::ln::channelmanager::PaymentSendFailure>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PaymentIdPaymentSendFailureZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PaymentIdPaymentSendFailureZPtr { err }
                };
                Self {
@@ -5739,7 +5748,7 @@ pub extern "C" fn CResult_PaymentIdPaymentSendFailureZ_clone(orig: &CResult_Paym
 /// The contents of CResult_NonePaymentSendFailureZ
 pub union CResult_NonePaymentSendFailureZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning::ln::channelmanager::PaymentSendFailure,
@@ -5760,7 +5769,7 @@ pub struct CResult_NonePaymentSendFailureZ {
 pub extern "C" fn CResult_NonePaymentSendFailureZ_ok() -> CResult_NonePaymentSendFailureZ {
        CResult_NonePaymentSendFailureZ {
                contents: CResult_NonePaymentSendFailureZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -5797,11 +5806,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning::ln::channelmanager:
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning::ln::channelmanager::PaymentSendFailure>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NonePaymentSendFailureZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NonePaymentSendFailureZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NonePaymentSendFailureZPtr { err }
                };
                Self {
@@ -5814,7 +5823,7 @@ impl Clone for CResult_NonePaymentSendFailureZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NonePaymentSendFailureZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NonePaymentSendFailureZPtr {
@@ -5935,11 +5944,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentH
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentHashPaymentIdZ, crate::lightning::ln::channelmanager::PaymentSendFailure>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZPtr { err }
                };
                Self {
@@ -5978,13 +5987,13 @@ pub struct CVec_NetAddressZ {
 impl CVec_NetAddressZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::NetAddress> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::NetAddress] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::NetAddress>> for CVec_NetAddressZ {
@@ -6000,14 +6009,14 @@ pub extern "C" fn CVec_NetAddressZ_free(_res: CVec_NetAddressZ) { }
 impl Drop for CVec_NetAddressZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_NetAddressZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -6060,7 +6069,7 @@ pub union CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::derived::C2Tuple_PaymentHashPaymentSecretZ,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ represents the result of a fallible operation,
@@ -6088,7 +6097,7 @@ pub extern "C" fn CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_ok(o: crate::c_
 pub extern "C" fn CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ_err() -> CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ {
        CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ {
                contents: CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -6115,12 +6124,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentH
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentHashPaymentSecretZ, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -6136,7 +6145,7 @@ impl Clone for CResult_C2Tuple_PaymentHashPaymentSecretZNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_C2Tuple_PaymentHashPaymentSecretZNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -6211,11 +6220,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentH
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_PaymentHashPaymentSecretZ, crate::lightning::util::errors::APIError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZPtr { err }
                };
                Self {
@@ -6248,7 +6257,7 @@ pub union CResult_PaymentSecretNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::c_types::ThirtyTwoBytes,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_PaymentSecretNoneZ represents the result of a fallible operation,
@@ -6276,7 +6285,7 @@ pub extern "C" fn CResult_PaymentSecretNoneZ_ok(o: crate::c_types::ThirtyTwoByte
 pub extern "C" fn CResult_PaymentSecretNoneZ_err() -> CResult_PaymentSecretNoneZ {
        CResult_PaymentSecretNoneZ {
                contents: CResult_PaymentSecretNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -6303,12 +6312,12 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, ()>> for
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PaymentSecretNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_PaymentSecretNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_PaymentSecretNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -6324,7 +6333,7 @@ impl Clone for CResult_PaymentSecretNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_PaymentSecretNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -6399,11 +6408,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::li
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::lightning::util::errors::APIError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PaymentSecretAPIErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PaymentSecretAPIErrorZPtr { err }
                };
                Self {
@@ -6495,11 +6504,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::li
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::lightning::util::errors::APIError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PaymentPreimageAPIErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PaymentPreimageAPIErrorZPtr { err }
                };
                Self {
@@ -6538,13 +6547,13 @@ pub struct CVec_ChannelMonitorZ {
 impl CVec_ChannelMonitorZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::chain::channelmonitor::ChannelMonitor> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::chain::channelmonitor::ChannelMonitor] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::chain::channelmonitor::ChannelMonitor>> for CVec_ChannelMonitorZ {
@@ -6560,7 +6569,7 @@ pub extern "C" fn CVec_ChannelMonitorZ_free(_res: CVec_ChannelMonitorZ) { }
 impl Drop for CVec_ChannelMonitorZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 #[repr(C)]
@@ -6659,11 +6668,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_BlockHas
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_BlockHashChannelManagerZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZPtr { err }
                };
                Self {
@@ -6738,11 +6747,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::util::config::ChannelCo
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::util::config::ChannelConfig, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelConfigDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelConfigDecodeErrorZPtr { err }
                };
                Self {
@@ -6834,11 +6843,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::transaction::Out
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::transaction::OutPoint, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_OutPointDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_OutPointDecodeErrorZPtr { err }
                };
                Self {
@@ -6962,11 +6971,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::COption_TypeZ, c
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::COption_TypeZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_COption_TypeZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_COption_TypeZDecodeErrorZPtr { err }
                };
                Self {
@@ -7041,11 +7050,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::li
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::ThirtyTwoBytes, crate::lightning_invoice::payment::PaymentError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PaymentIdPaymentErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PaymentIdPaymentErrorZPtr { err }
                };
                Self {
@@ -7078,7 +7087,7 @@ pub union CResult_SiPrefixNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning_invoice::SiPrefix,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_SiPrefixNoneZ represents the result of a fallible operation,
@@ -7106,7 +7115,7 @@ pub extern "C" fn CResult_SiPrefixNoneZ_ok(o: crate::lightning_invoice::SiPrefix
 pub extern "C" fn CResult_SiPrefixNoneZ_err() -> CResult_SiPrefixNoneZ {
        CResult_SiPrefixNoneZ {
                contents: CResult_SiPrefixNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -7133,12 +7142,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::SiPrefix, ()>>
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::SiPrefix, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SiPrefixNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_SiPrefixNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_SiPrefixNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -7154,7 +7163,7 @@ impl Clone for CResult_SiPrefixNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_SiPrefixNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -7170,7 +7179,7 @@ pub union CResult_InvoiceNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning_invoice::Invoice,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_InvoiceNoneZ represents the result of a fallible operation,
@@ -7198,7 +7207,7 @@ pub extern "C" fn CResult_InvoiceNoneZ_ok(o: crate::lightning_invoice::Invoice)
 pub extern "C" fn CResult_InvoiceNoneZ_err() -> CResult_InvoiceNoneZ {
        CResult_InvoiceNoneZ {
                contents: CResult_InvoiceNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -7225,12 +7234,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, ()>> f
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InvoiceNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_InvoiceNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_InvoiceNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -7246,7 +7255,7 @@ impl Clone for CResult_InvoiceNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_InvoiceNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -7262,7 +7271,7 @@ pub union CResult_SignedRawInvoiceNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning_invoice::SignedRawInvoice,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_SignedRawInvoiceNoneZ represents the result of a fallible operation,
@@ -7290,7 +7299,7 @@ pub extern "C" fn CResult_SignedRawInvoiceNoneZ_ok(o: crate::lightning_invoice::
 pub extern "C" fn CResult_SignedRawInvoiceNoneZ_err() -> CResult_SignedRawInvoiceNoneZ {
        CResult_SignedRawInvoiceNoneZ {
                contents: CResult_SignedRawInvoiceNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -7317,12 +7326,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::SignedRawInvoic
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::SignedRawInvoice, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_SignedRawInvoiceNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_SignedRawInvoiceNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_SignedRawInvoiceNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -7338,7 +7347,7 @@ impl Clone for CResult_SignedRawInvoiceNoneZ {
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_SignedRawInvoiceNoneZPtr {
-                               err: std::ptr::null_mut()
+                               err: core::ptr::null_mut()
                        } }
                }
        }
@@ -7459,11 +7468,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::PayeePubKey, cr
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::PayeePubKey, crate::c_types::Secp256k1Error>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PayeePubKeyErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PayeePubKeyErrorZPtr { err }
                };
                Self {
@@ -7502,13 +7511,13 @@ pub struct CVec_PrivateRouteZ {
 impl CVec_PrivateRouteZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning_invoice::PrivateRoute> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning_invoice::PrivateRoute] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning_invoice::PrivateRoute>> for CVec_PrivateRouteZ {
@@ -7524,14 +7533,14 @@ pub extern "C" fn CVec_PrivateRouteZ_free(_res: CVec_PrivateRouteZ) { }
 impl Drop for CVec_PrivateRouteZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_PrivateRouteZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -7601,11 +7610,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::PositiveTimesta
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::PositiveTimestamp, crate::lightning_invoice::CreationError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PositiveTimestampCreationErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PositiveTimestampCreationErrorZPtr { err }
                };
                Self {
@@ -7635,7 +7644,7 @@ pub extern "C" fn CResult_PositiveTimestampCreationErrorZ_clone(orig: &CResult_P
 /// The contents of CResult_NoneSemanticErrorZ
 pub union CResult_NoneSemanticErrorZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning_invoice::SemanticError,
@@ -7656,7 +7665,7 @@ pub struct CResult_NoneSemanticErrorZ {
 pub extern "C" fn CResult_NoneSemanticErrorZ_ok() -> CResult_NoneSemanticErrorZ {
        CResult_NoneSemanticErrorZ {
                contents: CResult_NoneSemanticErrorZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -7693,11 +7702,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning_invoice::SemanticErr
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning_invoice::SemanticError>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneSemanticErrorZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneSemanticErrorZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NoneSemanticErrorZPtr { err }
                };
                Self {
@@ -7710,7 +7719,7 @@ impl Clone for CResult_NoneSemanticErrorZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneSemanticErrorZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneSemanticErrorZPtr {
@@ -7789,11 +7798,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, crate:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, crate::lightning_invoice::SemanticError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InvoiceSemanticErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InvoiceSemanticErrorZPtr { err }
                };
                Self {
@@ -7885,11 +7894,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::Description, cr
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::Description, crate::lightning_invoice::CreationError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_DescriptionCreationErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_DescriptionCreationErrorZPtr { err }
                };
                Self {
@@ -7981,11 +7990,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::ExpiryTime, cra
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::ExpiryTime, crate::lightning_invoice::CreationError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ExpiryTimeCreationErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ExpiryTimeCreationErrorZPtr { err }
                };
                Self {
@@ -8077,11 +8086,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::PrivateRoute, c
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::PrivateRoute, crate::lightning_invoice::CreationError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PrivateRouteCreationErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PrivateRouteCreationErrorZPtr { err }
                };
                Self {
@@ -8173,11 +8182,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::Str, crate::c_types::Secp
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::Str, crate::c_types::Secp256k1Error>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_StringErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_StringErrorZPtr { err }
                };
                Self {
@@ -8252,11 +8261,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::channelmonitor::
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::channelmonitor::ChannelMonitorUpdate, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelMonitorUpdateDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelMonitorUpdateDecodeErrorZPtr { err }
                };
                Self {
@@ -8385,11 +8394,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::COption_MonitorE
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::COption_MonitorEventZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_COption_MonitorEventZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_COption_MonitorEventZDecodeErrorZPtr { err }
                };
                Self {
@@ -8481,11 +8490,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::channelmonitor::
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::channelmonitor::HTLCUpdate, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_HTLCUpdateDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_HTLCUpdateDecodeErrorZPtr { err }
                };
                Self {
@@ -8608,13 +8617,13 @@ pub struct CVec_C2Tuple_u32ScriptZZ {
 impl CVec_C2Tuple_u32ScriptZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_u32ScriptZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_u32ScriptZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_u32ScriptZ>> for CVec_C2Tuple_u32ScriptZZ {
@@ -8630,14 +8639,14 @@ pub extern "C" fn CVec_C2Tuple_u32ScriptZZ_free(_res: CVec_C2Tuple_u32ScriptZZ)
 impl Drop for CVec_C2Tuple_u32ScriptZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_C2Tuple_u32ScriptZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -8696,13 +8705,13 @@ pub struct CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
 impl CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ>> for CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
@@ -8718,14 +8727,14 @@ pub extern "C" fn CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res: CVec_C2
 impl Drop for CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -8742,13 +8751,13 @@ pub struct CVec_EventZ {
 impl CVec_EventZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::util::events::Event> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::util::events::Event] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::util::events::Event>> for CVec_EventZ {
@@ -8764,14 +8773,14 @@ pub extern "C" fn CVec_EventZ_free(_res: CVec_EventZ) { }
 impl Drop for CVec_EventZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_EventZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -8788,13 +8797,13 @@ pub struct CVec_TransactionZ {
 impl CVec_TransactionZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::Transaction> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::Transaction] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::Transaction>> for CVec_TransactionZ {
@@ -8810,14 +8819,14 @@ pub extern "C" fn CVec_TransactionZ_free(_res: CVec_TransactionZ) { }
 impl Drop for CVec_TransactionZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_TransactionZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -8876,13 +8885,13 @@ pub struct CVec_C2Tuple_u32TxOutZZ {
 impl CVec_C2Tuple_u32TxOutZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_u32TxOutZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_u32TxOutZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_u32TxOutZ>> for CVec_C2Tuple_u32TxOutZZ {
@@ -8898,14 +8907,14 @@ pub extern "C" fn CVec_C2Tuple_u32TxOutZZ_free(_res: CVec_C2Tuple_u32TxOutZZ) {
 impl Drop for CVec_C2Tuple_u32TxOutZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_C2Tuple_u32TxOutZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -8964,13 +8973,13 @@ pub struct CVec_TransactionOutputsZ {
 impl CVec_TransactionOutputsZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ>> for CVec_TransactionOutputsZ {
@@ -8986,14 +8995,14 @@ pub extern "C" fn CVec_TransactionOutputsZ_free(_res: CVec_TransactionOutputsZ)
 impl Drop for CVec_TransactionOutputsZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_TransactionOutputsZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -9010,13 +9019,13 @@ pub struct CVec_BalanceZ {
 impl CVec_BalanceZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::chain::channelmonitor::Balance> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::chain::channelmonitor::Balance] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::chain::channelmonitor::Balance>> for CVec_BalanceZ {
@@ -9032,14 +9041,14 @@ pub extern "C" fn CVec_BalanceZ_free(_res: CVec_BalanceZ) { }
 impl Drop for CVec_BalanceZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_BalanceZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -9109,11 +9118,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_BlockHas
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_BlockHashChannelMonitorZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZPtr { err }
                };
                Self {
@@ -9126,7 +9135,7 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::C2Tuple_BlockHas
 /// The contents of CResult_NoneLightningErrorZ
 pub union CResult_NoneLightningErrorZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning::ln::msgs::LightningError,
@@ -9147,7 +9156,7 @@ pub struct CResult_NoneLightningErrorZ {
 pub extern "C" fn CResult_NoneLightningErrorZ_ok() -> CResult_NoneLightningErrorZ {
        CResult_NoneLightningErrorZ {
                contents: CResult_NoneLightningErrorZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -9184,11 +9193,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning::ln::msgs::Lightning
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning::ln::msgs::LightningError>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NoneLightningErrorZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NoneLightningErrorZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NoneLightningErrorZPtr { err }
                };
                Self {
@@ -9201,7 +9210,7 @@ impl Clone for CResult_NoneLightningErrorZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NoneLightningErrorZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NoneLightningErrorZPtr {
@@ -9257,13 +9266,13 @@ pub struct CVec_C2Tuple_PublicKeyTypeZZ {
 impl CVec_C2Tuple_PublicKeyTypeZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C2Tuple_PublicKeyTypeZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C2Tuple_PublicKeyTypeZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C2Tuple_PublicKeyTypeZ>> for CVec_C2Tuple_PublicKeyTypeZZ {
@@ -9279,7 +9288,7 @@ pub extern "C" fn CVec_C2Tuple_PublicKeyTypeZZ_free(_res: CVec_C2Tuple_PublicKey
 impl Drop for CVec_C2Tuple_PublicKeyTypeZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 #[repr(C)]
@@ -9348,11 +9357,11 @@ impl From<crate::c_types::CResultTempl<bool, crate::lightning::ln::msgs::Lightni
        fn from(mut o: crate::c_types::CResultTempl<bool, crate::lightning::ln::msgs::LightningError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_boolLightningErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_boolLightningErrorZPtr { err }
                };
                Self {
@@ -9437,13 +9446,13 @@ pub struct CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
 impl CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::derived::C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::derived::C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::derived::C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ>> for CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
@@ -9459,14 +9468,14 @@ pub extern "C" fn CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_f
 impl Drop for CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -9483,13 +9492,13 @@ pub struct CVec_NodeAnnouncementZ {
 impl CVec_NodeAnnouncementZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::NodeAnnouncement> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::NodeAnnouncement] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::NodeAnnouncement>> for CVec_NodeAnnouncementZ {
@@ -9505,14 +9514,14 @@ pub extern "C" fn CVec_NodeAnnouncementZ_free(_res: CVec_NodeAnnouncementZ) { }
 impl Drop for CVec_NodeAnnouncementZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_NodeAnnouncementZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -9529,13 +9538,13 @@ pub struct CVec_PublicKeyZ {
 impl CVec_PublicKeyZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::c_types::PublicKey> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::c_types::PublicKey] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::c_types::PublicKey>> for CVec_PublicKeyZ {
@@ -9551,14 +9560,14 @@ pub extern "C" fn CVec_PublicKeyZ_free(_res: CVec_PublicKeyZ) { }
 impl Drop for CVec_PublicKeyZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_PublicKeyZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -9628,11 +9637,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::CVec_u8Z, crate:
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::CVec_u8Z, crate::lightning::ln::peer_handler::PeerHandleError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CVec_u8ZPeerHandleErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_CVec_u8ZPeerHandleErrorZPtr { err }
                };
                Self {
@@ -9662,7 +9671,7 @@ pub extern "C" fn CResult_CVec_u8ZPeerHandleErrorZ_clone(orig: &CResult_CVec_u8Z
 /// The contents of CResult_NonePeerHandleErrorZ
 pub union CResult_NonePeerHandleErrorZPtr {
        /// Note that this value is always NULL, as there are no contents in the OK variant
-       pub result: *mut std::ffi::c_void,
+       pub result: *mut core::ffi::c_void,
        /// A pointer to the contents in the error state.
        /// Reading from this pointer when `result_ok` is set is undefined.
        pub err: *mut crate::lightning::ln::peer_handler::PeerHandleError,
@@ -9683,7 +9692,7 @@ pub struct CResult_NonePeerHandleErrorZ {
 pub extern "C" fn CResult_NonePeerHandleErrorZ_ok() -> CResult_NonePeerHandleErrorZ {
        CResult_NonePeerHandleErrorZ {
                contents: CResult_NonePeerHandleErrorZPtr {
-                       result: std::ptr::null_mut(),
+                       result: core::ptr::null_mut(),
                },
                result_ok: true,
        }
@@ -9720,11 +9729,11 @@ impl From<crate::c_types::CResultTempl<(), crate::lightning::ln::peer_handler::P
        fn from(mut o: crate::c_types::CResultTempl<(), crate::lightning::ln::peer_handler::PeerHandleError>) -> Self {
                let contents = if o.result_ok {
                        let _ = unsafe { Box::from_raw(o.contents.result) };
-                       o.contents.result = std::ptr::null_mut();
-                       CResult_NonePeerHandleErrorZPtr { result: std::ptr::null_mut() }
+                       o.contents.result = core::ptr::null_mut();
+                       CResult_NonePeerHandleErrorZPtr { result: core::ptr::null_mut() }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NonePeerHandleErrorZPtr { err }
                };
                Self {
@@ -9737,7 +9746,7 @@ impl Clone for CResult_NonePeerHandleErrorZ {
        fn clone(&self) -> Self {
                if self.result_ok {
                        Self { result_ok: true, contents: CResult_NonePeerHandleErrorZPtr {
-                               result: std::ptr::null_mut()
+                               result: core::ptr::null_mut()
                        } }
                } else {
                        Self { result_ok: false, contents: CResult_NonePeerHandleErrorZPtr {
@@ -9816,11 +9825,11 @@ impl From<crate::c_types::CResultTempl<bool, crate::lightning::ln::peer_handler:
        fn from(mut o: crate::c_types::CResultTempl<bool, crate::lightning::ln::peer_handler::PeerHandleError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_boolPeerHandleErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_boolPeerHandleErrorZPtr { err }
                };
                Self {
@@ -9912,11 +9921,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::NodeId, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NodeIdDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NodeIdDecodeErrorZPtr { err }
                };
                Self {
@@ -10008,11 +10017,11 @@ impl From<crate::c_types::CResultTempl<crate::c_types::derived::COption_NetworkU
        fn from(mut o: crate::c_types::CResultTempl<crate::c_types::derived::COption_NetworkUpdateZ, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_COption_NetworkUpdateZDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_COption_NetworkUpdateZDecodeErrorZPtr { err }
                };
                Self {
@@ -10136,11 +10145,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::DirectionalChannelInfo, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_DirectionalChannelInfoDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_DirectionalChannelInfoDecodeErrorZPtr { err }
                };
                Self {
@@ -10232,11 +10241,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::ChannelInfo, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelInfoDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelInfoDecodeErrorZPtr { err }
                };
                Self {
@@ -10328,11 +10337,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::RoutingFees, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RoutingFeesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RoutingFeesDecodeErrorZPtr { err }
                };
                Self {
@@ -10424,11 +10433,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::NodeAnnouncementInfo, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NodeAnnouncementInfoDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NodeAnnouncementInfoDecodeErrorZPtr { err }
                };
                Self {
@@ -10467,13 +10476,13 @@ pub struct CVec_u64Z {
 impl CVec_u64Z {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<u64> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[u64] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<u64>> for CVec_u64Z {
@@ -10489,14 +10498,14 @@ pub extern "C" fn CVec_u64Z_free(_res: CVec_u64Z) { }
 impl Drop for CVec_u64Z {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_u64Z {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -10566,11 +10575,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::NodeInfo, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NodeInfoDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NodeInfoDecodeErrorZPtr { err }
                };
                Self {
@@ -10662,11 +10671,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::routing::network_graph:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::routing::network_graph::NetworkGraph, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NetworkGraphDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NetworkGraphDecodeErrorZPtr { err }
                };
                Self {
@@ -10795,11 +10804,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::NetAddress, c
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::NetAddress, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NetAddressDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NetAddressDecodeErrorZPtr { err }
                };
                Self {
@@ -10838,13 +10847,13 @@ pub struct CVec_UpdateAddHTLCZ {
 impl CVec_UpdateAddHTLCZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::UpdateAddHTLC> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::UpdateAddHTLC] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::UpdateAddHTLC>> for CVec_UpdateAddHTLCZ {
@@ -10860,14 +10869,14 @@ pub extern "C" fn CVec_UpdateAddHTLCZ_free(_res: CVec_UpdateAddHTLCZ) { }
 impl Drop for CVec_UpdateAddHTLCZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_UpdateAddHTLCZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -10884,13 +10893,13 @@ pub struct CVec_UpdateFulfillHTLCZ {
 impl CVec_UpdateFulfillHTLCZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::UpdateFulfillHTLC> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::UpdateFulfillHTLC] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::UpdateFulfillHTLC>> for CVec_UpdateFulfillHTLCZ {
@@ -10906,14 +10915,14 @@ pub extern "C" fn CVec_UpdateFulfillHTLCZ_free(_res: CVec_UpdateFulfillHTLCZ) {
 impl Drop for CVec_UpdateFulfillHTLCZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_UpdateFulfillHTLCZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -10930,13 +10939,13 @@ pub struct CVec_UpdateFailHTLCZ {
 impl CVec_UpdateFailHTLCZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::UpdateFailHTLC> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::UpdateFailHTLC] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::UpdateFailHTLC>> for CVec_UpdateFailHTLCZ {
@@ -10952,14 +10961,14 @@ pub extern "C" fn CVec_UpdateFailHTLCZ_free(_res: CVec_UpdateFailHTLCZ) { }
 impl Drop for CVec_UpdateFailHTLCZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_UpdateFailHTLCZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -10976,13 +10985,13 @@ pub struct CVec_UpdateFailMalformedHTLCZ {
 impl CVec_UpdateFailMalformedHTLCZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::ln::msgs::UpdateFailMalformedHTLC> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::ln::msgs::UpdateFailMalformedHTLC] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::ln::msgs::UpdateFailMalformedHTLC>> for CVec_UpdateFailMalformedHTLCZ {
@@ -10998,14 +11007,14 @@ pub extern "C" fn CVec_UpdateFailMalformedHTLCZ_free(_res: CVec_UpdateFailMalfor
 impl Drop for CVec_UpdateFailMalformedHTLCZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_UpdateFailMalformedHTLCZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
@@ -11075,11 +11084,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::AcceptChannel
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::AcceptChannel, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_AcceptChannelDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_AcceptChannelDecodeErrorZPtr { err }
                };
                Self {
@@ -11171,11 +11180,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::AnnouncementS
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::AnnouncementSignatures, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_AnnouncementSignaturesDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_AnnouncementSignaturesDecodeErrorZPtr { err }
                };
                Self {
@@ -11267,11 +11276,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelReesta
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelReestablish, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelReestablishDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelReestablishDecodeErrorZPtr { err }
                };
                Self {
@@ -11363,11 +11372,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ClosingSigned
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ClosingSigned, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ClosingSignedDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ClosingSignedDecodeErrorZPtr { err }
                };
                Self {
@@ -11459,11 +11468,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ClosingSigned
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ClosingSignedFeeRange, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ClosingSignedFeeRangeDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ClosingSignedFeeRangeDecodeErrorZPtr { err }
                };
                Self {
@@ -11555,11 +11564,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::CommitmentSig
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::CommitmentSigned, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_CommitmentSignedDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_CommitmentSignedDecodeErrorZPtr { err }
                };
                Self {
@@ -11651,11 +11660,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingCreate
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingCreated, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_FundingCreatedDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_FundingCreatedDecodeErrorZPtr { err }
                };
                Self {
@@ -11747,11 +11756,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingSigned
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingSigned, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_FundingSignedDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_FundingSignedDecodeErrorZPtr { err }
                };
                Self {
@@ -11843,11 +11852,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingLocked
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::FundingLocked, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_FundingLockedDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_FundingLockedDecodeErrorZPtr { err }
                };
                Self {
@@ -11939,11 +11948,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::Init, crate::
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::Init, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InitDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InitDecodeErrorZPtr { err }
                };
                Self {
@@ -12035,11 +12044,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::OpenChannel,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::OpenChannel, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_OpenChannelDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_OpenChannelDecodeErrorZPtr { err }
                };
                Self {
@@ -12131,11 +12140,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::RevokeAndACK,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::RevokeAndACK, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_RevokeAndACKDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_RevokeAndACKDecodeErrorZPtr { err }
                };
                Self {
@@ -12227,11 +12236,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::Shutdown, cra
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::Shutdown, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ShutdownDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ShutdownDecodeErrorZPtr { err }
                };
                Self {
@@ -12323,11 +12332,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFailHTL
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFailHTLC, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UpdateFailHTLCDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UpdateFailHTLCDecodeErrorZPtr { err }
                };
                Self {
@@ -12419,11 +12428,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFailMal
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFailMalformedHTLC, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UpdateFailMalformedHTLCDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UpdateFailMalformedHTLCDecodeErrorZPtr { err }
                };
                Self {
@@ -12515,11 +12524,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFee, cr
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFee, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UpdateFeeDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UpdateFeeDecodeErrorZPtr { err }
                };
                Self {
@@ -12611,11 +12620,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFulfill
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateFulfillHTLC, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UpdateFulfillHTLCDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UpdateFulfillHTLCDecodeErrorZPtr { err }
                };
                Self {
@@ -12707,11 +12716,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateAddHTLC
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UpdateAddHTLC, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UpdateAddHTLCDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UpdateAddHTLCDecodeErrorZPtr { err }
                };
                Self {
@@ -12803,11 +12812,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::Ping, crate::
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::Ping, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PingDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PingDecodeErrorZPtr { err }
                };
                Self {
@@ -12899,11 +12908,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::Pong, crate::
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::Pong, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_PongDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_PongDecodeErrorZPtr { err }
                };
                Self {
@@ -12995,11 +13004,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedChann
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedChannelAnnouncement, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UnsignedChannelAnnouncementDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UnsignedChannelAnnouncementDecodeErrorZPtr { err }
                };
                Self {
@@ -13091,11 +13100,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelAnnoun
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelAnnouncement, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelAnnouncementDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelAnnouncementDecodeErrorZPtr { err }
                };
                Self {
@@ -13187,11 +13196,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedChann
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedChannelUpdate, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UnsignedChannelUpdateDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UnsignedChannelUpdateDecodeErrorZPtr { err }
                };
                Self {
@@ -13283,11 +13292,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelUpdate
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ChannelUpdate, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ChannelUpdateDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ChannelUpdateDecodeErrorZPtr { err }
                };
                Self {
@@ -13379,11 +13388,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ErrorMessage,
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ErrorMessage, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ErrorMessageDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ErrorMessageDecodeErrorZPtr { err }
                };
                Self {
@@ -13475,11 +13484,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedNodeA
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::UnsignedNodeAnnouncement, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_UnsignedNodeAnnouncementDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_UnsignedNodeAnnouncementDecodeErrorZPtr { err }
                };
                Self {
@@ -13571,11 +13580,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::NodeAnnouncem
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::NodeAnnouncement, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_NodeAnnouncementDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_NodeAnnouncementDecodeErrorZPtr { err }
                };
                Self {
@@ -13667,11 +13676,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::QueryShortCha
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::QueryShortChannelIds, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_QueryShortChannelIdsDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_QueryShortChannelIdsDecodeErrorZPtr { err }
                };
                Self {
@@ -13763,11 +13772,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ReplyShortCha
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ReplyShortChannelIdsEnd, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ReplyShortChannelIdsEndDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ReplyShortChannelIdsEndDecodeErrorZPtr { err }
                };
                Self {
@@ -13859,11 +13868,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::QueryChannelR
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::QueryChannelRange, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_QueryChannelRangeDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_QueryChannelRangeDecodeErrorZPtr { err }
                };
                Self {
@@ -13955,11 +13964,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::ReplyChannelR
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::ReplyChannelRange, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_ReplyChannelRangeDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_ReplyChannelRangeDecodeErrorZPtr { err }
                };
                Self {
@@ -14051,11 +14060,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning::ln::msgs::GossipTimesta
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::ln::msgs::GossipTimestampFilter, crate::lightning::ln::msgs::DecodeError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_GossipTimestampFilterDecodeErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_GossipTimestampFilterDecodeErrorZPtr { err }
                };
                Self {
@@ -14147,11 +14156,11 @@ impl From<crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, crate:
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning_invoice::Invoice, crate::lightning_invoice::SignOrCreationError>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_InvoiceSignOrCreationErrorZPtr { result }
                } else {
                        let err = unsafe { o.contents.err };
-                       unsafe { o.contents.err = std::ptr::null_mut(); }
+                       unsafe { o.contents.err = core::ptr::null_mut(); }
                        CResult_InvoiceSignOrCreationErrorZPtr { err }
                };
                Self {
@@ -14216,7 +14225,7 @@ pub union CResult_LockedChannelMonitorNoneZPtr {
        /// Reading from this pointer when `result_ok` is not set is undefined.
        pub result: *mut crate::lightning::chain::chainmonitor::LockedChannelMonitor,
        /// Note that this value is always NULL, as there are no contents in the Err variant
-       pub err: *mut std::ffi::c_void,
+       pub err: *mut core::ffi::c_void,
 }
 #[repr(C)]
 /// A CResult_LockedChannelMonitorNoneZ represents the result of a fallible operation,
@@ -14244,7 +14253,7 @@ pub extern "C" fn CResult_LockedChannelMonitorNoneZ_ok(o: crate::lightning::chai
 pub extern "C" fn CResult_LockedChannelMonitorNoneZ_err() -> CResult_LockedChannelMonitorNoneZ {
        CResult_LockedChannelMonitorNoneZ {
                contents: CResult_LockedChannelMonitorNoneZPtr {
-                       err: std::ptr::null_mut(),
+                       err: core::ptr::null_mut(),
                },
                result_ok: false,
        }
@@ -14271,12 +14280,12 @@ impl From<crate::c_types::CResultTempl<crate::lightning::chain::chainmonitor::Lo
        fn from(mut o: crate::c_types::CResultTempl<crate::lightning::chain::chainmonitor::LockedChannelMonitor, ()>) -> Self {
                let contents = if o.result_ok {
                        let result = unsafe { o.contents.result };
-                       unsafe { o.contents.result = std::ptr::null_mut() };
+                       unsafe { o.contents.result = core::ptr::null_mut() };
                        CResult_LockedChannelMonitorNoneZPtr { result }
                } else {
                        let _ = unsafe { Box::from_raw(o.contents.err) };
-                       o.contents.err = std::ptr::null_mut();
-                       CResult_LockedChannelMonitorNoneZPtr { err: std::ptr::null_mut() }
+                       o.contents.err = core::ptr::null_mut();
+                       CResult_LockedChannelMonitorNoneZPtr { err: core::ptr::null_mut() }
                };
                Self {
                        contents,
@@ -14297,13 +14306,13 @@ pub struct CVec_OutPointZ {
 impl CVec_OutPointZ {
        #[allow(unused)] pub(crate) fn into_rust(&mut self) -> Vec<crate::lightning::chain::transaction::OutPoint> {
                if self.datalen == 0 { return Vec::new(); }
-               let ret = unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
-               self.data = std::ptr::null_mut();
+               let ret = unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) }.into();
+               self.data = core::ptr::null_mut();
                self.datalen = 0;
                ret
        }
        #[allow(unused)] pub(crate) fn as_slice(&self) -> &[crate::lightning::chain::transaction::OutPoint] {
-               unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) }
+               unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) }
        }
 }
 impl From<Vec<crate::lightning::chain::transaction::OutPoint>> for CVec_OutPointZ {
@@ -14319,14 +14328,14 @@ pub extern "C" fn CVec_OutPointZ_free(_res: CVec_OutPointZ) { }
 impl Drop for CVec_OutPointZ {
        fn drop(&mut self) {
                if self.datalen == 0 { return; }
-               unsafe { Box::from_raw(std::slice::from_raw_parts_mut(self.data, self.datalen)) };
+               unsafe { Box::from_raw(core::slice::from_raw_parts_mut(self.data, self.datalen)) };
        }
 }
 impl Clone for CVec_OutPointZ {
        fn clone(&self) -> Self {
                let mut res = Vec::new();
                if self.datalen == 0 { return Self::from(res); }
-               res.extend_from_slice(unsafe { std::slice::from_raw_parts_mut(self.data, self.datalen) });
+               res.extend_from_slice(unsafe { core::slice::from_raw_parts_mut(self.data, self.datalen) });
                Self::from(res)
        }
 }
index 907c3666161eb3d63195016e8714c9ed99d7cf22..a0beebd06997321139a7be45e539ac11243bec5c 100644 (file)
 #![allow(unused_parens)]
 #![allow(unused_unsafe)]
 #![allow(unused_braces)]
+#![cfg_attr(not(feature = "std"), no_std)]
+#[cfg(not(any(feature = "std", feature = "no-std")))]
+compile_error!("at least one of the `std` or `no-std` features must be enabled");
+extern crate alloc;
 pub mod version;
 pub mod c_types;
 pub mod bitcoin;
index b1c180bbf5a130f10244807d809580345a363cce..7d8291d64fd2fa88dd4d5e671b04a856ab6c8630 100644 (file)
 //! Includes traits for monitoring and receiving notifications of new blocks and block
 //! disconnections, transaction broadcasting, and feerate information requests.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// An interface to send a transaction to the Bitcoin network.
 #[repr(C)]
@@ -50,7 +52,7 @@ impl rustBroadcasterInterface for BroadcasterInterface {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for BroadcasterInterface {
+impl core::ops::Deref for BroadcasterInterface {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -182,7 +184,7 @@ impl rustFeeEstimator for FeeEstimator {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for FeeEstimator {
+impl core::ops::Deref for FeeEstimator {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
index 0b00b5889c9f35040add1c21fb29540c670a6550..a0e8bcc866a6abf3eb05e9b6a28748b92631ff49 100644 (file)
 //! events. The remote server would make use of [`ChainMonitor`] for block processing and for
 //! servicing [`ChannelMonitor`] updates from the client.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::chain::chainmonitor::MonitorUpdateId as nativeMonitorUpdateIdImport;
@@ -75,14 +77,14 @@ impl MonitorUpdateId {
        pub(crate) fn take_inner(mut self) -> *mut nativeMonitorUpdateId {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for MonitorUpdateId {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeMonitorUpdateId>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeMonitorUpdateId>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -102,11 +104,11 @@ pub extern "C" fn MonitorUpdateId_clone(orig: &MonitorUpdateId) -> MonitorUpdate
 #[no_mangle]
 pub extern "C" fn MonitorUpdateId_hash(o: &MonitorUpdateId) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two MonitorUpdateIds contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -219,7 +221,7 @@ impl rustPersist<crate::lightning::chain::keysinterface::Sign> for Persist {
                local_ret
        }
        fn update_persisted_channel(&self, mut channel_id: lightning::chain::transaction::OutPoint, mut update: &Option<lightning::chain::channelmonitor::ChannelMonitorUpdate>, mut data: &lightning::chain::channelmonitor::ChannelMonitor<crate::lightning::chain::keysinterface::Sign>, mut update_id: lightning::chain::chainmonitor::MonitorUpdateId) -> Result<(), lightning::chain::ChannelMonitorUpdateErr> {
-               let mut local_update = &crate::lightning::chain::channelmonitor::ChannelMonitorUpdate { inner: unsafe { (if update.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (update.as_ref().unwrap()) }) } as *const lightning::chain::channelmonitor::ChannelMonitorUpdate<>) as *mut _ }, is_owned: false };
+               let mut local_update = &crate::lightning::chain::channelmonitor::ChannelMonitorUpdate { inner: unsafe { (if update.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (update.as_ref().unwrap()) }) } as *const lightning::chain::channelmonitor::ChannelMonitorUpdate<>) as *mut _ }, is_owned: false };
                let mut ret = (self.update_persisted_channel)(self.this_arg, crate::lightning::chain::transaction::OutPoint { inner: ObjOps::heap_alloc(channel_id), is_owned: true }, local_update, &crate::lightning::chain::channelmonitor::ChannelMonitor { inner: unsafe { ObjOps::nonnull_ptr_to_inner((data as *const lightning::chain::channelmonitor::ChannelMonitor<_, >) as *mut _) }, is_owned: false }, crate::lightning::chain::chainmonitor::MonitorUpdateId { inner: ObjOps::heap_alloc(update_id), is_owned: true });
                let mut local_ret = match ret.result_ok { true => Ok( { () /*(*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.result)) })*/ }), false => Err( { (*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.err)) }).into_native() })};
                local_ret
@@ -228,7 +230,7 @@ impl rustPersist<crate::lightning::chain::keysinterface::Sign> for Persist {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Persist {
+impl core::ops::Deref for Persist {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -294,7 +296,7 @@ impl LockedChannelMonitor {
        pub(crate) fn take_inner(mut self) -> *mut nativeLockedChannelMonitor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -353,7 +355,7 @@ impl ChainMonitor {
        pub(crate) fn take_inner(mut self) -> *mut nativeChainMonitor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -441,7 +443,7 @@ impl From<nativeChainMonitor> for crate::lightning::chain::Listen {
                let mut rust_obj = ChainMonitor { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChainMonitor_as_Listen(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChainMonitor_free_void);
                ret
        }
@@ -470,7 +472,7 @@ impl From<nativeChainMonitor> for crate::lightning::chain::Confirm {
                let mut rust_obj = ChainMonitor { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChainMonitor_as_Confirm(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChainMonitor_free_void);
                ret
        }
@@ -511,7 +513,7 @@ impl From<nativeChainMonitor> for crate::lightning::chain::Watch {
                let mut rust_obj = ChainMonitor { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChainMonitor_as_Watch(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChainMonitor_free_void);
                ret
        }
@@ -553,7 +555,7 @@ impl From<nativeChainMonitor> for crate::lightning::util::events::EventsProvider
                let mut rust_obj = ChainMonitor { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChainMonitor_as_EventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChainMonitor_free_void);
                ret
        }
index 1484bbf60bacfcb5a57f772f334060568df57df2..da82fb9de1c5fa6c7573eec212dd1ef9692823f9 100644 (file)
 //! security-domain-separated system design, you should consider having multiple paths for
 //! ChannelMonitors to get out of the HSM and onto monitoring devices.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::chain::channelmonitor::ChannelMonitorUpdate as nativeChannelMonitorUpdateImport;
@@ -73,7 +75,7 @@ impl ChannelMonitorUpdate {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelMonitorUpdate {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -111,7 +113,7 @@ pub extern "C" fn ChannelMonitorUpdate_set_update_id(this_ptr: &mut ChannelMonit
 impl Clone for ChannelMonitorUpdate {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelMonitorUpdate>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelMonitorUpdate>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -391,14 +393,14 @@ impl HTLCUpdate {
        pub(crate) fn take_inner(mut self) -> *mut nativeHTLCUpdate {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for HTLCUpdate {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeHTLCUpdate>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeHTLCUpdate>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -729,7 +731,7 @@ impl ChannelMonitor {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelMonitor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
index 0841758fba20fe5c6323013f15c7bbcd594c5c47..9ee852bec1178bef843bc083efb0caf5114ba698 100644 (file)
 //! spendable on-chain outputs which the user owns and is responsible for using just as any other
 //! on-chain output which is theirs.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::chain::keysinterface::DelayedPaymentOutputDescriptor as nativeDelayedPaymentOutputDescriptorImport;
@@ -64,7 +66,7 @@ impl DelayedPaymentOutputDescriptor {
        pub(crate) fn take_inner(mut self) -> *mut nativeDelayedPaymentOutputDescriptor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -164,7 +166,7 @@ pub extern "C" fn DelayedPaymentOutputDescriptor_new(mut outpoint_arg: crate::li
 impl Clone for DelayedPaymentOutputDescriptor {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeDelayedPaymentOutputDescriptor>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeDelayedPaymentOutputDescriptor>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -244,7 +246,7 @@ impl StaticPaymentOutputDescriptor {
        pub(crate) fn take_inner(mut self) -> *mut nativeStaticPaymentOutputDescriptor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -304,7 +306,7 @@ pub extern "C" fn StaticPaymentOutputDescriptor_new(mut outpoint_arg: crate::lig
 impl Clone for StaticPaymentOutputDescriptor {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeStaticPaymentOutputDescriptor>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeStaticPaymentOutputDescriptor>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -790,7 +792,7 @@ impl rustBaseSign for BaseSign {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for BaseSign {
+impl core::ops::Deref for BaseSign {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -909,7 +911,7 @@ impl lightning::chain::keysinterface::BaseSign for Sign {
        }
 }
 impl lightning::util::ser::Writeable for Sign {
-       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), ::std::io::Error> {
+       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), crate::c_types::io::Error> {
                let vec = (self.write)(self.this_arg);
                w.write_all(vec.as_slice())
        }
@@ -933,7 +935,7 @@ impl rustSign for Sign {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Sign {
+impl core::ops::Deref for Sign {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -1069,7 +1071,7 @@ impl rustKeysInterface for KeysInterface {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for KeysInterface {
+impl core::ops::Deref for KeysInterface {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -1135,7 +1137,7 @@ impl InMemorySigner {
        pub(crate) fn take_inner(mut self) -> *mut nativeInMemorySigner {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1208,7 +1210,7 @@ pub extern "C" fn InMemorySigner_set_commitment_seed(this_ptr: &mut InMemorySign
 impl Clone for InMemorySigner {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInMemorySigner>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInMemorySigner>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1333,7 +1335,7 @@ impl From<nativeInMemorySigner> for crate::lightning::chain::keysinterface::Base
                let mut rust_obj = InMemorySigner { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = InMemorySigner_as_BaseSign(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(InMemorySigner_free_void);
                ret
        }
@@ -1349,7 +1351,7 @@ pub extern "C" fn InMemorySigner_as_BaseSign(this_arg: &InMemorySigner) -> crate
                release_commitment_secret: InMemorySigner_BaseSign_release_commitment_secret,
                validate_holder_commitment: InMemorySigner_BaseSign_validate_holder_commitment,
 
-               pubkeys: crate::lightning::ln::chan_utils::ChannelPublicKeys { inner: std::ptr::null_mut(), is_owned: true },
+               pubkeys: crate::lightning::ln::chan_utils::ChannelPublicKeys { inner: core::ptr::null_mut(), is_owned: true },
                set_pubkeys: Some(InMemorySigner_BaseSign_set_pubkeys),
                channel_keys_id: InMemorySigner_BaseSign_channel_keys_id,
                sign_counterparty_commitment: InMemorySigner_BaseSign_sign_counterparty_commitment,
@@ -1454,7 +1456,7 @@ impl From<nativeInMemorySigner> for crate::lightning::chain::keysinterface::Sign
                let mut rust_obj = InMemorySigner { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = InMemorySigner_as_Sign(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(InMemorySigner_free_void);
                ret
        }
@@ -1473,7 +1475,7 @@ pub extern "C" fn InMemorySigner_as_Sign(this_arg: &InMemorySigner) -> crate::li
                        release_commitment_secret: InMemorySigner_BaseSign_release_commitment_secret,
                        validate_holder_commitment: InMemorySigner_BaseSign_validate_holder_commitment,
 
-                       pubkeys: crate::lightning::ln::chan_utils::ChannelPublicKeys { inner: std::ptr::null_mut(), is_owned: true },
+                       pubkeys: crate::lightning::ln::chan_utils::ChannelPublicKeys { inner: core::ptr::null_mut(), is_owned: true },
                        set_pubkeys: Some(InMemorySigner_BaseSign_set_pubkeys),
                        channel_keys_id: InMemorySigner_BaseSign_channel_keys_id,
                        sign_counterparty_commitment: InMemorySigner_BaseSign_sign_counterparty_commitment,
@@ -1567,7 +1569,7 @@ impl KeysManager {
        pub(crate) fn take_inner(mut self) -> *mut nativeKeysManager {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1635,7 +1637,7 @@ impl From<nativeKeysManager> for crate::lightning::chain::keysinterface::KeysInt
                let mut rust_obj = KeysManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = KeysManager_as_KeysInterface(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(KeysManager_free_void);
                ret
        }
index 33bc264576fe609a0980ecc95f5c5f61e63dd550..c5e857a536d37df3b9c75e96d4c5e2a2de493aea 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Structs and traits which allow other parts of rust-lightning to interact with the blockchain.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod chaininterface;
 pub mod chainmonitor;
@@ -21,20 +23,24 @@ pub mod transaction;
 pub mod keysinterface;
 mod onchaintx {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod package {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 
@@ -84,14 +90,14 @@ impl BestBlock {
        pub(crate) fn take_inner(mut self) -> *mut nativeBestBlock {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for BestBlock {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeBestBlock>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeBestBlock>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -234,7 +240,7 @@ impl rustAccess for Access {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Access {
+impl core::ops::Deref for Access {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -296,7 +302,7 @@ impl rustListen for Listen {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Listen {
+impl core::ops::Deref for Listen {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -433,7 +439,7 @@ impl rustConfirm for Confirm {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Confirm {
+impl core::ops::Deref for Confirm {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -654,7 +660,7 @@ impl rustWatch<crate::lightning::chain::keysinterface::Sign> for Watch {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Watch {
+impl core::ops::Deref for Watch {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -739,7 +745,7 @@ impl rustFilter for Filter {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Filter {
+impl core::ops::Deref for Filter {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -812,7 +818,7 @@ impl WatchedOutput {
        pub(crate) fn take_inner(mut self) -> *mut nativeWatchedOutput {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -869,7 +875,7 @@ pub extern "C" fn WatchedOutput_new(mut block_hash_arg: crate::c_types::ThirtyTw
 impl Clone for WatchedOutput {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeWatchedOutput>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeWatchedOutput>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -889,9 +895,9 @@ pub extern "C" fn WatchedOutput_clone(orig: &WatchedOutput) -> WatchedOutput {
 #[no_mangle]
 pub extern "C" fn WatchedOutput_hash(o: &WatchedOutput) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
index 59cf6d14296a9f3a01134154362c5d5671d4a415..c5d01eab2006dfba2972d826894161a18098e817 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Types describing on-chain transactions.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::chain::transaction::OutPoint as nativeOutPointImport;
@@ -64,7 +66,7 @@ impl OutPoint {
        pub(crate) fn take_inner(mut self) -> *mut nativeOutPoint {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -102,7 +104,7 @@ pub extern "C" fn OutPoint_new(mut txid_arg: crate::c_types::ThirtyTwoBytes, mut
 impl Clone for OutPoint {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeOutPoint>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeOutPoint>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -131,11 +133,11 @@ pub extern "C" fn OutPoint_eq(a: &OutPoint, b: &OutPoint) -> bool {
 #[no_mangle]
 pub extern "C" fn OutPoint_hash(o: &OutPoint) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Convert an `OutPoint` to a lightning channel id.
 #[must_use]
index 02f7f7b6a2cec40d1b45742b8d159fca6ffd3310..9874c87a264b8e2bd5b4655080f0dfe8ffbf2e5b 100644 (file)
@@ -9,11 +9,13 @@
 //! Various utilities for building scripts and deriving keys related to channels. These are
 //! largely of interest for those implementing chain::keysinterface::Sign message signing by hand.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Gets the weight for an HTLC-Success transaction.
 #[no_mangle]
@@ -159,7 +161,7 @@ impl TxCreationKeys {
        pub(crate) fn take_inner(mut self) -> *mut nativeTxCreationKeys {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -237,7 +239,7 @@ pub extern "C" fn TxCreationKeys_new(mut per_commitment_point_arg: crate::c_type
 impl Clone for TxCreationKeys {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeTxCreationKeys>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeTxCreationKeys>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -316,7 +318,7 @@ impl ChannelPublicKeys {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelPublicKeys {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -408,7 +410,7 @@ pub extern "C" fn ChannelPublicKeys_new(mut funding_pubkey_arg: crate::c_types::
 impl Clone for ChannelPublicKeys {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelPublicKeys>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelPublicKeys>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -520,7 +522,7 @@ impl HTLCOutputInCommitment {
        pub(crate) fn take_inner(mut self) -> *mut nativeHTLCOutputInCommitment {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -609,7 +611,7 @@ pub extern "C" fn HTLCOutputInCommitment_new(mut offered_arg: bool, mut amount_m
 impl Clone for HTLCOutputInCommitment {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeHTLCOutputInCommitment>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeHTLCOutputInCommitment>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -733,7 +735,7 @@ impl ChannelTransactionParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelTransactionParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -779,7 +781,7 @@ pub extern "C" fn ChannelTransactionParameters_set_is_outbound_from_holder(this_
 #[no_mangle]
 pub extern "C" fn ChannelTransactionParameters_get_counterparty_parameters(this_ptr: &ChannelTransactionParameters) -> crate::lightning::ln::chan_utils::CounterpartyChannelTransactionParameters {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().counterparty_parameters;
-       let mut local_inner_val = crate::lightning::ln::chan_utils::CounterpartyChannelTransactionParameters { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::chan_utils::CounterpartyChannelTransactionParameters<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::chan_utils::CounterpartyChannelTransactionParameters { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::chan_utils::CounterpartyChannelTransactionParameters<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The late-bound counterparty channel transaction parameters.
@@ -797,7 +799,7 @@ pub extern "C" fn ChannelTransactionParameters_set_counterparty_parameters(this_
 #[no_mangle]
 pub extern "C" fn ChannelTransactionParameters_get_funding_outpoint(this_ptr: &ChannelTransactionParameters) -> crate::lightning::chain::transaction::OutPoint {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().funding_outpoint;
-       let mut local_inner_val = crate::lightning::chain::transaction::OutPoint { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::chain::transaction::OutPoint<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::chain::transaction::OutPoint { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::chain::transaction::OutPoint<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The late-bound funding outpoint
@@ -840,7 +842,7 @@ pub extern "C" fn ChannelTransactionParameters_new(mut holder_pubkeys_arg: crate
 impl Clone for ChannelTransactionParameters {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelTransactionParameters>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelTransactionParameters>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -903,7 +905,7 @@ impl CounterpartyChannelTransactionParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeCounterpartyChannelTransactionParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -941,7 +943,7 @@ pub extern "C" fn CounterpartyChannelTransactionParameters_new(mut pubkeys_arg:
 impl Clone for CounterpartyChannelTransactionParameters {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeCounterpartyChannelTransactionParameters>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeCounterpartyChannelTransactionParameters>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1070,7 +1072,7 @@ impl DirectedChannelTransactionParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeDirectedChannelTransactionParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1175,7 +1177,7 @@ impl HolderCommitmentTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeHolderCommitmentTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1199,7 +1201,7 @@ pub extern "C" fn HolderCommitmentTransaction_set_counterparty_htlc_sigs(this_pt
 impl Clone for HolderCommitmentTransaction {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeHolderCommitmentTransaction>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeHolderCommitmentTransaction>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1288,7 +1290,7 @@ impl BuiltCommitmentTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeBuiltCommitmentTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1332,7 +1334,7 @@ pub extern "C" fn BuiltCommitmentTransaction_new(mut transaction_arg: crate::c_t
 impl Clone for BuiltCommitmentTransaction {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeBuiltCommitmentTransaction>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeBuiltCommitmentTransaction>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1434,14 +1436,14 @@ impl ClosingTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeClosingTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for ClosingTransaction {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeClosingTransaction>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeClosingTransaction>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1461,11 +1463,11 @@ pub extern "C" fn ClosingTransaction_clone(orig: &ClosingTransaction) -> Closing
 #[no_mangle]
 pub extern "C" fn ClosingTransaction_hash(o: &ClosingTransaction) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Construct an object of the class
 #[must_use]
@@ -1586,7 +1588,7 @@ impl TrustedClosingTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeTrustedClosingTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1669,14 +1671,14 @@ impl CommitmentTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeCommitmentTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for CommitmentTransaction {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeCommitmentTransaction>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeCommitmentTransaction>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1819,7 +1821,7 @@ impl TrustedCommitmentTransaction {
        pub(crate) fn take_inner(mut self) -> *mut nativeTrustedCommitmentTransaction {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
index ddf271c3c4f875b731e741870d0b9076de1cbde9..3910df368f073a0dde7734247517bd47695c699c 100644 (file)
 //! imply it needs to fail HTLCs/payments/channels it manages).
 //!
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod inbound_payment {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 
@@ -114,7 +118,7 @@ impl ChannelManager {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelManager {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -169,7 +173,7 @@ impl ChainParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeChainParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -211,7 +215,7 @@ pub extern "C" fn ChainParameters_new(mut network_arg: crate::bitcoin::network::
 impl Clone for ChainParameters {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChainParameters>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChainParameters>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -298,7 +302,7 @@ impl CounterpartyForwardingInfo {
        pub(crate) fn take_inner(mut self) -> *mut nativeCounterpartyForwardingInfo {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -352,7 +356,7 @@ pub extern "C" fn CounterpartyForwardingInfo_new(mut fee_base_msat_arg: u32, mut
 impl Clone for CounterpartyForwardingInfo {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeCounterpartyForwardingInfo>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeCounterpartyForwardingInfo>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -416,7 +420,7 @@ impl ChannelCounterparty {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelCounterparty {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -476,7 +480,7 @@ pub extern "C" fn ChannelCounterparty_set_unspendable_punishment_reserve(this_pt
 #[no_mangle]
 pub extern "C" fn ChannelCounterparty_get_forwarding_info(this_ptr: &ChannelCounterparty) -> crate::lightning::ln::channelmanager::CounterpartyForwardingInfo {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().forwarding_info;
-       let mut local_inner_val = crate::lightning::ln::channelmanager::CounterpartyForwardingInfo { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::channelmanager::CounterpartyForwardingInfo<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::channelmanager::CounterpartyForwardingInfo { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::channelmanager::CounterpartyForwardingInfo<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Information on the fees and requirements that the counterparty requires when forwarding
@@ -503,7 +507,7 @@ pub extern "C" fn ChannelCounterparty_new(mut node_id_arg: crate::c_types::Publi
 impl Clone for ChannelCounterparty {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelCounterparty>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelCounterparty>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -566,7 +570,7 @@ impl ChannelDetails {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelDetails {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -608,7 +612,7 @@ pub extern "C" fn ChannelDetails_set_counterparty(this_ptr: &mut ChannelDetails,
 #[no_mangle]
 pub extern "C" fn ChannelDetails_get_funding_txo(this_ptr: &ChannelDetails) -> crate::lightning::chain::transaction::OutPoint {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().funding_txo;
-       let mut local_inner_val = crate::lightning::chain::transaction::OutPoint { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::chain::transaction::OutPoint<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::chain::transaction::OutPoint { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::chain::transaction::OutPoint<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The Channel's funding transaction output, if we've negotiated the funding transaction with
@@ -925,7 +929,7 @@ pub extern "C" fn ChannelDetails_new(mut channel_id_arg: crate::c_types::ThirtyT
 impl Clone for ChannelDetails {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelDetails>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelDetails>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1086,7 +1090,7 @@ impl PaymentSendFailure {
                                let mut results_nonref = (*results).clone();
                                let mut local_results_nonref = Vec::new(); for mut item in results_nonref.drain(..) { local_results_nonref.push( { let mut local_results_nonref_0 = match item { Ok(mut o) => crate::c_types::CResultTempl::ok( { () /*o*/ }).into(), Err(mut e) => crate::c_types::CResultTempl::err( { crate::lightning::util::errors::APIError::native_into(e) }).into() }; local_results_nonref_0 }); };
                                let mut failed_paths_retry_nonref = (*failed_paths_retry).clone();
-                               let mut local_failed_paths_retry_nonref = crate::lightning::routing::router::RouteParameters { inner: if failed_paths_retry_nonref.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((failed_paths_retry_nonref.unwrap())) } }, is_owned: true };
+                               let mut local_failed_paths_retry_nonref = crate::lightning::routing::router::RouteParameters { inner: if failed_paths_retry_nonref.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((failed_paths_retry_nonref.unwrap())) } }, is_owned: true };
                                let mut payment_id_nonref = (*payment_id).clone();
                                PaymentSendFailure::PartialFailure {
                                        results: local_results_nonref.into(),
@@ -1118,7 +1122,7 @@ impl PaymentSendFailure {
                        },
                        nativePaymentSendFailure::PartialFailure {mut results, mut failed_paths_retry, mut payment_id, } => {
                                let mut local_results = Vec::new(); for mut item in results.drain(..) { local_results.push( { let mut local_results_0 = match item { Ok(mut o) => crate::c_types::CResultTempl::ok( { () /*o*/ }).into(), Err(mut e) => crate::c_types::CResultTempl::err( { crate::lightning::util::errors::APIError::native_into(e) }).into() }; local_results_0 }); };
-                               let mut local_failed_paths_retry = crate::lightning::routing::router::RouteParameters { inner: if failed_paths_retry.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((failed_paths_retry.unwrap())) } }, is_owned: true };
+                               let mut local_failed_paths_retry = crate::lightning::routing::router::RouteParameters { inner: if failed_paths_retry.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((failed_paths_retry.unwrap())) } }, is_owned: true };
                                PaymentSendFailure::PartialFailure {
                                        results: local_results.into(),
                                        failed_paths_retry: local_failed_paths_retry,
@@ -1687,7 +1691,7 @@ impl From<nativeChannelManager> for crate::lightning::util::events::MessageSendE
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_MessageSendEventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
@@ -1715,7 +1719,7 @@ impl From<nativeChannelManager> for crate::lightning::util::events::EventsProvid
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_EventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
@@ -1740,7 +1744,7 @@ impl From<nativeChannelManager> for crate::lightning::chain::Listen {
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_Listen(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
@@ -1769,7 +1773,7 @@ impl From<nativeChannelManager> for crate::lightning::chain::Confirm {
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_Confirm(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
@@ -1814,7 +1818,7 @@ extern "C" fn ChannelManager_Confirm_transaction_unconfirmed(this_arg: *const c_
 #[must_use]
 #[no_mangle]
 pub extern "C" fn ChannelManager_await_persistable_update_timeout(this_arg: &ChannelManager, mut max_wait: u64) -> bool {
-       let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.await_persistable_update_timeout(std::time::Duration::from_secs(max_wait));
+       let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.await_persistable_update_timeout(core::time::Duration::from_secs(max_wait));
        ret
 }
 
@@ -1840,7 +1844,7 @@ impl From<nativeChannelManager> for crate::lightning::ln::msgs::ChannelMessageHa
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_ChannelMessageHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
@@ -2028,7 +2032,7 @@ impl ChannelManagerReadArgs {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelManagerReadArgs {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
index c0a52b3ee74f39e7df9800b8278ad0614020bdc3..b7829a41c39da210f0b95453998c1cee16955dd7 100644 (file)
 //! [BOLT #9]: https://github.com/lightningnetwork/lightning-rfc/blob/master/09-features.md
 //! [messages]: crate::ln::msgs
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod sealed {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 /// Checks if two InitFeaturess contain equal inner contents.
@@ -84,7 +88,7 @@ pub extern "C" fn ChannelTypeFeatures_eq(a: &ChannelTypeFeatures, b: &ChannelTyp
 impl Clone for InitFeatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInitFeatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInitFeatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -103,7 +107,7 @@ pub extern "C" fn InitFeatures_clone(orig: &InitFeatures) -> InitFeatures {
 impl Clone for NodeFeatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNodeFeatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNodeFeatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -122,7 +126,7 @@ pub extern "C" fn NodeFeatures_clone(orig: &NodeFeatures) -> NodeFeatures {
 impl Clone for ChannelFeatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelFeatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelFeatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -141,7 +145,7 @@ pub extern "C" fn ChannelFeatures_clone(orig: &ChannelFeatures) -> ChannelFeatur
 impl Clone for InvoiceFeatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInvoiceFeatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInvoiceFeatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -160,7 +164,7 @@ pub extern "C" fn InvoiceFeatures_clone(orig: &InvoiceFeatures) -> InvoiceFeatur
 impl Clone for ChannelTypeFeatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelTypeFeatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelTypeFeatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -223,7 +227,7 @@ impl InitFeatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeInitFeatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -274,7 +278,7 @@ impl NodeFeatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeNodeFeatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -325,7 +329,7 @@ impl ChannelFeatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelFeatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -376,7 +380,7 @@ impl InvoiceFeatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeInvoiceFeatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -436,7 +440,7 @@ impl ChannelTypeFeatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelTypeFeatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
index be855e18fad83b4d2b3903e7e12349a33b8b8b89..d95d1b2002d392b1c1ecdbab71bbb2ba859cf91a 100644 (file)
 //! you want to learn things about the network topology (eg get a route for sending a payment),
 //! call into your NetGraphMsgHandler.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod channelmanager;
 pub mod msgs;
@@ -32,28 +34,34 @@ pub mod script;
 pub mod wire;
 mod peer_channel_encryptor {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod channel {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod onion_utils {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
index a5a729c5be06469b7f533c1968c7a8a6c236986e..67ca95ff6395366574800d80a477844d7bb2376a 100644 (file)
 //! raw socket events into your non-internet-facing system and then send routing events back to
 //! track the network on the less-secure system.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::ln::msgs::DecodeError as nativeDecodeErrorImport;
@@ -76,14 +78,14 @@ impl DecodeError {
        pub(crate) fn take_inner(mut self) -> *mut nativeDecodeError {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for DecodeError {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeDecodeError>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeDecodeError>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -146,7 +148,7 @@ impl Init {
        pub(crate) fn take_inner(mut self) -> *mut nativeInit {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -172,7 +174,7 @@ pub extern "C" fn Init_new(mut features_arg: crate::lightning::ln::features::Ini
 impl Clone for Init {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInit>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInit>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -235,7 +237,7 @@ impl ErrorMessage {
        pub(crate) fn take_inner(mut self) -> *mut nativeErrorMessage {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -279,7 +281,7 @@ pub extern "C" fn ErrorMessage_new(mut channel_id_arg: crate::c_types::ThirtyTwo
 impl Clone for ErrorMessage {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeErrorMessage>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeErrorMessage>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -342,7 +344,7 @@ impl Ping {
        pub(crate) fn take_inner(mut self) -> *mut nativePing {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -382,7 +384,7 @@ pub extern "C" fn Ping_new(mut ponglen_arg: u16, mut byteslen_arg: u16) -> Ping
 impl Clone for Ping {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePing>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePing>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -445,7 +447,7 @@ impl Pong {
        pub(crate) fn take_inner(mut self) -> *mut nativePong {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -473,7 +475,7 @@ pub extern "C" fn Pong_new(mut byteslen_arg: u16) -> Pong {
 impl Clone for Pong {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePong>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePong>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -536,7 +538,7 @@ impl OpenChannel {
        pub(crate) fn take_inner(mut self) -> *mut nativeOpenChannel {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -746,7 +748,7 @@ pub extern "C" fn OpenChannel_set_channel_flags(this_ptr: &mut OpenChannel, mut
 #[no_mangle]
 pub extern "C" fn OpenChannel_get_channel_type(this_ptr: &OpenChannel) -> crate::lightning::ln::features::ChannelTypeFeatures {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().channel_type;
-       let mut local_inner_val = crate::lightning::ln::features::ChannelTypeFeatures { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::features::ChannelTypeFeatures<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::features::ChannelTypeFeatures { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::features::ChannelTypeFeatures<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The channel type that this channel will represent. If none is set, we derive the channel
@@ -762,7 +764,7 @@ pub extern "C" fn OpenChannel_set_channel_type(this_ptr: &mut OpenChannel, mut v
 impl Clone for OpenChannel {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeOpenChannel>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeOpenChannel>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -825,7 +827,7 @@ impl AcceptChannel {
        pub(crate) fn take_inner(mut self) -> *mut nativeAcceptChannel {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -986,7 +988,7 @@ pub extern "C" fn AcceptChannel_set_first_per_commitment_point(this_ptr: &mut Ac
 impl Clone for AcceptChannel {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeAcceptChannel>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeAcceptChannel>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1049,7 +1051,7 @@ impl FundingCreated {
        pub(crate) fn take_inner(mut self) -> *mut nativeFundingCreated {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1111,7 +1113,7 @@ pub extern "C" fn FundingCreated_new(mut temporary_channel_id_arg: crate::c_type
 impl Clone for FundingCreated {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeFundingCreated>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeFundingCreated>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1174,7 +1176,7 @@ impl FundingSigned {
        pub(crate) fn take_inner(mut self) -> *mut nativeFundingSigned {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1212,7 +1214,7 @@ pub extern "C" fn FundingSigned_new(mut channel_id_arg: crate::c_types::ThirtyTw
 impl Clone for FundingSigned {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeFundingSigned>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeFundingSigned>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1275,7 +1277,7 @@ impl FundingLocked {
        pub(crate) fn take_inner(mut self) -> *mut nativeFundingLocked {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1313,7 +1315,7 @@ pub extern "C" fn FundingLocked_new(mut channel_id_arg: crate::c_types::ThirtyTw
 impl Clone for FundingLocked {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeFundingLocked>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeFundingLocked>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1376,7 +1378,7 @@ impl Shutdown {
        pub(crate) fn take_inner(mut self) -> *mut nativeShutdown {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1416,7 +1418,7 @@ pub extern "C" fn Shutdown_new(mut channel_id_arg: crate::c_types::ThirtyTwoByte
 impl Clone for Shutdown {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeShutdown>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeShutdown>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1481,7 +1483,7 @@ impl ClosingSignedFeeRange {
        pub(crate) fn take_inner(mut self) -> *mut nativeClosingSignedFeeRange {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1523,7 +1525,7 @@ pub extern "C" fn ClosingSignedFeeRange_new(mut min_fee_satoshis_arg: u64, mut m
 impl Clone for ClosingSignedFeeRange {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeClosingSignedFeeRange>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeClosingSignedFeeRange>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1586,7 +1588,7 @@ impl ClosingSigned {
        pub(crate) fn take_inner(mut self) -> *mut nativeClosingSigned {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1630,7 +1632,7 @@ pub extern "C" fn ClosingSigned_set_signature(this_ptr: &mut ClosingSigned, mut
 #[no_mangle]
 pub extern "C" fn ClosingSigned_get_fee_range(this_ptr: &ClosingSigned) -> crate::lightning::ln::msgs::ClosingSignedFeeRange {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().fee_range;
-       let mut local_inner_val = crate::lightning::ln::msgs::ClosingSignedFeeRange { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ClosingSignedFeeRange<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::msgs::ClosingSignedFeeRange { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ClosingSignedFeeRange<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The minimum and maximum fees which the sender is willing to accept, provided only by new
@@ -1657,7 +1659,7 @@ pub extern "C" fn ClosingSigned_new(mut channel_id_arg: crate::c_types::ThirtyTw
 impl Clone for ClosingSigned {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeClosingSigned>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeClosingSigned>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1720,7 +1722,7 @@ impl UpdateAddHTLC {
        pub(crate) fn take_inner(mut self) -> *mut nativeUpdateAddHTLC {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1782,7 +1784,7 @@ pub extern "C" fn UpdateAddHTLC_set_cltv_expiry(this_ptr: &mut UpdateAddHTLC, mu
 impl Clone for UpdateAddHTLC {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUpdateAddHTLC>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUpdateAddHTLC>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1845,7 +1847,7 @@ impl UpdateFulfillHTLC {
        pub(crate) fn take_inner(mut self) -> *mut nativeUpdateFulfillHTLC {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1895,7 +1897,7 @@ pub extern "C" fn UpdateFulfillHTLC_new(mut channel_id_arg: crate::c_types::Thir
 impl Clone for UpdateFulfillHTLC {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUpdateFulfillHTLC>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUpdateFulfillHTLC>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1958,7 +1960,7 @@ impl UpdateFailHTLC {
        pub(crate) fn take_inner(mut self) -> *mut nativeUpdateFailHTLC {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1987,7 +1989,7 @@ pub extern "C" fn UpdateFailHTLC_set_htlc_id(this_ptr: &mut UpdateFailHTLC, mut
 impl Clone for UpdateFailHTLC {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUpdateFailHTLC>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUpdateFailHTLC>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2050,7 +2052,7 @@ impl UpdateFailMalformedHTLC {
        pub(crate) fn take_inner(mut self) -> *mut nativeUpdateFailMalformedHTLC {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2090,7 +2092,7 @@ pub extern "C" fn UpdateFailMalformedHTLC_set_failure_code(this_ptr: &mut Update
 impl Clone for UpdateFailMalformedHTLC {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUpdateFailMalformedHTLC>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUpdateFailMalformedHTLC>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2153,7 +2155,7 @@ impl CommitmentSigned {
        pub(crate) fn take_inner(mut self) -> *mut nativeCommitmentSigned {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2199,7 +2201,7 @@ pub extern "C" fn CommitmentSigned_new(mut channel_id_arg: crate::c_types::Thirt
 impl Clone for CommitmentSigned {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeCommitmentSigned>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeCommitmentSigned>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2262,7 +2264,7 @@ impl RevokeAndACK {
        pub(crate) fn take_inner(mut self) -> *mut nativeRevokeAndACK {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2312,7 +2314,7 @@ pub extern "C" fn RevokeAndACK_new(mut channel_id_arg: crate::c_types::ThirtyTwo
 impl Clone for RevokeAndACK {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRevokeAndACK>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRevokeAndACK>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2375,7 +2377,7 @@ impl UpdateFee {
        pub(crate) fn take_inner(mut self) -> *mut nativeUpdateFee {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2413,7 +2415,7 @@ pub extern "C" fn UpdateFee_new(mut channel_id_arg: crate::c_types::ThirtyTwoByt
 impl Clone for UpdateFee {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUpdateFee>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUpdateFee>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2479,7 +2481,7 @@ impl DataLossProtect {
        pub(crate) fn take_inner(mut self) -> *mut nativeDataLossProtect {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2519,7 +2521,7 @@ pub extern "C" fn DataLossProtect_new(mut your_last_per_commitment_secret_arg: c
 impl Clone for DataLossProtect {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeDataLossProtect>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeDataLossProtect>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2582,7 +2584,7 @@ impl ChannelReestablish {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelReestablish {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2622,7 +2624,7 @@ pub extern "C" fn ChannelReestablish_set_next_remote_commitment_number(this_ptr:
 impl Clone for ChannelReestablish {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelReestablish>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelReestablish>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -2685,7 +2687,7 @@ impl AnnouncementSignatures {
        pub(crate) fn take_inner(mut self) -> *mut nativeAnnouncementSignatures {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -2747,7 +2749,7 @@ pub extern "C" fn AnnouncementSignatures_new(mut channel_id_arg: crate::c_types:
 impl Clone for AnnouncementSignatures {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeAnnouncementSignatures>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeAnnouncementSignatures>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3040,7 +3042,7 @@ impl UnsignedNodeAnnouncement {
        pub(crate) fn take_inner(mut self) -> *mut nativeUnsignedNodeAnnouncement {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3112,7 +3114,7 @@ pub extern "C" fn UnsignedNodeAnnouncement_set_addresses(this_ptr: &mut Unsigned
 impl Clone for UnsignedNodeAnnouncement {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUnsignedNodeAnnouncement>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUnsignedNodeAnnouncement>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3175,7 +3177,7 @@ impl NodeAnnouncement {
        pub(crate) fn take_inner(mut self) -> *mut nativeNodeAnnouncement {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3213,7 +3215,7 @@ pub extern "C" fn NodeAnnouncement_new(mut signature_arg: crate::c_types::Signat
 impl Clone for NodeAnnouncement {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNodeAnnouncement>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNodeAnnouncement>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3276,7 +3278,7 @@ impl UnsignedChannelAnnouncement {
        pub(crate) fn take_inner(mut self) -> *mut nativeUnsignedChannelAnnouncement {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3360,7 +3362,7 @@ pub extern "C" fn UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr: &mut U
 impl Clone for UnsignedChannelAnnouncement {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUnsignedChannelAnnouncement>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUnsignedChannelAnnouncement>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3423,7 +3425,7 @@ impl ChannelAnnouncement {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelAnnouncement {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3497,7 +3499,7 @@ pub extern "C" fn ChannelAnnouncement_new(mut node_signature_1_arg: crate::c_typ
 impl Clone for ChannelAnnouncement {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelAnnouncement>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelAnnouncement>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3560,7 +3562,7 @@ impl UnsignedChannelUpdate {
        pub(crate) fn take_inner(mut self) -> *mut nativeUnsignedChannelUpdate {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3669,7 +3671,7 @@ pub extern "C" fn UnsignedChannelUpdate_set_fee_proportional_millionths(this_ptr
 impl Clone for UnsignedChannelUpdate {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUnsignedChannelUpdate>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUnsignedChannelUpdate>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3732,7 +3734,7 @@ impl ChannelUpdate {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelUpdate {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3770,7 +3772,7 @@ pub extern "C" fn ChannelUpdate_new(mut signature_arg: crate::c_types::Signature
 impl Clone for ChannelUpdate {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelUpdate>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelUpdate>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3836,7 +3838,7 @@ impl QueryChannelRange {
        pub(crate) fn take_inner(mut self) -> *mut nativeQueryChannelRange {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -3886,7 +3888,7 @@ pub extern "C" fn QueryChannelRange_new(mut chain_hash_arg: crate::c_types::Thir
 impl Clone for QueryChannelRange {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeQueryChannelRange>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeQueryChannelRange>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -3955,7 +3957,7 @@ impl ReplyChannelRange {
        pub(crate) fn take_inner(mut self) -> *mut nativeReplyChannelRange {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4025,7 +4027,7 @@ pub extern "C" fn ReplyChannelRange_new(mut chain_hash_arg: crate::c_types::Thir
 impl Clone for ReplyChannelRange {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeReplyChannelRange>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeReplyChannelRange>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4095,7 +4097,7 @@ impl QueryShortChannelIds {
        pub(crate) fn take_inner(mut self) -> *mut nativeQueryShortChannelIds {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4129,7 +4131,7 @@ pub extern "C" fn QueryShortChannelIds_new(mut chain_hash_arg: crate::c_types::T
 impl Clone for QueryShortChannelIds {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeQueryShortChannelIds>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeQueryShortChannelIds>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4195,7 +4197,7 @@ impl ReplyShortChannelIdsEnd {
        pub(crate) fn take_inner(mut self) -> *mut nativeReplyShortChannelIdsEnd {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4235,7 +4237,7 @@ pub extern "C" fn ReplyShortChannelIdsEnd_new(mut chain_hash_arg: crate::c_types
 impl Clone for ReplyShortChannelIdsEnd {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeReplyShortChannelIdsEnd>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeReplyShortChannelIdsEnd>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4300,7 +4302,7 @@ impl GossipTimestampFilter {
        pub(crate) fn take_inner(mut self) -> *mut nativeGossipTimestampFilter {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4350,7 +4352,7 @@ pub extern "C" fn GossipTimestampFilter_new(mut chain_hash_arg: crate::c_types::
 impl Clone for GossipTimestampFilter {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeGossipTimestampFilter>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeGossipTimestampFilter>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4449,7 +4451,7 @@ impl ErrorAction {
                match native {
                        nativeErrorAction::DisconnectPeer {ref msg, } => {
                                let mut msg_nonref = (*msg).clone();
-                               let mut local_msg_nonref = crate::lightning::ln::msgs::ErrorMessage { inner: if msg_nonref.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((msg_nonref.unwrap())) } }, is_owned: true };
+                               let mut local_msg_nonref = crate::lightning::ln::msgs::ErrorMessage { inner: if msg_nonref.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((msg_nonref.unwrap())) } }, is_owned: true };
                                ErrorAction::DisconnectPeer {
                                        msg: local_msg_nonref,
                                }
@@ -4474,7 +4476,7 @@ impl ErrorAction {
        pub(crate) fn native_into(native: nativeErrorAction) -> Self {
                match native {
                        nativeErrorAction::DisconnectPeer {mut msg, } => {
-                               let mut local_msg = crate::lightning::ln::msgs::ErrorMessage { inner: if msg.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((msg.unwrap())) } }, is_owned: true };
+                               let mut local_msg = crate::lightning::ln::msgs::ErrorMessage { inner: if msg.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((msg.unwrap())) } }, is_owned: true };
                                ErrorAction::DisconnectPeer {
                                        msg: local_msg,
                                }
@@ -4576,7 +4578,7 @@ impl LightningError {
        pub(crate) fn take_inner(mut self) -> *mut nativeLightningError {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4614,7 +4616,7 @@ pub extern "C" fn LightningError_new(mut err_arg: crate::c_types::Str, mut actio
 impl Clone for LightningError {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeLightningError>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeLightningError>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4678,7 +4680,7 @@ impl CommitmentUpdate {
        pub(crate) fn take_inner(mut self) -> *mut nativeCommitmentUpdate {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -4740,7 +4742,7 @@ pub extern "C" fn CommitmentUpdate_set_update_fail_malformed_htlcs(this_ptr: &mu
 #[no_mangle]
 pub extern "C" fn CommitmentUpdate_get_update_fee(this_ptr: &CommitmentUpdate) -> crate::lightning::ln::msgs::UpdateFee {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().update_fee;
-       let mut local_inner_val = crate::lightning::ln::msgs::UpdateFee { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::UpdateFee<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::msgs::UpdateFee { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::UpdateFee<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// An update_fee message which should be sent
@@ -4783,7 +4785,7 @@ pub extern "C" fn CommitmentUpdate_new(mut update_add_htlcs_arg: crate::c_types:
 impl Clone for CommitmentUpdate {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeCommitmentUpdate>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeCommitmentUpdate>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -4961,7 +4963,7 @@ impl rustChannelMessageHandler for ChannelMessageHandler {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for ChannelMessageHandler {
+impl core::ops::Deref for ChannelMessageHandler {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -5126,7 +5128,7 @@ impl rustRoutingMessageHandler for RoutingMessageHandler {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for RoutingMessageHandler {
+impl core::ops::Deref for RoutingMessageHandler {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -5144,11 +5146,13 @@ impl Drop for RoutingMessageHandler {
 }
 mod fuzzy_internal_msgs {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 #[no_mangle]
index e701527548fec9bcf2f629c4b4d20fe0e54f3f0e..9d712c84d6ffe8ca0b2b1f917e35da2153f2ee42 100644 (file)
 //! call into the provided message handlers (probably a ChannelManager and NetGraphmsgHandler) with messages
 //! they should handle, and encoding/sending response messages.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Handler for BOLT1-compliant messages.
 #[repr(C)]
@@ -56,7 +58,7 @@ pub(crate) extern "C" fn CustomMessageHandler_clone_fields(orig: &CustomMessageH
 }
 impl lightning::ln::wire::CustomMessageReader for CustomMessageHandler {
        type CustomMessage = crate::lightning::ln::wire::Type;
-       fn read<R:std::io::Read>(&self, mut message_type: u16, mut buffer: &mut R) -> Result<Option<crate::lightning::ln::wire::Type>, lightning::ln::msgs::DecodeError> {
+       fn read<R:crate::c_types::io::Read>(&self, mut message_type: u16, mut buffer: &mut R) -> Result<Option<crate::lightning::ln::wire::Type>, lightning::ln::msgs::DecodeError> {
                let mut ret = (self.CustomMessageReader.read)(self.CustomMessageReader.this_arg, message_type, crate::c_types::u8slice::from_vec(&crate::c_types::reader_to_vec(buffer)));
                let mut local_ret = match ret.result_ok { true => Ok( { let mut local_ret_0 = { /* (*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.result)) })*/ let ret_0_opt = (*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.result)) }); { } if ret_0_opt.is_none() { None } else { Some({ ret_0_opt.take() }) } }; local_ret_0 }), false => Err( { *unsafe { Box::from_raw((*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.err)) }).take_inner()) } })};
                local_ret
@@ -79,7 +81,7 @@ impl rustCustomMessageHandler for CustomMessageHandler {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for CustomMessageHandler {
+impl core::ops::Deref for CustomMessageHandler {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -143,7 +145,7 @@ impl IgnoringMessageHandler {
        pub(crate) fn take_inner(mut self) -> *mut nativeIgnoringMessageHandler {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -159,7 +161,7 @@ impl From<nativeIgnoringMessageHandler> for crate::lightning::util::events::Mess
                let mut rust_obj = IgnoringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = IgnoringMessageHandler_as_MessageSendEventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(IgnoringMessageHandler_free_void);
                ret
        }
@@ -187,7 +189,7 @@ impl From<nativeIgnoringMessageHandler> for crate::lightning::ln::msgs::RoutingM
                let mut rust_obj = IgnoringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = IgnoringMessageHandler_as_RoutingMessageHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(IgnoringMessageHandler_free_void);
                ret
        }
@@ -238,7 +240,7 @@ extern "C" fn IgnoringMessageHandler_RoutingMessageHandler_handle_channel_update
 #[must_use]
 extern "C" fn IgnoringMessageHandler_RoutingMessageHandler_get_next_channel_announcements(this_arg: *const c_void, mut _starting_point: u64, mut _batch_amount: u8) -> crate::c_types::derived::CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
        let mut ret = <nativeIgnoringMessageHandler as lightning::ln::msgs::RoutingMessageHandler<>>::get_next_channel_announcements(unsafe { &mut *(this_arg as *mut nativeIgnoringMessageHandler) }, _starting_point, _batch_amount);
-       let mut local_ret = Vec::new(); for mut item in ret.drain(..) { local_ret.push( { let (mut orig_ret_0_0, mut orig_ret_0_1, mut orig_ret_0_2) = item; let mut local_orig_ret_0_1 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_1.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_1.unwrap())) } }, is_owned: true }; let mut local_orig_ret_0_2 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_2.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_2.unwrap())) } }, is_owned: true }; let mut local_ret_0 = (crate::lightning::ln::msgs::ChannelAnnouncement { inner: ObjOps::heap_alloc(orig_ret_0_0), is_owned: true }, local_orig_ret_0_1, local_orig_ret_0_2).into(); local_ret_0 }); };
+       let mut local_ret = Vec::new(); for mut item in ret.drain(..) { local_ret.push( { let (mut orig_ret_0_0, mut orig_ret_0_1, mut orig_ret_0_2) = item; let mut local_orig_ret_0_1 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_1.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_1.unwrap())) } }, is_owned: true }; let mut local_orig_ret_0_2 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_2.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_2.unwrap())) } }, is_owned: true }; let mut local_ret_0 = (crate::lightning::ln::msgs::ChannelAnnouncement { inner: ObjOps::heap_alloc(orig_ret_0_0), is_owned: true }, local_orig_ret_0_1, local_orig_ret_0_2).into(); local_ret_0 }); };
        local_ret.into()
 }
 #[must_use]
@@ -287,7 +289,7 @@ impl From<nativeIgnoringMessageHandler> for crate::lightning::ln::wire::CustomMe
                let mut rust_obj = IgnoringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = IgnoringMessageHandler_as_CustomMessageReader(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(IgnoringMessageHandler_free_void);
                ret
        }
@@ -315,7 +317,7 @@ impl From<nativeIgnoringMessageHandler> for crate::lightning::ln::peer_handler::
                let mut rust_obj = IgnoringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = IgnoringMessageHandler_as_CustomMessageHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(IgnoringMessageHandler_free_void);
                ret
        }
@@ -396,7 +398,7 @@ impl ErroringMessageHandler {
        pub(crate) fn take_inner(mut self) -> *mut nativeErroringMessageHandler {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -413,7 +415,7 @@ impl From<nativeErroringMessageHandler> for crate::lightning::util::events::Mess
                let mut rust_obj = ErroringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ErroringMessageHandler_as_MessageSendEventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ErroringMessageHandler_free_void);
                ret
        }
@@ -441,7 +443,7 @@ impl From<nativeErroringMessageHandler> for crate::lightning::ln::msgs::ChannelM
                let mut rust_obj = ErroringMessageHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ErroringMessageHandler_as_ChannelMessageHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ErroringMessageHandler_free_void);
                ret
        }
@@ -589,7 +591,7 @@ impl MessageHandler {
        pub(crate) fn take_inner(mut self) -> *mut nativeMessageHandler {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -706,12 +708,12 @@ pub(crate) extern "C" fn SocketDescriptor_clone_fields(orig: &SocketDescriptor)
                free: Clone::clone(&orig.free),
        }
 }
-impl std::cmp::Eq for SocketDescriptor {}
-impl std::cmp::PartialEq for SocketDescriptor {
+impl core::cmp::Eq for SocketDescriptor {}
+impl core::cmp::PartialEq for SocketDescriptor {
        fn eq(&self, o: &Self) -> bool { (self.eq)(self.this_arg, o) }
 }
-impl std::hash::Hash for SocketDescriptor {
-       fn hash<H: std::hash::Hasher>(&self, hasher: &mut H) { hasher.write_u64((self.hash)(self.this_arg)) }
+impl core::hash::Hash for SocketDescriptor {
+       fn hash<H: core::hash::Hasher>(&self, hasher: &mut H) { hasher.write_u64((self.hash)(self.this_arg)) }
 }
 #[no_mangle]
 /// Creates a copy of a SocketDescriptor
@@ -740,7 +742,7 @@ impl rustSocketDescriptor for SocketDescriptor {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for SocketDescriptor {
+impl core::ops::Deref for SocketDescriptor {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -805,7 +807,7 @@ impl PeerHandleError {
        pub(crate) fn take_inner(mut self) -> *mut nativePeerHandleError {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -833,7 +835,7 @@ pub extern "C" fn PeerHandleError_new(mut no_connection_possible_arg: bool) -> P
 impl Clone for PeerHandleError {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePeerHandleError>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePeerHandleError>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -914,7 +916,7 @@ impl PeerManager {
        pub(crate) fn take_inner(mut self) -> *mut nativePeerManager {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
index b171adbaf082e1230a2720202fd45acd34f46bd6..fe5c68110db96e0d945e71b0595b3eb811e56e6a 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Abstractions for scripts used in the Lightning Network.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::ln::script::ShutdownScript as nativeShutdownScriptImport;
@@ -63,14 +65,14 @@ impl ShutdownScript {
        pub(crate) fn take_inner(mut self) -> *mut nativeShutdownScript {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for ShutdownScript {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeShutdownScript>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeShutdownScript>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -133,7 +135,7 @@ impl InvalidShutdownScript {
        pub(crate) fn take_inner(mut self) -> *mut nativeInvalidShutdownScript {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -163,7 +165,7 @@ pub extern "C" fn InvalidShutdownScript_new(mut script_arg: crate::c_types::deri
 impl Clone for InvalidShutdownScript {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInvalidShutdownScript>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInvalidShutdownScript>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
index 5a943a2e609b47becfd06a6a17a1540b99117e19..d0ae9fc4d03413cdc3b2fd704f68f1cb6cb8e36e 100644 (file)
 //! 
 //! [BOLT #1]: https://github.com/lightningnetwork/lightning-rfc/blob/master/01-messaging.md
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Trait to be implemented by custom message (unrelated to the channel/gossip LN layers)
 /// decoders.
@@ -48,7 +50,7 @@ pub(crate) extern "C" fn CustomMessageReader_clone_fields(orig: &CustomMessageRe
 use lightning::ln::wire::CustomMessageReader as rustCustomMessageReader;
 impl rustCustomMessageReader for CustomMessageReader {
        type CustomMessage = crate::lightning::ln::wire::Type;
-       fn read<R:std::io::Read>(&self, mut message_type: u16, mut buffer: &mut R) -> Result<Option<crate::lightning::ln::wire::Type>, lightning::ln::msgs::DecodeError> {
+       fn read<R:crate::c_types::io::Read>(&self, mut message_type: u16, mut buffer: &mut R) -> Result<Option<crate::lightning::ln::wire::Type>, lightning::ln::msgs::DecodeError> {
                let mut ret = (self.read)(self.this_arg, message_type, crate::c_types::u8slice::from_vec(&crate::c_types::reader_to_vec(buffer)));
                let mut local_ret = match ret.result_ok { true => Ok( { let mut local_ret_0 = { /* (*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.result)) })*/ let ret_0_opt = (*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.result)) }); { } if ret_0_opt.is_none() { None } else { Some({ ret_0_opt.take() }) } }; local_ret_0 }), false => Err( { *unsafe { Box::from_raw((*unsafe { Box::from_raw(<*mut _>::take_ptr(&mut ret.contents.err)) }).take_inner()) } })};
                local_ret
@@ -57,7 +59,7 @@ impl rustCustomMessageReader for CustomMessageReader {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for CustomMessageReader {
+impl core::ops::Deref for CustomMessageReader {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -75,11 +77,13 @@ impl Drop for CustomMessageReader {
 }
 mod encode {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 /// Defines a type identifier for sending messages over the wire.
@@ -119,7 +123,7 @@ impl core::fmt::Debug for Type {
        }
 }
 impl lightning::util::ser::Writeable for Type {
-       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), ::std::io::Error> {
+       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), crate::c_types::io::Error> {
                let vec = (self.write)(self.this_arg);
                w.write_all(vec.as_slice())
        }
@@ -135,7 +139,7 @@ impl rustType for Type {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Type {
+impl core::ops::Deref for Type {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
index 659087a9857627c3941c9ecc2296dac26748c3c7..7fbf9350c09f45cf5598f37cdb3e5da9de4ede56 100644 (file)
 //! generated/etc. This makes it a good candidate for tight integration into an existing wallet
 //! instead of having a rather-separate lightning appendage to a wallet.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod util;
 pub mod chain;
@@ -28,10 +30,12 @@ pub mod ln;
 pub mod routing;
 mod prelude {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
index 40f2cd2123eb8fd8c266df92230b58838cf0d86b..278665651de0e258d1e06159ed6a8227c889be4e 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Structs and impls for receiving messages about the network and storing the topology live here.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod network_graph;
 pub mod router;
index 6356160ff85c93296312dd1e528bdf1bc7a2cbd0..15fd9c46fe99678f0c7170007307a5ce53a914e9 100644 (file)
@@ -8,11 +8,13 @@
 
 //! The top-level network map tracking logic lives here.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::routing::network_graph::NodeId as nativeNodeIdImport;
@@ -61,14 +63,14 @@ impl NodeId {
        pub(crate) fn take_inner(mut self) -> *mut nativeNodeId {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for NodeId {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNodeId>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNodeId>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -105,11 +107,11 @@ pub extern "C" fn NodeId_as_slice(this_arg: &NodeId) -> crate::c_types::u8slice
 #[no_mangle]
 pub extern "C" fn NodeId_hash(o: &NodeId) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 #[no_mangle]
 /// Serialize the NodeId object into a byte array which can be read by NodeId_read
@@ -174,14 +176,14 @@ impl NetworkGraph {
        pub(crate) fn take_inner(mut self) -> *mut nativeNetworkGraph {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for NetworkGraph {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNetworkGraph>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNetworkGraph>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -244,7 +246,7 @@ impl ReadOnlyNetworkGraph {
        pub(crate) fn take_inner(mut self) -> *mut nativeReadOnlyNetworkGraph {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -430,7 +432,7 @@ impl From<nativeNetGraphMsgHandler> for crate::lightning::util::events::EventHan
                let mut rust_obj = NetGraphMsgHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = NetGraphMsgHandler_as_EventHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(NetGraphMsgHandler_free_void);
                ret
        }
@@ -504,7 +506,7 @@ impl NetGraphMsgHandler {
        pub(crate) fn take_inner(mut self) -> *mut nativeNetGraphMsgHandler {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -535,7 +537,7 @@ impl From<nativeNetGraphMsgHandler> for crate::lightning::ln::msgs::RoutingMessa
                let mut rust_obj = NetGraphMsgHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = NetGraphMsgHandler_as_RoutingMessageHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(NetGraphMsgHandler_free_void);
                ret
        }
@@ -586,7 +588,7 @@ extern "C" fn NetGraphMsgHandler_RoutingMessageHandler_handle_channel_update(thi
 #[must_use]
 extern "C" fn NetGraphMsgHandler_RoutingMessageHandler_get_next_channel_announcements(this_arg: *const c_void, mut starting_point: u64, mut batch_amount: u8) -> crate::c_types::derived::CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
        let mut ret = <nativeNetGraphMsgHandler as lightning::ln::msgs::RoutingMessageHandler<>>::get_next_channel_announcements(unsafe { &mut *(this_arg as *mut nativeNetGraphMsgHandler) }, starting_point, batch_amount);
-       let mut local_ret = Vec::new(); for mut item in ret.drain(..) { local_ret.push( { let (mut orig_ret_0_0, mut orig_ret_0_1, mut orig_ret_0_2) = item; let mut local_orig_ret_0_1 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_1.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_1.unwrap())) } }, is_owned: true }; let mut local_orig_ret_0_2 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_2.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_2.unwrap())) } }, is_owned: true }; let mut local_ret_0 = (crate::lightning::ln::msgs::ChannelAnnouncement { inner: ObjOps::heap_alloc(orig_ret_0_0), is_owned: true }, local_orig_ret_0_1, local_orig_ret_0_2).into(); local_ret_0 }); };
+       let mut local_ret = Vec::new(); for mut item in ret.drain(..) { local_ret.push( { let (mut orig_ret_0_0, mut orig_ret_0_1, mut orig_ret_0_2) = item; let mut local_orig_ret_0_1 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_1.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_1.unwrap())) } }, is_owned: true }; let mut local_orig_ret_0_2 = crate::lightning::ln::msgs::ChannelUpdate { inner: if orig_ret_0_2.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((orig_ret_0_2.unwrap())) } }, is_owned: true }; let mut local_ret_0 = (crate::lightning::ln::msgs::ChannelAnnouncement { inner: ObjOps::heap_alloc(orig_ret_0_0), is_owned: true }, local_orig_ret_0_1, local_orig_ret_0_2).into(); local_ret_0 }); };
        local_ret.into()
 }
 #[must_use]
@@ -629,7 +631,7 @@ impl From<nativeNetGraphMsgHandler> for crate::lightning::util::events::MessageS
                let mut rust_obj = NetGraphMsgHandler { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = NetGraphMsgHandler_as_MessageSendEventsProvider(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(NetGraphMsgHandler_free_void);
                ret
        }
@@ -700,7 +702,7 @@ impl DirectionalChannelInfo {
        pub(crate) fn take_inner(mut self) -> *mut nativeDirectionalChannelInfo {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -783,7 +785,7 @@ pub extern "C" fn DirectionalChannelInfo_set_fees(this_ptr: &mut DirectionalChan
 #[no_mangle]
 pub extern "C" fn DirectionalChannelInfo_get_last_update_message(this_ptr: &DirectionalChannelInfo) -> crate::lightning::ln::msgs::ChannelUpdate {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().last_update_message;
-       let mut local_inner_val = crate::lightning::ln::msgs::ChannelUpdate { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ChannelUpdate<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::msgs::ChannelUpdate { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ChannelUpdate<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Most recent update for the channel received from the network
@@ -816,7 +818,7 @@ pub extern "C" fn DirectionalChannelInfo_new(mut last_update_arg: u32, mut enabl
 impl Clone for DirectionalChannelInfo {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeDirectionalChannelInfo>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeDirectionalChannelInfo>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -896,7 +898,7 @@ impl ChannelInfo {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelInfo {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -928,7 +930,7 @@ pub extern "C" fn ChannelInfo_set_node_one(this_ptr: &mut ChannelInfo, mut val:
 #[no_mangle]
 pub extern "C" fn ChannelInfo_get_one_to_two(this_ptr: &ChannelInfo) -> crate::lightning::routing::network_graph::DirectionalChannelInfo {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().one_to_two;
-       let mut local_inner_val = crate::lightning::routing::network_graph::DirectionalChannelInfo { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::DirectionalChannelInfo<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::routing::network_graph::DirectionalChannelInfo { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::DirectionalChannelInfo<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Details about the first direction of a channel
@@ -956,7 +958,7 @@ pub extern "C" fn ChannelInfo_set_node_two(this_ptr: &mut ChannelInfo, mut val:
 #[no_mangle]
 pub extern "C" fn ChannelInfo_get_two_to_one(this_ptr: &ChannelInfo) -> crate::lightning::routing::network_graph::DirectionalChannelInfo {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().two_to_one;
-       let mut local_inner_val = crate::lightning::routing::network_graph::DirectionalChannelInfo { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::DirectionalChannelInfo<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::routing::network_graph::DirectionalChannelInfo { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::DirectionalChannelInfo<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Details about the second direction of a channel
@@ -989,7 +991,7 @@ pub extern "C" fn ChannelInfo_set_capacity_sats(this_ptr: &mut ChannelInfo, mut
 #[no_mangle]
 pub extern "C" fn ChannelInfo_get_announcement_message(this_ptr: &ChannelInfo) -> crate::lightning::ln::msgs::ChannelAnnouncement {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().announcement_message;
-       let mut local_inner_val = crate::lightning::ln::msgs::ChannelAnnouncement { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ChannelAnnouncement<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::msgs::ChannelAnnouncement { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::ChannelAnnouncement<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// An initial announcement of the channel
@@ -1006,7 +1008,7 @@ pub extern "C" fn ChannelInfo_set_announcement_message(this_ptr: &mut ChannelInf
 impl Clone for ChannelInfo {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelInfo>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelInfo>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1085,7 +1087,7 @@ impl RoutingFees {
        pub(crate) fn take_inner(mut self) -> *mut nativeRoutingFees {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1134,7 +1136,7 @@ pub extern "C" fn RoutingFees_eq(a: &RoutingFees, b: &RoutingFees) -> bool {
 impl Clone for RoutingFees {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRoutingFees>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRoutingFees>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1154,11 +1156,11 @@ pub extern "C" fn RoutingFees_clone(orig: &RoutingFees) -> RoutingFees {
 #[no_mangle]
 pub extern "C" fn RoutingFees_hash(o: &RoutingFees) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 #[no_mangle]
 /// Serialize the RoutingFees object into a byte array which can be read by RoutingFees_read
@@ -1223,7 +1225,7 @@ impl NodeAnnouncementInfo {
        pub(crate) fn take_inner(mut self) -> *mut nativeNodeAnnouncementInfo {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1292,7 +1294,7 @@ pub extern "C" fn NodeAnnouncementInfo_set_addresses(this_ptr: &mut NodeAnnounce
 #[no_mangle]
 pub extern "C" fn NodeAnnouncementInfo_get_announcement_message(this_ptr: &NodeAnnouncementInfo) -> crate::lightning::ln::msgs::NodeAnnouncement {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().announcement_message;
-       let mut local_inner_val = crate::lightning::ln::msgs::NodeAnnouncement { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::NodeAnnouncement<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::msgs::NodeAnnouncement { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::msgs::NodeAnnouncement<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// An initial announcement of the node
@@ -1324,7 +1326,7 @@ pub extern "C" fn NodeAnnouncementInfo_new(mut features_arg: crate::lightning::l
 impl Clone for NodeAnnouncementInfo {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNodeAnnouncementInfo>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNodeAnnouncementInfo>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1403,7 +1405,7 @@ impl NodeInfo {
        pub(crate) fn take_inner(mut self) -> *mut nativeNodeInfo {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1421,7 +1423,7 @@ pub extern "C" fn NodeInfo_set_channels(this_ptr: &mut NodeInfo, mut val: crate:
 #[no_mangle]
 pub extern "C" fn NodeInfo_get_lowest_inbound_channel_fees(this_ptr: &NodeInfo) -> crate::lightning::routing::network_graph::RoutingFees {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().lowest_inbound_channel_fees;
-       let mut local_inner_val = crate::lightning::routing::network_graph::RoutingFees { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::RoutingFees<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::routing::network_graph::RoutingFees { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::RoutingFees<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Lowest fees enabling routing via any of the enabled, known channels to a node.
@@ -1442,7 +1444,7 @@ pub extern "C" fn NodeInfo_set_lowest_inbound_channel_fees(this_ptr: &mut NodeIn
 #[no_mangle]
 pub extern "C" fn NodeInfo_get_announcement_info(this_ptr: &NodeInfo) -> crate::lightning::routing::network_graph::NodeAnnouncementInfo {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().announcement_info;
-       let mut local_inner_val = crate::lightning::routing::network_graph::NodeAnnouncementInfo { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::NodeAnnouncementInfo<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::routing::network_graph::NodeAnnouncementInfo { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::network_graph::NodeAnnouncementInfo<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// More information about a node from node_announcement.
@@ -1471,7 +1473,7 @@ pub extern "C" fn NodeInfo_new(mut channels_arg: crate::c_types::derived::CVec_u
 impl Clone for NodeInfo {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeNodeInfo>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeNodeInfo>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
index af3895293c3b0f49c4d0f0db911c41d2cdac8af5..4e2a6f28472da96e4a9adf2fb899d8b4b8c0b0ea 100644 (file)
 //! You probably want to create a NetGraphMsgHandler and use that as your RoutingMessageHandler and then
 //! interrogate it to get routes for your own payments.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::routing::router::RouteHop as nativeRouteHopImport;
@@ -64,7 +66,7 @@ impl RouteHop {
        pub(crate) fn take_inner(mut self) -> *mut nativeRouteHop {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -160,7 +162,7 @@ pub extern "C" fn RouteHop_new(mut pubkey_arg: crate::c_types::PublicKey, mut no
 impl Clone for RouteHop {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRouteHop>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRouteHop>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -180,11 +182,11 @@ pub extern "C" fn RouteHop_clone(orig: &RouteHop) -> RouteHop {
 #[no_mangle]
 pub extern "C" fn RouteHop_hash(o: &RouteHop) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two RouteHops contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -259,7 +261,7 @@ impl Route {
        pub(crate) fn take_inner(mut self) -> *mut nativeRoute {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -296,7 +298,7 @@ pub extern "C" fn Route_set_paths(this_ptr: &mut Route, mut val: crate::c_types:
 #[no_mangle]
 pub extern "C" fn Route_get_payee(this_ptr: &Route) -> crate::lightning::routing::router::Payee {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().payee;
-       let mut local_inner_val = crate::lightning::routing::router::Payee { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::router::Payee<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::routing::router::Payee { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::routing::router::Payee<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// The `payee` parameter passed to [`find_route`].
@@ -325,7 +327,7 @@ pub extern "C" fn Route_new(mut paths_arg: crate::c_types::derived::CVec_CVec_Ro
 impl Clone for Route {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRoute>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRoute>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -345,11 +347,11 @@ pub extern "C" fn Route_clone(orig: &Route) -> Route {
 #[no_mangle]
 pub extern "C" fn Route_hash(o: &Route) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Routes contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -447,7 +449,7 @@ impl RouteParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeRouteParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -497,7 +499,7 @@ pub extern "C" fn RouteParameters_new(mut payee_arg: crate::lightning::routing::
 impl Clone for RouteParameters {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRouteParameters>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRouteParameters>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -576,7 +578,7 @@ impl Payee {
        pub(crate) fn take_inner(mut self) -> *mut nativePayee {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -602,7 +604,7 @@ pub extern "C" fn Payee_set_pubkey(this_ptr: &mut Payee, mut val: crate::c_types
 #[no_mangle]
 pub extern "C" fn Payee_get_features(this_ptr: &Payee) -> crate::lightning::ln::features::InvoiceFeatures {
        let mut inner_val = &mut this_ptr.get_native_mut_ref().features;
-       let mut local_inner_val = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if inner_val.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
+       let mut local_inner_val = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if inner_val.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (inner_val.as_ref().unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
        local_inner_val
 }
 /// Features supported by the payee.
@@ -661,7 +663,7 @@ pub extern "C" fn Payee_new(mut pubkey_arg: crate::c_types::PublicKey, mut featu
 impl Clone for Payee {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePayee>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePayee>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -681,11 +683,11 @@ pub extern "C" fn Payee_clone(orig: &Payee) -> Payee {
 #[no_mangle]
 pub extern "C" fn Payee_hash(o: &Payee) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Payees contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -775,7 +777,7 @@ impl RouteHint {
        pub(crate) fn take_inner(mut self) -> *mut nativeRouteHint {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -802,7 +804,7 @@ pub extern "C" fn RouteHint_new(mut a_arg: crate::c_types::derived::CVec_RouteHi
 impl Clone for RouteHint {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRouteHint>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRouteHint>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -822,11 +824,11 @@ pub extern "C" fn RouteHint_clone(orig: &RouteHint) -> RouteHint {
 #[no_mangle]
 pub extern "C" fn RouteHint_hash(o: &RouteHint) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two RouteHints contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -900,7 +902,7 @@ impl RouteHintHop {
        pub(crate) fn take_inner(mut self) -> *mut nativeRouteHintHop {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -992,7 +994,7 @@ pub extern "C" fn RouteHintHop_new(mut src_node_id_arg: crate::c_types::PublicKe
 impl Clone for RouteHintHop {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRouteHintHop>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRouteHintHop>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1012,11 +1014,11 @@ pub extern "C" fn RouteHintHop_clone(orig: &RouteHintHop) -> RouteHintHop {
 #[no_mangle]
 pub extern "C" fn RouteHintHop_hash(o: &RouteHintHop) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two RouteHintHops contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1075,7 +1077,7 @@ pub extern "C" fn RouteHintHop_read(ser: crate::c_types::u8slice) -> crate::c_ty
 /// Note that first_hops (or a relevant inner pointer) may be NULL or all-0s to represent None
 #[no_mangle]
 pub extern "C" fn find_route(mut our_node_pubkey: crate::c_types::PublicKey, params: &crate::lightning::routing::router::RouteParameters, network: &crate::lightning::routing::network_graph::NetworkGraph, first_hops: *mut crate::c_types::derived::CVec_ChannelDetailsZ, mut logger: crate::lightning::util::logger::Logger, scorer: &crate::lightning::routing::scoring::Score) -> crate::c_types::derived::CResult_RouteLightningErrorZ {
-       let mut local_first_hops_base = if first_hops == std::ptr::null_mut() { None } else { Some( { let mut local_first_hops_0 = Vec::new(); for mut item in unsafe { &mut *first_hops }.as_slice().iter() { local_first_hops_0.push( { item.get_native_ref() }); }; local_first_hops_0 }) }; let mut local_first_hops = local_first_hops_base.as_ref().map(|a| &a[..]);
+       let mut local_first_hops_base = if first_hops == core::ptr::null_mut() { None } else { Some( { let mut local_first_hops_0 = Vec::new(); for mut item in unsafe { &mut *first_hops }.as_slice().iter() { local_first_hops_0.push( { item.get_native_ref() }); }; local_first_hops_0 }) }; let mut local_first_hops = local_first_hops_base.as_ref().map(|a| &a[..]);
        let mut ret = lightning::routing::router::find_route(&our_node_pubkey.into_rust(), params.get_native_ref(), network.get_native_ref(), local_first_hops, logger, scorer);
        let mut local_ret = match ret { Ok(mut o) => crate::c_types::CResultTempl::ok( { crate::lightning::routing::router::Route { inner: ObjOps::heap_alloc(o), is_owned: true } }).into(), Err(mut e) => crate::c_types::CResultTempl::err( { crate::lightning::ln::msgs::LightningError { inner: ObjOps::heap_alloc(e), is_owned: true } }).into() };
        local_ret
index bc3af0acfedf6141edabe966274d99a4e5b77735..df292b1fc274e51a0ae3e9c2b6283ea58c1affd5 100644 (file)
 //!
 //! [`find_route`]: crate::routing::router::find_route
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// An interface used to score payment channels for path finding.
 ///
@@ -102,7 +104,7 @@ pub(crate) extern "C" fn Score_clone_fields(orig: &Score) -> Score {
        }
 }
 impl lightning::util::ser::Writeable for Score {
-       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), ::std::io::Error> {
+       fn write<W: lightning::util::ser::Writer>(&self, w: &mut W) -> Result<(), crate::c_types::io::Error> {
                let vec = (self.write)(self.this_arg);
                w.write_all(vec.as_slice())
        }
@@ -127,7 +129,7 @@ impl rustScore for Score {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Score {
+impl core::ops::Deref for Score {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -185,7 +187,7 @@ impl<'a> rustLockableScore<'a> for LockableScore {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for LockableScore {
+impl core::ops::Deref for LockableScore {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -248,7 +250,7 @@ impl MultiThreadedLockableScore {
        pub(crate) fn take_inner(mut self) -> *mut nativeMultiThreadedLockableScore {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -314,7 +316,7 @@ impl Scorer {
        pub(crate) fn take_inner(mut self) -> *mut nativeScorer {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -365,7 +367,7 @@ impl ScoringParameters {
        pub(crate) fn take_inner(mut self) -> *mut nativeScoringParameters {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -482,7 +484,7 @@ pub extern "C" fn ScoringParameters_get_failure_penalty_half_life(this_ptr: &Sco
 /// [`failure_penalty_msat`]: Self::failure_penalty_msat
 #[no_mangle]
 pub extern "C" fn ScoringParameters_set_failure_penalty_half_life(this_ptr: &mut ScoringParameters, mut val: u64) {
-       unsafe { &mut *ObjOps::untweak_ptr(this_ptr.inner) }.failure_penalty_half_life = std::time::Duration::from_secs(val);
+       unsafe { &mut *ObjOps::untweak_ptr(this_ptr.inner) }.failure_penalty_half_life = core::time::Duration::from_secs(val);
 }
 /// Constructs a new ScoringParameters given each field
 #[must_use]
@@ -493,7 +495,7 @@ pub extern "C" fn ScoringParameters_new(mut base_penalty_msat_arg: u64, mut fail
                failure_penalty_msat: failure_penalty_msat_arg,
                overuse_penalty_start_1024th: overuse_penalty_start_1024th_arg,
                overuse_penalty_msat_per_1024th: overuse_penalty_msat_per_1024th_arg,
-               failure_penalty_half_life: std::time::Duration::from_secs(failure_penalty_half_life_arg),
+               failure_penalty_half_life: core::time::Duration::from_secs(failure_penalty_half_life_arg),
        }), is_owned: true }
 }
 #[no_mangle]
@@ -537,7 +539,7 @@ impl From<nativeScorer> for crate::lightning::routing::scoring::Score {
                let mut rust_obj = Scorer { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = Scorer_as_Score(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(Scorer_free_void);
                ret
        }
@@ -589,10 +591,12 @@ pub extern "C" fn Scorer_read(ser: crate::c_types::u8slice) -> crate::c_types::d
 }
 mod time {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
index d1251b88dadf367e44107aa976276ba91fb322cc..e8c7546afa5f46d2d3a98e4594d5399d755d0287 100644 (file)
@@ -9,11 +9,13 @@
 //! Various user-configurable channel limits and settings which ChannelManager
 //! applies for you.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning::util::config::ChannelHandshakeConfig as nativeChannelHandshakeConfigImport;
@@ -64,7 +66,7 @@ impl ChannelHandshakeConfig {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelHandshakeConfig {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -162,7 +164,7 @@ pub extern "C" fn ChannelHandshakeConfig_new(mut minimum_depth_arg: u32, mut our
 impl Clone for ChannelHandshakeConfig {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelHandshakeConfig>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelHandshakeConfig>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -241,7 +243,7 @@ impl ChannelHandshakeLimits {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelHandshakeLimits {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -419,7 +421,7 @@ pub extern "C" fn ChannelHandshakeLimits_new(mut min_funding_satoshis_arg: u64,
 impl Clone for ChannelHandshakeLimits {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelHandshakeLimits>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelHandshakeLimits>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -489,7 +491,7 @@ impl ChannelConfig {
        pub(crate) fn take_inner(mut self) -> *mut nativeChannelConfig {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -765,7 +767,7 @@ pub extern "C" fn ChannelConfig_new(mut forwarding_fee_proportional_millionths_a
 impl Clone for ChannelConfig {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeChannelConfig>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeChannelConfig>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -853,7 +855,7 @@ impl UserConfig {
        pub(crate) fn take_inner(mut self) -> *mut nativeUserConfig {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -959,7 +961,7 @@ pub extern "C" fn UserConfig_new(mut own_channel_config_arg: crate::lightning::u
 impl Clone for UserConfig {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeUserConfig>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeUserConfig>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
index 229fe039961b5aef8a8a47ddc03ce0b6e5c43d5a..a3933b9b5591e7ed3412d6f71cd62134afd135c3 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Error types live here.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Indicates an error on the client's part (usually some variant of attempting to use too-low or
 /// too-high values)
index 1291bbcb27437f28366e9e76f30d7188e01d1ca4..e93bd66c050985d7ec797e0b1865dc0cd8de4b44 100644 (file)
 //! future, as well as generate and broadcast funding transactions handle payment preimages and a
 //! few other things.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Some information provided on receipt of payment depends on whether the payment received is a
 /// spontaneous payment or a \"conventional\" lightning payment that's paying an invoice.
@@ -686,7 +688,7 @@ impl Event {
                        Event::PendingHTLCsForwardable {ref time_forwardable, } => {
                                let mut time_forwardable_nonref = (*time_forwardable).clone();
                                nativeEvent::PendingHTLCsForwardable {
-                                       time_forwardable: std::time::Duration::from_secs(time_forwardable_nonref),
+                                       time_forwardable: core::time::Duration::from_secs(time_forwardable_nonref),
                                }
                        },
                        Event::SpendableOutputs {ref outputs, } => {
@@ -790,7 +792,7 @@ impl Event {
                        },
                        Event::PendingHTLCsForwardable {mut time_forwardable, } => {
                                nativeEvent::PendingHTLCsForwardable {
-                                       time_forwardable: std::time::Duration::from_secs(time_forwardable),
+                                       time_forwardable: core::time::Duration::from_secs(time_forwardable),
                                }
                        },
                        Event::SpendableOutputs {mut outputs, } => {
@@ -882,7 +884,7 @@ impl Event {
                                let mut short_channel_id_nonref = (*short_channel_id).clone();
                                let mut local_short_channel_id_nonref = if short_channel_id_nonref.is_none() { crate::c_types::derived::COption_u64Z::None } else { crate::c_types::derived::COption_u64Z::Some( { short_channel_id_nonref.unwrap() }) };
                                let mut retry_nonref = (*retry).clone();
-                               let mut local_retry_nonref = crate::lightning::routing::router::RouteParameters { inner: if retry_nonref.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((retry_nonref.unwrap())) } }, is_owned: true };
+                               let mut local_retry_nonref = crate::lightning::routing::router::RouteParameters { inner: if retry_nonref.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((retry_nonref.unwrap())) } }, is_owned: true };
                                Event::PaymentPathFailed {
                                        payment_id: local_payment_id_nonref,
                                        payment_hash: crate::c_types::ThirtyTwoBytes { data: payment_hash_nonref.0 },
@@ -989,7 +991,7 @@ impl Event {
                                let mut local_network_update = if network_update.is_none() { crate::c_types::derived::COption_NetworkUpdateZ::None } else { crate::c_types::derived::COption_NetworkUpdateZ::Some( { crate::lightning::routing::network_graph::NetworkUpdate::native_into(network_update.unwrap()) }) };
                                let mut local_path = Vec::new(); for mut item in path.drain(..) { local_path.push( { crate::lightning::routing::router::RouteHop { inner: ObjOps::heap_alloc(item), is_owned: true } }); };
                                let mut local_short_channel_id = if short_channel_id.is_none() { crate::c_types::derived::COption_u64Z::None } else { crate::c_types::derived::COption_u64Z::Some( { short_channel_id.unwrap() }) };
-                               let mut local_retry = crate::lightning::routing::router::RouteParameters { inner: if retry.is_none() { std::ptr::null_mut() } else {  { ObjOps::heap_alloc((retry.unwrap())) } }, is_owned: true };
+                               let mut local_retry = crate::lightning::routing::router::RouteParameters { inner: if retry.is_none() { core::ptr::null_mut() } else {  { ObjOps::heap_alloc((retry.unwrap())) } }, is_owned: true };
                                Event::PaymentPathFailed {
                                        payment_id: local_payment_id,
                                        payment_hash: crate::c_types::ThirtyTwoBytes { data: payment_hash.0 },
@@ -2057,7 +2059,7 @@ impl rustMessageSendEventsProvider for MessageSendEventsProvider {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for MessageSendEventsProvider {
+impl core::ops::Deref for MessageSendEventsProvider {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -2168,7 +2170,7 @@ impl rustEventHandler for EventHandler {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for EventHandler {
+impl core::ops::Deref for EventHandler {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
index 7d0e7953f9d987f6df7ae252f28f0414cd85b936..411a34fd8634fc492a52267caf3bd9cd4587aa74 100644 (file)
 //! The second one, client-side by implementing check against Record Level field.
 //! Each module may have its own Logger or share one.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// An enum representing the available verbosity levels of the logger.
 #[must_use]
@@ -122,11 +124,11 @@ pub extern "C" fn Level_eq(a: &Level, b: &Level) -> bool {
 /// Checks if two Levels contain equal inner contents.
 #[no_mangle]
 pub extern "C" fn Level_hash(o: &Level) -> u64 {
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(&o.to_native(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(&o.to_native(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Returns the most verbose logging level.
 #[must_use]
@@ -184,7 +186,7 @@ impl Record {
        pub(crate) fn take_inner(mut self) -> *mut nativeRecord {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -246,7 +248,7 @@ pub extern "C" fn Record_set_line(this_ptr: &mut Record, mut val: u32) {
 impl Clone for Record {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRecord>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRecord>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -294,7 +296,7 @@ impl rustLogger for Logger {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Logger {
+impl core::ops::Deref for Logger {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
index 782d81326c288ddd455149844cb7f98893442a94..4dc887375b7926c7feea9e399622ea9c55228c5a 100644 (file)
 //! <https://lightning.readthedocs.io/lightning-signmessage.7.html>
 //! <https://api.lightning.community/#signmessage>
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Creates a digital signature of a message given a SecretKey, like the node's secret.
 /// A receiver knowing the PublicKey (e.g. the node's id) and the message can be sure that the signature was generated by the caller.
index 45d754bd1fb7354c63f60c11f0d31988ae248def..c80ae77b2b4b615784a3b1857c65ea9f136c659c 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Some utility modules live here. See individual sub-modules for more info.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod events;
 pub mod errors;
@@ -22,118 +24,144 @@ pub mod logger;
 pub mod config;
 mod fuzz_wrappers {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod ser_macros {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod atomic_counter {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod byte_utils {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod chacha20 {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod real_chacha {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 }
 mod zbase32 {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod poly1305 {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod chacha20poly1305rfc {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod real_chachapoly {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 }
 mod transaction_utils {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod scid_utils {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 mod macro_logger {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
index 6e9a501723ffe31e7ae99d006b3305e87525a09d..511f3af2d4fb30dc9821055b31c1ddc276ee615b 100644 (file)
@@ -9,11 +9,13 @@
 //! A very simple serialization framework which is used to serialize/deserialize messages as well
 //! as ChannelsManagers and ChannelMonitors.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// serialization buffer size
 
index 5dc282a955ce446d0de818497af453b2a83338d9..0bd445298b0e5c89383ccb29a508d13545031f9e 100644 (file)
 //! running properly, and (2) either can or should be run in the background. See docs for
 //! [`BackgroundProcessor`] for more details on the nitty-gritty.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning_background_processor::BackgroundProcessor as nativeBackgroundProcessorImport;
@@ -87,7 +89,7 @@ impl BackgroundProcessor {
        pub(crate) fn take_inner(mut self) -> *mut nativeBackgroundProcessor {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -131,7 +133,7 @@ impl rustChannelManagerPersister<crate::lightning::chain::keysinterface::Sign, c
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for ChannelManagerPersister {
+impl core::ops::Deref for ChannelManagerPersister {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
index 3f1459420fd81ecee3de5c36a419541b06525bcc..4486e0e3437671e3fc810441409e75a2459881c4 100644 (file)
@@ -8,11 +8,13 @@
 
 /// Tag constants as specified in BOLT11
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 #[no_mangle]
index cb190244196629432be88e2a10ceaf8baa2d5fff..12845c6769abbc29a51d84a321bad0b759f8214c 100644 (file)
 //!   * For constructing invoices use the `InvoiceBuilder`
 //!   * For serializing invoices use the `Display`/`ToString` traits
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 pub mod payment;
 pub mod utils;
 pub mod constants;
 mod de {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod hrp_sm {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 #[no_mangle]
@@ -80,11 +86,13 @@ pub extern "C" fn SignedRawInvoice_from_str(s: crate::c_types::Str) -> crate::c_
 }
 mod ser {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 #[no_mangle]
 /// Get the string representation of a Invoice object
@@ -109,11 +117,13 @@ pub extern "C" fn SiPrefix_to_str(o: &crate::lightning_invoice::SiPrefix) -> Str
 }
 mod tb {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 /// Default expiry time as defined by [BOLT 11].
@@ -202,7 +212,7 @@ impl Invoice {
        pub(crate) fn take_inner(mut self) -> *mut nativeInvoice {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -218,7 +228,7 @@ pub extern "C" fn Invoice_eq(a: &Invoice, b: &Invoice) -> bool {
 impl Clone for Invoice {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInvoice>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInvoice>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -285,7 +295,7 @@ impl SignedRawInvoice {
        pub(crate) fn take_inner(mut self) -> *mut nativeSignedRawInvoice {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -301,7 +311,7 @@ pub extern "C" fn SignedRawInvoice_eq(a: &SignedRawInvoice, b: &SignedRawInvoice
 impl Clone for SignedRawInvoice {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeSignedRawInvoice>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeSignedRawInvoice>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -368,7 +378,7 @@ impl RawInvoice {
        pub(crate) fn take_inner(mut self) -> *mut nativeRawInvoice {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -395,7 +405,7 @@ pub extern "C" fn RawInvoice_eq(a: &RawInvoice, b: &RawInvoice) -> bool {
 impl Clone for RawInvoice {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRawInvoice>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRawInvoice>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -458,7 +468,7 @@ impl RawDataPart {
        pub(crate) fn take_inner(mut self) -> *mut nativeRawDataPart {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -485,7 +495,7 @@ pub extern "C" fn RawDataPart_eq(a: &RawDataPart, b: &RawDataPart) -> bool {
 impl Clone for RawDataPart {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRawDataPart>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRawDataPart>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -553,7 +563,7 @@ impl PositiveTimestamp {
        pub(crate) fn take_inner(mut self) -> *mut nativePositiveTimestamp {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -569,7 +579,7 @@ pub extern "C" fn PositiveTimestamp_eq(a: &PositiveTimestamp, b: &PositiveTimest
 impl Clone for PositiveTimestamp {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePositiveTimestamp>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePositiveTimestamp>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -761,11 +771,11 @@ pub extern "C" fn Currency_signet() -> Currency {
 /// Checks if two Currencys contain equal inner contents.
 #[no_mangle]
 pub extern "C" fn Currency_hash(o: &Currency) -> u64 {
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(&o.to_native(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(&o.to_native(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Currencys contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -820,14 +830,14 @@ impl Sha256 {
        pub(crate) fn take_inner(mut self) -> *mut nativeSha256 {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for Sha256 {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeSha256>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeSha256>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -847,11 +857,11 @@ pub extern "C" fn Sha256_clone(orig: &Sha256) -> Sha256 {
 #[no_mangle]
 pub extern "C" fn Sha256_hash(o: &Sha256) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Sha256s contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -912,14 +922,14 @@ impl Description {
        pub(crate) fn take_inner(mut self) -> *mut nativeDescription {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for Description {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeDescription>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeDescription>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -939,11 +949,11 @@ pub extern "C" fn Description_clone(orig: &Description) -> Description {
 #[no_mangle]
 pub extern "C" fn Description_hash(o: &Description) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Descriptions contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1001,7 +1011,7 @@ impl PayeePubKey {
        pub(crate) fn take_inner(mut self) -> *mut nativePayeePubKey {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1025,7 +1035,7 @@ pub extern "C" fn PayeePubKey_new(mut a_arg: crate::c_types::PublicKey) -> Payee
 impl Clone for PayeePubKey {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePayeePubKey>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePayeePubKey>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1045,11 +1055,11 @@ pub extern "C" fn PayeePubKey_clone(orig: &PayeePubKey) -> PayeePubKey {
 #[no_mangle]
 pub extern "C" fn PayeePubKey_hash(o: &PayeePubKey) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two PayeePubKeys contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1113,14 +1123,14 @@ impl ExpiryTime {
        pub(crate) fn take_inner(mut self) -> *mut nativeExpiryTime {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for ExpiryTime {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeExpiryTime>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeExpiryTime>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1140,11 +1150,11 @@ pub extern "C" fn ExpiryTime_clone(orig: &ExpiryTime) -> ExpiryTime {
 #[no_mangle]
 pub extern "C" fn ExpiryTime_hash(o: &ExpiryTime) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two ExpiryTimes contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1202,7 +1212,7 @@ impl MinFinalCltvExpiry {
        pub(crate) fn take_inner(mut self) -> *mut nativeMinFinalCltvExpiry {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -1226,7 +1236,7 @@ pub extern "C" fn MinFinalCltvExpiry_new(mut a_arg: u64) -> MinFinalCltvExpiry {
 impl Clone for MinFinalCltvExpiry {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeMinFinalCltvExpiry>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeMinFinalCltvExpiry>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1246,11 +1256,11 @@ pub extern "C" fn MinFinalCltvExpiry_clone(orig: &MinFinalCltvExpiry) -> MinFina
 #[no_mangle]
 pub extern "C" fn MinFinalCltvExpiry_hash(o: &MinFinalCltvExpiry) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two MinFinalCltvExpirys contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1401,11 +1411,11 @@ pub extern "C" fn Fallback_script_hash(a: crate::c_types::TwentyBytes) -> Fallba
 /// Checks if two Fallbacks contain equal inner contents.
 #[no_mangle]
 pub extern "C" fn Fallback_hash(o: &Fallback) -> u64 {
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(&o.to_native(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(&o.to_native(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two Fallbacks contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1460,14 +1470,14 @@ impl InvoiceSignature {
        pub(crate) fn take_inner(mut self) -> *mut nativeInvoiceSignature {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for InvoiceSignature {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeInvoiceSignature>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeInvoiceSignature>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1543,14 +1553,14 @@ impl PrivateRoute {
        pub(crate) fn take_inner(mut self) -> *mut nativePrivateRoute {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
 impl Clone for PrivateRoute {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativePrivateRoute>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativePrivateRoute>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -1570,11 +1580,11 @@ pub extern "C" fn PrivateRoute_clone(orig: &PrivateRoute) -> PrivateRoute {
 #[no_mangle]
 pub extern "C" fn PrivateRoute_hash(o: &PrivateRoute) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// Checks if two PrivateRoutes contain equal inner contents.
 /// This ignores pointers and is_owned flags and looks at the values in fields.
@@ -1653,7 +1663,7 @@ pub extern "C" fn RawInvoice_hash(this_arg: &RawInvoice) -> crate::c_types::Thir
 #[no_mangle]
 pub extern "C" fn RawInvoice_payment_hash(this_arg: &RawInvoice) -> crate::lightning_invoice::Sha256 {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.payment_hash();
-       let mut local_ret = crate::lightning_invoice::Sha256 { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Sha256<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::Sha256 { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Sha256<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1663,7 +1673,7 @@ pub extern "C" fn RawInvoice_payment_hash(this_arg: &RawInvoice) -> crate::light
 #[no_mangle]
 pub extern "C" fn RawInvoice_description(this_arg: &RawInvoice) -> crate::lightning_invoice::Description {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.description();
-       let mut local_ret = crate::lightning_invoice::Description { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Description<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::Description { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Description<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1673,7 +1683,7 @@ pub extern "C" fn RawInvoice_description(this_arg: &RawInvoice) -> crate::lightn
 #[no_mangle]
 pub extern "C" fn RawInvoice_payee_pub_key(this_arg: &RawInvoice) -> crate::lightning_invoice::PayeePubKey {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.payee_pub_key();
-       let mut local_ret = crate::lightning_invoice::PayeePubKey { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::PayeePubKey<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::PayeePubKey { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::PayeePubKey<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1683,7 +1693,7 @@ pub extern "C" fn RawInvoice_payee_pub_key(this_arg: &RawInvoice) -> crate::ligh
 #[no_mangle]
 pub extern "C" fn RawInvoice_description_hash(this_arg: &RawInvoice) -> crate::lightning_invoice::Sha256 {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.description_hash();
-       let mut local_ret = crate::lightning_invoice::Sha256 { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Sha256<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::Sha256 { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::Sha256<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1693,7 +1703,7 @@ pub extern "C" fn RawInvoice_description_hash(this_arg: &RawInvoice) -> crate::l
 #[no_mangle]
 pub extern "C" fn RawInvoice_expiry_time(this_arg: &RawInvoice) -> crate::lightning_invoice::ExpiryTime {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.expiry_time();
-       let mut local_ret = crate::lightning_invoice::ExpiryTime { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::ExpiryTime<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::ExpiryTime { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::ExpiryTime<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1703,7 +1713,7 @@ pub extern "C" fn RawInvoice_expiry_time(this_arg: &RawInvoice) -> crate::lightn
 #[no_mangle]
 pub extern "C" fn RawInvoice_min_final_cltv_expiry(this_arg: &RawInvoice) -> crate::lightning_invoice::MinFinalCltvExpiry {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.min_final_cltv_expiry();
-       let mut local_ret = crate::lightning_invoice::MinFinalCltvExpiry { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::MinFinalCltvExpiry<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning_invoice::MinFinalCltvExpiry { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning_invoice::MinFinalCltvExpiry<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1723,7 +1733,7 @@ pub extern "C" fn RawInvoice_payment_secret(this_arg: &RawInvoice) -> crate::c_t
 #[no_mangle]
 pub extern "C" fn RawInvoice_features(this_arg: &RawInvoice) -> crate::lightning::ln::features::InvoiceFeatures {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.features();
-       let mut local_ret = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1875,7 +1885,7 @@ pub extern "C" fn Invoice_payment_secret(this_arg: &Invoice) -> *const [u8; 32]
 #[no_mangle]
 pub extern "C" fn Invoice_features(this_arg: &Invoice) -> crate::lightning::ln::features::InvoiceFeatures {
        let mut ret = unsafe { &*ObjOps::untweak_ptr(this_arg.inner) }.features();
-       let mut local_ret = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if ret.is_none() { std::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
+       let mut local_ret = crate::lightning::ln::features::InvoiceFeatures { inner: unsafe { (if ret.is_none() { core::ptr::null() } else { ObjOps::nonnull_ptr_to_inner( { (ret.unwrap()) }) } as *const lightning::ln::features::InvoiceFeatures<>) as *mut _ }, is_owned: false };
        local_ret
 }
 
@@ -1984,7 +1994,7 @@ pub extern "C" fn ExpiryTime_from_seconds(mut seconds: u64) -> crate::c_types::d
 #[must_use]
 #[no_mangle]
 pub extern "C" fn ExpiryTime_from_duration(mut duration: u64) -> crate::c_types::derived::CResult_ExpiryTimeCreationErrorZ {
-       let mut ret = lightning_invoice::ExpiryTime::from_duration(std::time::Duration::from_secs(duration));
+       let mut ret = lightning_invoice::ExpiryTime::from_duration(core::time::Duration::from_secs(duration));
        let mut local_ret = match ret { Ok(mut o) => crate::c_types::CResultTempl::ok( { crate::lightning_invoice::ExpiryTime { inner: ObjOps::heap_alloc(o), is_owned: true } }).into(), Err(mut e) => crate::c_types::CResultTempl::err( { crate::lightning_invoice::CreationError::native_into(e) }).into() };
        local_ret
 }
index f53e73e14a9ce77fafc835475cf92e893edb86b1..973402b154e66c85de124ea4a33609dc6664b0f5 100644 (file)
 //! as updates to the network graph or changes to channel scores should be applied prior to
 //! retries, typically by way of composing [`EventHandler`]s accordingly.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 
 use lightning_invoice::payment::InvoicePayer as nativeInvoicePayerImport;
@@ -181,7 +183,7 @@ impl InvoicePayer {
        pub(crate) fn take_inner(mut self) -> *mut nativeInvoicePayer {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -264,7 +266,7 @@ impl rustPayer for Payer {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Payer {
+impl core::ops::Deref for Payer {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -318,7 +320,7 @@ impl rustRouter<crate::lightning::routing::scoring::Score> for Router {
 
 // We're essentially a pointer already, or at least a set of pointers, so allow us to be used
 // directly as a Deref trait in higher-level structs:
-impl std::ops::Deref for Router {
+impl core::ops::Deref for Router {
        type Target = Self;
        fn deref(&self) -> &Self {
                self
@@ -385,7 +387,7 @@ impl RetryAttempts {
        pub(crate) fn take_inner(mut self) -> *mut nativeRetryAttempts {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -409,7 +411,7 @@ pub extern "C" fn RetryAttempts_new(mut a_arg: usize) -> RetryAttempts {
 impl Clone for RetryAttempts {
        fn clone(&self) -> Self {
                Self {
-                       inner: if <*mut nativeRetryAttempts>::is_null(self.inner) { std::ptr::null_mut() } else {
+                       inner: if <*mut nativeRetryAttempts>::is_null(self.inner) { core::ptr::null_mut() } else {
                                ObjOps::heap_alloc(unsafe { &*ObjOps::untweak_ptr(self.inner) }.clone()) },
                        is_owned: true,
                }
@@ -438,11 +440,11 @@ pub extern "C" fn RetryAttempts_eq(a: &RetryAttempts, b: &RetryAttempts) -> bool
 #[no_mangle]
 pub extern "C" fn RetryAttempts_hash(o: &RetryAttempts) -> u64 {
        if o.inner.is_null() { return 0; }
-       // Note that we'd love to use std::collections::hash_map::DefaultHasher but it's not in core
+       // Note that we'd love to use alloc::collections::hash_map::DefaultHasher but it's not in core
        #[allow(deprecated)]
        let mut hasher = core::hash::SipHasher::new();
-       std::hash::Hash::hash(o.get_native_ref(), &mut hasher);
-       std::hash::Hasher::finish(&hasher)
+       core::hash::Hash::hash(o.get_native_ref(), &mut hasher);
+       core::hash::Hasher::finish(&hasher)
 }
 /// An error that may occur when making a payment.
 #[must_use]
@@ -633,7 +635,7 @@ impl From<nativeInvoicePayer> for crate::lightning::util::events::EventHandler {
                let mut rust_obj = InvoicePayer { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = InvoicePayer_as_EventHandler(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(InvoicePayer_free_void);
                ret
        }
index ef8b51fe65bb30ea8117fd91706aaa1eb1f20741..79281aa889b55f9d84d028e61c832b284d773118 100644 (file)
@@ -8,11 +8,13 @@
 
 //! Convenient utilities to create an invoice.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 /// Utility to construct an invoice. Generally, unless you want to do something like a custom
 /// cltv_expiry, this is what you should be using to create an invoice. The reason being, this
@@ -74,7 +76,7 @@ impl DefaultRouter {
        pub(crate) fn take_inner(mut self) -> *mut nativeDefaultRouter {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -91,7 +93,7 @@ impl From<nativeDefaultRouter> for crate::lightning_invoice::payment::Router {
                let mut rust_obj = DefaultRouter { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = DefaultRouter_as_Router(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(DefaultRouter_free_void);
                ret
        }
@@ -109,7 +111,7 @@ pub extern "C" fn DefaultRouter_as_Router(this_arg: &DefaultRouter) -> crate::li
 
 #[must_use]
 extern "C" fn DefaultRouter_Router_find_route(this_arg: *const c_void, mut payer: crate::c_types::PublicKey, params: &crate::lightning::routing::router::RouteParameters, _payment_hash: *const [u8; 32], first_hops: *mut crate::c_types::derived::CVec_ChannelDetailsZ, scorer: &crate::lightning::routing::scoring::Score) -> crate::c_types::derived::CResult_RouteLightningErrorZ {
-       let mut local_first_hops_base = if first_hops == std::ptr::null_mut() { None } else { Some( { let mut local_first_hops_0 = Vec::new(); for mut item in unsafe { &mut *first_hops }.as_slice().iter() { local_first_hops_0.push( { item.get_native_ref() }); }; local_first_hops_0 }) }; let mut local_first_hops = local_first_hops_base.as_ref().map(|a| &a[..]);
+       let mut local_first_hops_base = if first_hops == core::ptr::null_mut() { None } else { Some( { let mut local_first_hops_0 = Vec::new(); for mut item in unsafe { &mut *first_hops }.as_slice().iter() { local_first_hops_0.push( { item.get_native_ref() }); }; local_first_hops_0 }) }; let mut local_first_hops = local_first_hops_base.as_ref().map(|a| &a[..]);
        let mut ret = <nativeDefaultRouter as lightning_invoice::payment::Router<_>>::find_route(unsafe { &mut *(this_arg as *mut nativeDefaultRouter) }, &payer.into_rust(), params.get_native_ref(), &::lightning::ln::PaymentHash(unsafe { *_payment_hash }), local_first_hops, scorer);
        let mut local_ret = match ret { Ok(mut o) => crate::c_types::CResultTempl::ok( { crate::lightning::routing::router::Route { inner: ObjOps::heap_alloc(o), is_owned: true } }).into(), Err(mut e) => crate::c_types::CResultTempl::err( { crate::lightning::ln::msgs::LightningError { inner: ObjOps::heap_alloc(e), is_owned: true } }).into() };
        local_ret
@@ -123,7 +125,7 @@ impl From<nativeChannelManager> for crate::lightning_invoice::payment::Payer {
                let mut rust_obj = ChannelManager { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = ChannelManager_as_Payer(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(ChannelManager_free_void);
                ret
        }
index 303e73512dbcc7bab3f8bd2e5cf1dda1ed95436c..0ab058294e0301cda3882a3e7a1ccdbb40693947 100644 (file)
@@ -8,19 +8,23 @@
 
 //! Utilities that handle persisting Rust-Lightning data to disk via standard filesystem APIs.
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 mod util {
 
-use std::str::FromStr;
-use std::ffi::c_void;
+use alloc::str::FromStr;
+use core::ffi::c_void;
 use core::convert::Infallible;
 use bitcoin::hashes::Hash;
 use crate::c_types::*;
+#[cfg(feature="no-std")]
+use alloc::{vec::Vec, boxed::Box};
 
 }
 
@@ -81,7 +85,7 @@ impl FilesystemPersister {
        pub(crate) fn take_inner(mut self) -> *mut nativeFilesystemPersister {
                assert!(self.is_owned);
                let ret = ObjOps::untweak_ptr(self.inner);
-               self.inner = std::ptr::null_mut();
+               self.inner = core::ptr::null_mut();
                ret
        }
 }
@@ -126,7 +130,7 @@ impl From<nativeFilesystemPersister> for crate::lightning::chain::chainmonitor::
                let mut rust_obj = FilesystemPersister { inner: ObjOps::heap_alloc(obj), is_owned: true };
                let mut ret = FilesystemPersister_as_Persist(&rust_obj);
                // We want to free rust_obj when ret gets drop()'d, not rust_obj, so wipe rust_obj's pointer and set ret's free() fn
-               rust_obj.inner = std::ptr::null_mut();
+               rust_obj.inner = core::ptr::null_mut();
                ret.free = Some(FilesystemPersister_free_void);
                ret
        }