#![forbid(unsafe_code)]
#![warn(
missing_docs,
unused_qualifications,
redundant_imports,
trivial_casts,
trivial_numeric_casts,
clippy::pedantic,
clippy::missing_const_for_fn,
clippy::suboptimal_flops
)]
#![allow(clippy::missing_errors_doc)]
mod player;
mod read_cursor;
mod song;
mod sound;
pub use {
player::Player,
song::{Channel, Event, Song},
};
#[derive(Clone, Copy, Default)]
pub enum Interpolation {
#[default]
None,
Lagrange,
}
#[derive(Debug)]
pub enum OrgError {
Malformed,
Io(std::io::Error),
}
impl From<std::io::Error> for OrgError {
fn from(err: std::io::Error) -> Self {
Self::Io(err)
}
}
impl std::fmt::Display for OrgError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
OrgError::Malformed => f.write_str("malformed Organya file"),
OrgError::Io(error) => error.fmt(f),
}
}
}
impl std::error::Error for OrgError {}
pub const PROPERTY_UNUSED: u8 = 0xFF;