#![deny(rustdoc::missing_crate_level_docs)]
#![doc(test(attr(deny(warnings))))]
#![cfg_attr(docsrs, feature(doc_cfg))]
pub(crate) use hyperscan_async_sys::hs;
#[cfg(feature = "static")]
#[cfg_attr(docsrs, doc(cfg(feature = "static")))]
pub mod alloc;
pub mod database;
pub mod error;
#[cfg(feature = "compile")]
#[cfg_attr(docsrs, doc(cfg(feature = "compile")))]
pub mod expression;
pub mod flags;
pub mod matchers;
pub mod state;
pub mod stream;
#[cfg(feature = "compile")]
#[cfg_attr(docsrs, doc(cfg(feature = "compile")))]
pub fn check_valid_platform() -> Result<(), error::HyperscanRuntimeError> {
error::HyperscanRuntimeError::from_native(unsafe { hs::hs_valid_platform() })
}
pub fn hyperscan_version() -> &'static std::ffi::CStr {
unsafe { std::ffi::CStr::from_ptr(hs::hs_version()) }
}
#[cfg(feature = "chimera")]
#[cfg_attr(docsrs, doc(cfg(feature = "chimera")))]
pub fn chimera_version() -> &'static std::ffi::CStr {
unsafe { std::ffi::CStr::from_ptr(hs::ch_version()) }
}