use super::*; #[derive(Debug)] pub struct WriteFile { name: &'static str, contents: &'static str, } impl WriteFile { pub(crate) fn new(name: &'static str, contents: &'static str) -> Self { Self { name, contents } } } impl Expression for WriteFile { fn write_shell(&self, writer: &mut impl std::fmt::Write) -> std::fmt::Result { write!( writer, "echo {} > {}", S::shell_escape(self.contents), S::shell_escape(self.name) ) } }