#![warn(missing_docs)]
mod consts;
pub mod content;
pub mod design;
pub mod diagnostics;
pub mod files;
pub mod media;
pub mod project;
pub mod script;
pub mod serve;
pub mod ui;
pub mod yres;
pub fn slash_path(path: &std::path::Path) -> String {
path.to_string_lossy().replace('\\', yog_ids::sep::PATH)
}
pub(crate) fn shown_path(root: &std::path::Path, path: &std::path::Path) -> String {
slash_path(path.strip_prefix(root).unwrap_or(path))
}
pub(crate) fn write_if_changed(
path: &std::path::Path,
code: impl AsRef<[u8]>,
) -> Result<(), String> {
yog_codegen::write_if_changed(path, code)
.map(drop)
.map_err(|e| format!("{}: {e}", path.display()))
}