#![no_std]
#![doc = include_str!("../README.md")]
#![doc(
html_logo_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg",
html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg"
)]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![warn(missing_docs, unreachable_pub)]
#![deny(unsafe_code)]
pub use digest::{
self, Digest,
consts::{U32, U64, U128},
};
use digest::array::ArraySize;
pub mod block_api;
digest::buffer_fixed!(
pub struct Skein256<N: ArraySize>(block_api::Skein256Core<N>);
impl: FixedHashTraits;
);
digest::buffer_fixed!(
pub struct Skein512<N: ArraySize>(block_api::Skein512Core<N>);
impl: FixedHashTraits;
);
digest::buffer_fixed!(
pub struct Skein1024<N: ArraySize>(block_api::Skein1024Core<N>);
impl: FixedHashTraits;
);
pub type Skein256_256 = Skein256<U32>;
pub type Skein256_512 = Skein256<U64>;
pub type Skein512_256 = Skein512<U32>;
pub type Skein512_512 = Skein512<U64>;
pub type Skein1024_256 = Skein1024<U32>;
pub type Skein1024_512 = Skein1024<U64>;
pub type Skein1024_1024 = Skein1024<U128>;