bitcoind_json_rpc_client/client_sync/v17/
mod.rs1pub mod blockchain;
8pub mod control;
9pub mod generating;
10pub mod network;
11pub mod raw_transactions;
12pub mod wallet;
13
14use bitcoin::address::{Address, NetworkChecked};
15use bitcoin::{Amount, Block, BlockHash, Txid};
16use serde::{Deserialize, Serialize};
17
18use crate::client_sync::{handle_defaults, into_json};
19use crate::json::v17::*;
20
21crate::define_jsonrpc_minreq_client!("v17");
22crate::impl_client_check_expected_server_version!({ [170100] });
23
24crate::impl_client_v17__getblockchaininfo!();
26crate::impl_client_v17__getbestblockhash!();
27crate::impl_client_v17__getblock!();
28crate::impl_client_v17__gettxout!();
29crate::impl_client_v17__getblockcount!();
30crate::impl_client_v17__getblockhash!();
31crate::impl_client_v17__getblockheader!();
32crate::impl_client_v17__getblockstats!();
33crate::impl_client_v17__getchaintips!();
34crate::impl_client_v17__getchaintxstats!();
35crate::impl_client_v17__getdifficulty!();
36crate::impl_client_v17__getmempoolancestors!();
37
38crate::impl_client_v17__getmemoryinfo!();
40crate::impl_client_v17__logging!();
41crate::impl_client_v17__stop!();
42crate::impl_client_v17__uptime!();
43
44crate::impl_client_v17__generatetoaddress!();
46crate::impl_client_v17__generate!();
47
48crate::impl_client_v17__getaddednodeinfo!();
50crate::impl_client_v17__getnettotals!();
51crate::impl_client_v17__getnetworkinfo!();
52crate::impl_client_v17__getpeerinfo!();
53
54crate::impl_client_v17__sendrawtransaction!();
56
57crate::impl_client_v17__createwallet!();
59crate::impl_client_v17__unloadwallet!();
60crate::impl_client_v17__loadwallet!();
61crate::impl_client_v17__getnewaddress!();
62crate::impl_client_v17__getbalance!();
63crate::impl_client_v17__sendtoaddress!();
64crate::impl_client_v17__gettransaction!();
65
66#[derive(Clone, Debug, PartialEq, Deserialize, Serialize)]
68#[serde(rename_all = "kebab-case")]
69pub enum AddressType {
70 Legacy,
71 P2shSegwit,
72 Bech32,
73}
74
75impl fmt::Display for AddressType {
76 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
77 use AddressType::*;
78
79 let s = match *self {
80 Legacy => "legacy",
81 P2shSegwit => "p2sh-segwit",
82 Bech32 => "bech32",
83 };
84 fmt::Display::fmt(s, f)
85 }
86}