use super::{Node, Path, Query, Visit, VisitMut};
#[derive(Debug, Clone, PartialEq)]
pub struct Include {
pub path: Path,
pub query: Option<Query>,
}
impl Include {
pub fn new(path: Path) -> Self {
Self { path, query: None }
}
pub fn with_query(path: Path, query: Query) -> Self {
Self {
path,
query: Some(query),
}
}
}
impl From<Path> for Include {
fn from(path: Path) -> Self {
Self::new(path)
}
}
impl Node for Include {
fn visit<V: Visit>(&self, mut visit: V) {
visit.visit_include(self);
}
fn visit_mut<V: VisitMut>(&mut self, mut visit: V) {
visit.visit_include_mut(self);
}
}