#![no_std]
#![deny(missing_docs)]
#[cfg(feature = "std")]
extern crate std;
#[cfg(feature = "detect")]
pub mod detect;
#[cfg(feature = "open")]
mod error;
#[cfg(feature = "open")]
mod image;
#[cfg(feature = "open")]
pub use error::{Error, OpticalFormat, Result};
#[cfg(feature = "open")]
pub use image::OpenPolicy;
#[cfg(all(feature = "open", feature = "sync"))]
#[path = "image_sync.rs"]
pub mod sync;
#[cfg(all(feature = "open", feature = "async"))]
#[path = "image_async.rs"]
pub mod r#async;
#[cfg(feature = "iso")]
pub use hadris_iso as iso;
#[cfg(feature = "udf")]
pub use hadris_udf as udf;
#[cfg(feature = "cd")]
pub use hadris_cd as cd;