File tree Expand file tree Collapse file tree 28 files changed +124
-14
lines changed Expand file tree Collapse file tree 28 files changed +124
-14
lines changed Original file line number Diff line number Diff line change @@ -302,6 +302,22 @@ macro_rules! impl_client_v17__pruneblockchain {
302302 } ;
303303}
304304
305+ /// Implements Bitcoin Core JSON-RPC API method `savemempool`
306+ #[ macro_export]
307+ macro_rules! impl_client_v17__savemempool {
308+ ( ) => {
309+ impl Client {
310+ pub fn save_mempool( & self ) -> Result <( ) > {
311+ match self . call( "savemempool" , & [ ] ) {
312+ Ok ( serde_json:: Value :: Null ) => Ok ( ( ) ) ,
313+ Ok ( res) => Err ( Error :: Returned ( res. to_string( ) ) ) ,
314+ Err ( err) => Err ( err. into( ) ) ,
315+ }
316+ }
317+ }
318+ } ;
319+ }
320+
305321/// Implements Bitcoin Core JSON-RPC API method `verifytxoutproof`
306322#[ macro_export]
307323macro_rules! impl_client_v17__verifytxoutproof {
Original file line number Diff line number Diff line change @@ -49,6 +49,7 @@ crate::impl_client_v17__gettxoutproof!();
4949crate :: impl_client_v17__gettxoutsetinfo!( ) ;
5050crate :: impl_client_v17__preciousblock!( ) ;
5151crate :: impl_client_v17__pruneblockchain!( ) ;
52+ crate :: impl_client_v17__savemempool!( ) ;
5253crate :: impl_client_v17__verifytxoutproof!( ) ;
5354
5455// == Control ==
Original file line number Diff line number Diff line change @@ -43,6 +43,7 @@ crate::impl_client_v17__gettxoutproof!();
4343crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4444crate :: impl_client_v17__preciousblock!( ) ;
4545crate :: impl_client_v17__pruneblockchain!( ) ;
46+ crate :: impl_client_v17__savemempool!( ) ;
4647crate :: impl_client_v17__verifytxoutproof!( ) ;
4748
4849// == Control ==
Original file line number Diff line number Diff line change @@ -44,6 +44,7 @@ crate::impl_client_v17__gettxoutproof!();
4444crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4545crate :: impl_client_v17__preciousblock!( ) ;
4646crate :: impl_client_v17__pruneblockchain!( ) ;
47+ crate :: impl_client_v17__savemempool!( ) ;
4748crate :: impl_client_v17__verifytxoutproof!( ) ;
4849
4950// == Control ==
Original file line number Diff line number Diff line change @@ -41,6 +41,7 @@ crate::impl_client_v17__gettxoutproof!();
4141crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4242crate :: impl_client_v17__preciousblock!( ) ;
4343crate :: impl_client_v17__pruneblockchain!( ) ;
44+ crate :: impl_client_v17__savemempool!( ) ;
4445crate :: impl_client_v17__verifytxoutproof!( ) ;
4546
4647// == Control ==
Original file line number Diff line number Diff line change @@ -43,6 +43,7 @@ crate::impl_client_v17__gettxoutproof!();
4343crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4444crate :: impl_client_v17__preciousblock!( ) ;
4545crate :: impl_client_v17__pruneblockchain!( ) ;
46+ crate :: impl_client_v17__savemempool!( ) ;
4647crate :: impl_client_v17__verifytxoutproof!( ) ;
4748
4849// == Control ==
Original file line number Diff line number Diff line change @@ -44,6 +44,7 @@ crate::impl_client_v17__gettxoutproof!();
4444crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4545crate :: impl_client_v17__preciousblock!( ) ;
4646crate :: impl_client_v17__pruneblockchain!( ) ;
47+ crate :: impl_client_v17__savemempool!( ) ;
4748crate :: impl_client_v17__verifytxoutproof!( ) ;
4849
4950// == Control ==
Original file line number Diff line number Diff line change 1+ // SPDX-License-Identifier: CC0-1.0
2+
3+ //! Macros for implementing JSON-RPC methods on a client.
4+ //!
5+ //! Specifically this is methods found under the `== Blockchain ==` section of the
6+ //! API docs of Bitcoin Core `v0.23`.
7+ //!
8+ //! All macros require `Client` to be in scope.
9+ //!
10+ //! See or use the `define_jsonrpc_minreq_client!` macro to define a `Client`.
11+ /// Implements Bitcoin Core JSON-RPC API method `savemempool`
12+ #[ macro_export]
13+ macro_rules! impl_client_v23__savemempool {
14+ ( ) => {
15+ impl Client {
16+ pub fn save_mempool( & self ) -> Result <SaveMempool > { self . call( "savemempool" , & [ ] ) }
17+ }
18+ } ;
19+ }
Original file line number Diff line number Diff line change 44//!
55//! We ignore option arguments unless they effect the shape of the returned JSON data.
66
7+ pub mod blockchain;
78pub mod wallet;
89
910use std:: collections:: BTreeMap ;
@@ -44,6 +45,7 @@ crate::impl_client_v17__gettxoutproof!();
4445crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4546crate :: impl_client_v17__preciousblock!( ) ;
4647crate :: impl_client_v17__pruneblockchain!( ) ;
48+ crate :: impl_client_v23__savemempool!( ) ;
4749crate :: impl_client_v17__verifytxoutproof!( ) ;
4850
4951// == Control ==
Original file line number Diff line number Diff line change @@ -41,6 +41,7 @@ crate::impl_client_v17__gettxoutproof!();
4141crate :: impl_client_v17__gettxoutsetinfo!( ) ;
4242crate :: impl_client_v17__preciousblock!( ) ;
4343crate :: impl_client_v17__pruneblockchain!( ) ;
44+ crate :: impl_client_v23__savemempool!( ) ;
4445crate :: impl_client_v17__verifytxoutproof!( ) ;
4546
4647// == Control ==
You can’t perform that action at this time.
0 commit comments