use crate::server::types::EditValidation;
use pathfinder_common::types::{SemanticPath, VersionHash};
pub(crate) struct ValidationOutcome {
pub(crate) validation: EditValidation,
pub(crate) skipped: bool,
pub(crate) skipped_reason: Option<String>,
pub(crate) should_block: bool,
}
pub(crate) struct FinalizeEditParams<'a> {
tool_name: &'static str,
semantic_path: &'a SemanticPath,
raw_semantic_path_str: &'a str,
source: &'a [u8],
original_hash: &'a VersionHash,
new_content: Vec<u8>,
ignore_validation_failures: bool,
start_time: std::time::Instant,
resolve_ms: u128,
}
#[derive(Clone, Copy)]
pub(crate) enum InsertEdge {
Before,
After,
}
#[derive(Debug)]
pub(crate) struct ResolvedEditFree {
start_byte: usize,
end_byte: usize,
replacement: Vec<u8>,
}
#[derive(Debug)]
pub(crate) struct ResolvedEdit {
start_byte: usize,
end_byte: usize,
replacement: Vec<u8>,
}
pub(super) mod batch;
pub(super) mod handlers;
pub(super) mod text_edit;
pub(super) mod validation;
#[cfg(test)]
pub(super) mod tests;