Move base58 module to crate root

In preparation for removing the `util` module move the `base58` module
to the crate root. This is likely not the final resting place for this
module but it is a step in the right direction.

Includes addition of rustfmt attribute to skip formatting the digits
array. No other changes to the `base58` module.
This commit is contained in:
Tobin C. Harding 2022-11-29 09:45:28 +11:00
parent cde120bb0f
commit 2780e6cdaa
6 changed files with 5 additions and 6 deletions

View File

@ -36,6 +36,7 @@ use bech32;
use bitcoin_internals::write_err; use bitcoin_internals::write_err;
use secp256k1::{Secp256k1, Verification, XOnlyPublicKey}; use secp256k1::{Secp256k1, Verification, XOnlyPublicKey};
use crate::base58;
use crate::blockdata::constants::{ use crate::blockdata::constants::{
MAX_SCRIPT_ELEMENT_SIZE, PUBKEY_ADDRESS_PREFIX_MAIN, PUBKEY_ADDRESS_PREFIX_TEST, MAX_SCRIPT_ELEMENT_SIZE, PUBKEY_ADDRESS_PREFIX_MAIN, PUBKEY_ADDRESS_PREFIX_TEST,
SCRIPT_ADDRESS_PREFIX_MAIN, SCRIPT_ADDRESS_PREFIX_TEST, SCRIPT_ADDRESS_PREFIX_MAIN, SCRIPT_ADDRESS_PREFIX_TEST,
@ -51,7 +52,6 @@ use crate::hashes::{sha256, Hash, HashEngine};
use crate::network::constants::Network; use crate::network::constants::Network;
use crate::prelude::*; use crate::prelude::*;
use crate::taproot::TapBranchHash; use crate::taproot::TapBranchHash;
use crate::util::base58;
/// Address error. /// Address error.
#[derive(Debug, PartialEq, Eq, Clone)] #[derive(Debug, PartialEq, Eq, Clone)]

View File

@ -16,6 +16,7 @@ use crate::hashes::{sha256d, Hash};
static BASE58_CHARS: &[u8] = b"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"; static BASE58_CHARS: &[u8] = b"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
#[rustfmt::skip]
static BASE58_DIGITS: [Option<u8>; 128] = [ static BASE58_DIGITS: [Option<u8>; 128] = [
None, None, None, None, None, None, None, None, // 0-7 None, None, None, None, None, None, None, None, // 0-7
None, None, None, None, None, None, None, None, // 8-15 None, None, None, None, None, None, None, None, // 8-15

View File

@ -18,6 +18,7 @@ use secp256k1::{self, Secp256k1, XOnlyPublicKey};
#[cfg(feature = "serde")] #[cfg(feature = "serde")]
use serde; use serde;
use crate::base58;
use crate::crypto::key::{self, KeyPair, PrivateKey, PublicKey}; use crate::crypto::key::{self, KeyPair, PrivateKey, PublicKey};
use crate::hash_types::XpubIdentifier; use crate::hash_types::XpubIdentifier;
use crate::hashes::{hex, sha512, Hash, HashEngine, Hmac, HmacEngine}; use crate::hashes::{hex, sha512, Hash, HashEngine, Hmac, HmacEngine};
@ -25,7 +26,6 @@ use crate::internal_macros::impl_bytes_newtype;
use crate::io::Write; use crate::io::Write;
use crate::network::constants::Network; use crate::network::constants::Network;
use crate::prelude::*; use crate::prelude::*;
use crate::util::base58;
/// A chain code /// A chain code
#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)] #[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]

View File

@ -14,11 +14,10 @@ use core::fmt::{self, Write};
use bitcoin_internals::write_err; use bitcoin_internals::write_err;
pub use secp256k1::{self, Secp256k1, XOnlyPublicKey, KeyPair}; pub use secp256k1::{self, Secp256k1, XOnlyPublicKey, KeyPair};
use crate::io; use crate::{base58, io};
use crate::network::constants::Network; use crate::network::constants::Network;
use crate::hashes::{Hash, hash160, hex, hex::FromHex}; use crate::hashes::{Hash, hash160, hex, hex::FromHex};
use crate::hash_types::{PubkeyHash, WPubkeyHash}; use crate::hash_types::{PubkeyHash, WPubkeyHash};
use crate::util::base58;
/// A key-related error. /// A key-related error.
#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug)] #[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug)]

View File

@ -92,6 +92,7 @@ mod serde_utils;
pub mod network; pub mod network;
pub mod address; pub mod address;
pub mod amount; pub mod amount;
pub mod base58;
pub mod bip152; pub mod bip152;
pub mod bip158; pub mod bip158;
pub mod bip32; pub mod bip32;

View File

@ -6,8 +6,6 @@
//! Functions needed by all parts of the Bitcoin library. //! Functions needed by all parts of the Bitcoin library.
//! //!
pub mod base58;
/// The `misc` module was moved and re-named to `sign_message`. /// The `misc` module was moved and re-named to `sign_message`.
pub mod misc { pub mod misc {
use crate::prelude::*; use crate::prelude::*;