#![cfg_attr(docsrs, feature(doc_cfg))]
#![allow(clippy::or_fun_call)]
#![allow(clippy::manual_map)]
#![deny(missing_docs)]
mod tests;
pub(crate) mod global;
#[cfg(feature = "archive")]
#[cfg_attr(docsrs, doc(cfg(feature = "archive")))]
pub(crate) mod loader;
#[cfg(feature = "builder")]
#[cfg_attr(docsrs, doc(cfg(feature = "builder")))]
pub(crate) mod writer;
pub const VERSION: u16 = 30;
pub const SECRET_KEY_LENGTH: usize = 32;
pub const PUBLIC_KEY_LENGTH: usize = 32;
pub const SIGNATURE_LENGTH: usize = 64;
pub const MAX_ID_LENGTH: usize = u16::MAX as usize;
pub const MAGIC: [u8; crate::MAGIC_LENGTH] = *b"VfACH";
pub(crate) const MAGIC_LENGTH: usize = 5;
pub mod prelude {
pub use crate::global::{error::*, flags::Flags, reg_entry::RegistryEntry};
#[cfg(feature = "crypto")]
pub use crate::crypto::*;
#[cfg(feature = "archive")]
pub use crate::archive::*;
#[cfg(feature = "builder")]
pub use crate::builder::*;
#[cfg(feature = "compression")]
pub use crate::global::compressor::*;
}
pub mod crypto;
#[cfg(feature = "builder")]
#[cfg_attr(docsrs, doc(cfg(feature = "builder")))]
pub mod builder {
pub use crate::writer::*;
pub use crate::global::{error::*, flags::Flags};
#[cfg(feature = "compression")]
pub use crate::global::compressor::CompressionAlgorithm;
}
#[cfg(feature = "archive")]
#[cfg_attr(docsrs, doc(cfg(feature = "archive")))]
pub mod archive {
pub use crate::loader::{archive::Archive, resource::Resource};
pub use crate::global::{reg_entry::RegistryEntry, error::*, flags::Flags};
#[cfg(feature = "compression")]
pub use crate::global::compressor::CompressionAlgorithm;
}
pub mod crypto_utils;