#![no_std]
#![forbid(unsafe_code)]
#[cfg(any(feature = "std", test))]
#[cfg_attr(test, macro_use)]
extern crate std;
#[allow(unused_imports)]
#[macro_use]
extern crate alloc;
pub mod camera;
mod flaws;
pub use flaws::Flaws;
mod headless;
#[doc(hidden)]
pub use headless::info_text_drawable;
pub use headless::{HeadlessRenderer, Rendering};
#[cfg(feature = "raytracer")]
pub mod raytracer;
#[derive(Clone, Debug, Eq, Hash, PartialEq, displaydoc::Display)]
#[non_exhaustive]
pub enum RenderError {
#[displaydoc("scene to be rendered was not available for reading")]
Read(all_is_cubes::universe::HandleError),
}
#[cfg(feature = "std")]
impl core::error::Error for RenderError {
fn source(&self) -> Option<&(dyn core::error::Error + 'static)> {
match self {
RenderError::Read(e) => Some(e),
}
}
}