protected override void Write(XamlMarkdownWriter renderer, LiteralInline obj)
        {
            if (obj.Content.IsEmpty)
            {
                return;
            }

            renderer.WriteText(ref obj.Content);
        } // proc Write
        protected override void Write(XamlMarkdownWriter renderer, CodeInline code)
        {
            renderer.WriteStartObject(typeof(Span));
            renderer.WriteResourceMember(null, MarkdownXamlStyle.Code);

            renderer.WriteStartItems(nameof(Span.Inlines), true);
            renderer.WriteText(code.Content);
            renderer.WriteEndItems();
            renderer.WriteEndObject();
        } // proc Write
 protected override void Write(XamlMarkdownWriter renderer, LineBreakInline obj)
 {
     if (obj.IsHard)
     {
         renderer.WriteLineBreak();
     }
     else             // Soft line break.
     {
         renderer.WriteText(" ");
     }
 } // proc Write
        protected override void Write(XamlMarkdownWriter renderer, AutolinkInline link)
        {
            var url   = link.Url;
            var title = url;

            if (link.IsEmail)
            {
                url = "mailto:" + url;
            }

            LinkInlineRenderer.WriteStartHyperlink(renderer, url, title);
            renderer.WriteText(title);
            LinkInlineRenderer.WriteEndHyperlink(renderer);
        } // proc Write
 protected override void Write(XamlMarkdownWriter renderer, DelimiterInline obj)
 {
     renderer.WriteText(obj.ToLiteral());
     renderer.WriteChildren(obj);
 } // proc Write