#![doc(html_root_url = "https://docs.rs/undoredo")]
#![doc = include_str!("../README.md")]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![deny(missing_docs)]
#![forbid(unsafe_code)]
#![no_std]
#[cfg(feature = "std")]
extern crate std;
pub extern crate alloc;
pub mod aliases;
mod delta;
mod recorder;
mod snapshot;
mod undoredo;
pub use crate::delta::*;
pub use crate::recorder::{DiscardDelta, FlushDelta, Recorder};
pub use crate::snapshot::Snapshot;
pub use crate::undoredo::{CmdEdit, Extract, Revert, UndoRedo};
pub use maplike;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use undoredo_derive::ApplyDelta;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use undoredo_derive::Delta;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use undoredo_derive::DiscardDelta;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use undoredo_derive::FlushDelta;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use undoredo_derive::HalfDelta;