diff options
| -rw-r--r-- | src/emitter.rs | 12 | 
1 files changed, 4 insertions, 8 deletions
| diff --git a/src/emitter.rs b/src/emitter.rs index b47dc20..8f9e56d 100644 --- a/src/emitter.rs +++ b/src/emitter.rs @@ -184,7 +184,7 @@ pub struct DefaultEmitter<R, S> {      current_characters: String,      current_token: Option<Token<S>>,      last_start_tag: String, -    current_attribute: Option<(String, String)>, +    current_attribute: Option<(String, Attribute<S>)>,      seen_attributes: BTreeSet<String>,      emitted_tokens: VecDeque<Token<S>>,      reader: PhantomData<R>, @@ -220,11 +220,7 @@ impl<R> DefaultEmitter<R, ()> {                          .and_modify(|_| {                              error = Some(Error::DuplicateAttribute);                          }) -                        .or_insert(Attribute { -                            value: v, -                            name_span: (), -                            value_span: (), -                        }); +                        .or_insert(v);                      if let Some(e) = error {                          self.emit_error(e); @@ -383,13 +379,13 @@ impl<R> Emitter<R> for DefaultEmitter<R, ()> {      fn init_attribute_name(&mut self, _reader: &R) {          self.flush_current_attribute(); -        self.current_attribute = Some((String::new(), String::new())); +        self.current_attribute = Some((String::new(), Attribute::default()));      }      fn push_attribute_name(&mut self, s: &str) {          self.current_attribute.as_mut().unwrap().0.push_str(s);      }      fn push_attribute_value(&mut self, s: &str) { -        self.current_attribute.as_mut().unwrap().1.push_str(s); +        self.current_attribute.as_mut().unwrap().1.value.push_str(s);      }      fn set_doctype_public_identifier(&mut self, value: &str) {          if let Some(Token::Doctype(Doctype { | 
