use pulldown_cmark::{Event, TagEnd};
use super::writer::{TableState, VertigoWriter};
impl<'a, I> VertigoWriter<'a, I>
where
I: Iterator<Item = Event<'a>>,
{
pub(super) fn end_tag(&mut self, tag: TagEnd) {
match tag {
TagEnd::HtmlBlock => {}
TagEnd::Table => {
self.pop_node();
self.pop_node();
}
TagEnd::TableHead => {
self.pop_node();
self.pop_node();
self.push_elname("tbody", &self.styling.clone().tbody);
self.table_state = TableState::Body;
}
TagEnd::TableCell => {
self.pop_node();
self.table_cell_index += 1;
}
TagEnd::CodeBlock => {
self.pop_node();
#[cfg(feature = "syntect")]
{
self.in_code_block = None;
}
#[cfg(not(feature = "syntect"))]
{
self.pop_node();
}
}
TagEnd::TableRow
| TagEnd::Paragraph
| TagEnd::Heading(_)
| TagEnd::BlockQuote(_)
| TagEnd::List(_)
| TagEnd::Item
| TagEnd::DefinitionList
| TagEnd::DefinitionListTitle
| TagEnd::DefinitionListDefinition
| TagEnd::Subscript
| TagEnd::Superscript
| TagEnd::Emphasis
| TagEnd::Strong
| TagEnd::Strikethrough
| TagEnd::Link
| TagEnd::FootnoteDefinition => {
self.pop_node();
}
TagEnd::Image => {} TagEnd::MetadataBlock(_) => {
self.in_non_writing_block = false;
}
}
}
}