use std::path::PathBuf;
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error("C ABI 调用失败: {0}")]
Ffi(String),
#[error("空句柄: {0}")]
NullHandle(String),
#[error("JSON 错误: {0}")]
Json(#[from] serde_json::Error),
#[error("参数含 NUL 字节: {0}")]
Nul(#[from] std::ffi::NulError),
#[error("路径不是合法 UTF-8: {0}")]
NonUtf8Path(PathBuf),
}