protected override void WriteContent(JsonRenderer renderer, CodeInline obj) { var content = obj.Content; var tag = Extension.GetTagName(content); if (tag != null) { renderer.WriteProperty("tag", content); renderer.WriteProperty("text", tag); } else { renderer.WriteProperty("text", content); } }
protected override void WriteData(JsonRenderer renderer, LinkInline obj) { var(url, title, nsfw) = obj.GetData(); renderer.WriteProperty("title", title); renderer.WriteProperty("url", url); if (obj.IsImage) { if (nsfw is null) { renderer.WriteProperty("nsfw", false); } else { renderer.WriteProperty("nsfw", nsfw); } } }
protected override void Write(JsonRenderer renderer, TObject obj) { renderer.WriteTextEnd(); renderer.JsonWriter.WriteStartObject(); renderer.WriteProperty("type", GetType(renderer, obj)); WriteData(renderer, obj); WriteContent(renderer, obj); renderer.JsonWriter.WriteEndObject(); }
protected override void WriteData(JsonRenderer renderer, AutolinkInline obj) { renderer.WriteProperty("title", obj.Url); renderer.WriteProperty("url", obj.IsEmail ? "mailto:" + obj.Url : obj.Url); }