1#![no_std]
2#![doc = include_str!("../README.md")]
3#![doc(
4 html_logo_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg",
5 html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg"
6)]
7#![cfg_attr(docsrs, feature(doc_cfg))]
8#![warn(missing_docs, unreachable_pub)]
9#![forbid(unsafe_code)]
10
11use digest::typenum::{U32, U48, U64};
12pub use digest::{self, Digest};
13
14pub mod block_api;
16#[cfg(feature = "oid")]
17mod oids;
18mod serialize;
19mod variants;
20
21pub use variants::OutputSize;
22
23digest::buffer_fixed!(
24 pub struct BashHash<OS: OutputSize>(block_api::BashHashCore<OS>);
26 impl: BaseFixedTraits AlgorithmName Default Clone HashMarker
29 Reset FixedOutputReset ZeroizeOnDrop;
30);
31
32pub type BashHash256 = BashHash<U32>;
34pub type BashHash384 = BashHash<U48>;
36pub type BashHash512 = BashHash<U64>;