cargo-sync-rdme 0.5.0

Cargo subcommand to synchronize README with crate documentation
Documentation
use pulldown_cmark::{Event, Tag, TagEnd};

pub(super) fn convert<'a, 'b>(
    events: impl IntoIterator<Item = Event<'a>> + 'b,
) -> impl Iterator<Item = Event<'a>> + 'b {
    use pulldown_cmark::HeadingLevel::*;
    events.into_iter().map(|mut event| {
        match &mut event {
            Event::Start(Tag::Heading { level, .. }) | Event::End(TagEnd::Heading(level)) => {
                *level = match level {
                    H1 => H2,
                    H2 => H3,
                    H3 => H4,
                    H4 => H5,
                    H5 => H6,
                    H6 => H6,
                }
            }
            _ => {}
        }
        event
    })
}