use std::{borrow::Cow, path::Path};
#[derive(Debug, PartialEq, Eq, Clone)]
pub struct ComponentFile<'a, 'b> {
pub path: Cow<'a, Path>,
pub data: Cow<'b, str>,
}
impl<'a, 'b> ComponentFile<'a, 'b> {
pub fn new<A: Into<Cow<'a, Path>>, B: Into<Cow<'b, str>>>(path: A, data: B) -> Self {
Self {
path: path.into(),
data: data.into(),
}
}
pub fn new_inline<T: Into<Cow<'b, str>>>(data: T) -> Self {
Self {
path: Cow::Borrowed(Path::new("inline")),
data: data.into(),
}
}
}