use crate::tree::recorder::Location;
use crate::Rewrites;
mod change;
pub use change::{Change, ChangeRef};
#[derive(Debug, thiserror::Error)]
#[allow(missing_docs)]
pub enum Error {
#[error(transparent)]
Diff(#[from] crate::tree::Error),
#[error("The user-provided callback failed")]
ForEach(#[source] Box<dyn std::error::Error + Send + Sync + 'static>),
#[error("Failure during rename tracking")]
RenameTracking(#[from] crate::rewrites::tracker::emit::Error),
}
#[derive(Default, Clone, Copy, PartialOrd, PartialEq, Ord, Eq, Hash)]
pub enum Action {
#[default]
Continue,
Cancel,
}
#[derive(Default, Clone, Debug)]
pub struct Options {
pub location: Option<Location>,
pub rewrites: Option<Rewrites>,
}
pub(super) mod function;