pub trait Node: Spanned { fn emit_with<W>(&self, e: &mut Emitter<'_, W>) -> Result where W: WriteJs; }