Expand description
Logging, as well as various low-level utilities that factor Rust patterns that are frequent within the grin codebase.
Re-exports§
pub use crate::logger::init_logger;
pub use crate::logger::init_test_logger;
pub use crate::secp_static::static_secp_instance;
pub use crate::types::ZeroingString;
pub use secp256k1zkp as secp;
Modules§
- File util
- Logging wrapper to be used throughout all crates in the workspace
- Macros to support Rust BIP-32 code (though could conceivably be used for other things)
- Globally accessible static instance of secp256k1, to avoid initialization overhead
- Zeroing String
- Compress and decompress zip bz2 archives
Macros§
- gives a newtype array wrapper standard array traits
- gives a newtype array wrapper serialization and deserialization methods
- gives a newtype array wrapper the Debug trait
- gives a newtype array wrapper Index traits
Structs§
- Encapsulation of a RwLock<Option
> for one-time initialization. This implementation will purposefully fail hard if not used properly, for example if not initialized before being first used (borrowed). - A rate counter tracks the number of transfers, the amount of data exchanged and the rate of transfer (via a few timers) over the last minute. The counter does not try to be accurate and update times proactively, instead it only does so lazily. As a result, produced rates are worst-case estimates.
- Global stopped/paused state shared across various subcomponents of Grin.
Traits§
- Convert to hex
Functions§
- Decode a hex string into bytes.
- Encode an utf8 string to a base64 string
Type Aliases§
- A mutual exclusion primitive useful for protecting shared data
- A reader-writer lock
- RAII structure used to release the shared read access of a lock when dropped.
- RAII structure used to release the exclusive write access of a lock when dropped.