[PR #530] [MERGED] Improve Code Quality #1095

Open
opened 2026-01-29 14:49:41 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/xoofx/markdig/pull/530
Author: @iamcarbon
Created: 3/12/2021
Status: Merged
Merged: 3/15/2021
Merged by: @xoofx

Base: masterHead: cq


📝 Commits (10+)

  • bd2bb98 Compare strings using StringComparison.Ordinal
  • 0c9b5dd Use is (not) pattern to match constant strings
  • c9ba236 Write chars, instead of strings, where possible
  • e0a2f9e Add notes on why we continue to support net452
  • 35d3160 Eliminate a few allocations to hold indents
  • 1c862a1 Remove unused using statement
  • a724783 CodeBlockLines is always defined. Remove lazy initializer
  • f1cd0cb Enable nullable on CharacterMap
  • 8fdc0d5 Format TableState
  • 780e16a Simplify list initialization

📊 Changes

36 files changed (+114 additions, -104 deletions)

View changed files

📝 src/Markdig/Extensions/CustomContainers/HtmlCustomContainerInlineRenderer.cs (+1 -1)
📝 src/Markdig/Extensions/CustomContainers/HtmlCustomContainerRenderer.cs (+1 -1)
📝 src/Markdig/Extensions/DefinitionLists/HtmlDefinitionListRenderer.cs (+3 -3)
📝 src/Markdig/Extensions/Figures/HtmlFigureCaptionRenderer.cs (+1 -1)
📝 src/Markdig/Extensions/Footnotes/Footnote.cs (+1 -2)
📝 src/Markdig/Extensions/MediaLinks/HostProviderBuilder.cs (+3 -3)
📝 src/Markdig/Extensions/MediaLinks/MediaLinkExtension.cs (+3 -3)
📝 src/Markdig/Extensions/Tables/HtmlTableRenderer.cs (+3 -3)
📝 src/Markdig/Extensions/Tables/PipeTableParser.cs (+3 -10)
📝 src/Markdig/Extensions/Tables/Table.cs (+2 -3)
📝 src/Markdig/Helpers/CharacterMap.cs (+5 -7)
📝 src/Markdig/Helpers/CompactPrefixTree.cs (+4 -4)
📝 src/Markdig/Markdig.targets (+2 -0)
📝 src/Markdig/Parsers/IndentedCodeBlockParser.cs (+0 -1)
📝 src/Markdig/Parsers/Inlines/AutolinkInlineParser.cs (+1 -2)
📝 src/Markdig/Parsers/Inlines/CodeInlineParser.cs (+1 -2)
📝 src/Markdig/Parsers/ListBlockParser.cs (+1 -1)
📝 src/Markdig/Renderers/Html/CodeBlockRenderer.cs (+3 -3)
📝 src/Markdig/Renderers/Html/HeadingRenderer.cs (+1 -1)
📝 src/Markdig/Renderers/Html/Inlines/AutolinkInlineRenderer.cs (+1 -1)

...and 16 more files

📄 Description

This PR:

  • Compares strings using StringComparison.Ordinal or pattern matching to avoid culture differences
  • Writes chars, where possible, to avoid passing references
  • Eliminates a few allocations
  • Enables nullable in a few more places
  • Ensures CodeInline.Content is initialized by adding a constructor
  • Seals renderer classes to ensure they are not subclassed

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/xoofx/markdig/pull/530 **Author:** [@iamcarbon](https://github.com/iamcarbon) **Created:** 3/12/2021 **Status:** ✅ Merged **Merged:** 3/15/2021 **Merged by:** [@xoofx](https://github.com/xoofx) **Base:** `master` ← **Head:** `cq` --- ### 📝 Commits (10+) - [`bd2bb98`](https://github.com/xoofx/markdig/commit/bd2bb9863122555f85e46e8bdd93a2554f81382b) Compare strings using StringComparison.Ordinal - [`0c9b5dd`](https://github.com/xoofx/markdig/commit/0c9b5dddc9609c6e86eb10d2f194b8573481ef1d) Use is (not) pattern to match constant strings - [`c9ba236`](https://github.com/xoofx/markdig/commit/c9ba236dbcddc8672a04f3c31316a8a8e04202d2) Write chars, instead of strings, where possible - [`e0a2f9e`](https://github.com/xoofx/markdig/commit/e0a2f9e52da5107c84ce10e8282524a14f946674) Add notes on why we continue to support net452 - [`35d3160`](https://github.com/xoofx/markdig/commit/35d3160ad2d43899bb47066b8ea41fb66443623e) Eliminate a few allocations to hold indents - [`1c862a1`](https://github.com/xoofx/markdig/commit/1c862a1e076e259f39f1b754c7fafec616226f2b) Remove unused using statement - [`a724783`](https://github.com/xoofx/markdig/commit/a724783e3fce301a6b17c5051300f12773b7c96c) CodeBlockLines is always defined. Remove lazy initializer - [`f1cd0cb`](https://github.com/xoofx/markdig/commit/f1cd0cb1b80a22c3ddbf859f1631ffd9867ed502) Enable nullable on CharacterMap - [`8fdc0d5`](https://github.com/xoofx/markdig/commit/8fdc0d59d75331a0b7aa79746ddf73f6b763e95b) Format TableState - [`780e16a`](https://github.com/xoofx/markdig/commit/780e16a9c9ff0e6a784c0c59cba3ac3983c1d0e3) Simplify list initialization ### 📊 Changes **36 files changed** (+114 additions, -104 deletions) <details> <summary>View changed files</summary> 📝 `src/Markdig/Extensions/CustomContainers/HtmlCustomContainerInlineRenderer.cs` (+1 -1) 📝 `src/Markdig/Extensions/CustomContainers/HtmlCustomContainerRenderer.cs` (+1 -1) 📝 `src/Markdig/Extensions/DefinitionLists/HtmlDefinitionListRenderer.cs` (+3 -3) 📝 `src/Markdig/Extensions/Figures/HtmlFigureCaptionRenderer.cs` (+1 -1) 📝 `src/Markdig/Extensions/Footnotes/Footnote.cs` (+1 -2) 📝 `src/Markdig/Extensions/MediaLinks/HostProviderBuilder.cs` (+3 -3) 📝 `src/Markdig/Extensions/MediaLinks/MediaLinkExtension.cs` (+3 -3) 📝 `src/Markdig/Extensions/Tables/HtmlTableRenderer.cs` (+3 -3) 📝 `src/Markdig/Extensions/Tables/PipeTableParser.cs` (+3 -10) 📝 `src/Markdig/Extensions/Tables/Table.cs` (+2 -3) 📝 `src/Markdig/Helpers/CharacterMap.cs` (+5 -7) 📝 `src/Markdig/Helpers/CompactPrefixTree.cs` (+4 -4) 📝 `src/Markdig/Markdig.targets` (+2 -0) 📝 `src/Markdig/Parsers/IndentedCodeBlockParser.cs` (+0 -1) 📝 `src/Markdig/Parsers/Inlines/AutolinkInlineParser.cs` (+1 -2) 📝 `src/Markdig/Parsers/Inlines/CodeInlineParser.cs` (+1 -2) 📝 `src/Markdig/Parsers/ListBlockParser.cs` (+1 -1) 📝 `src/Markdig/Renderers/Html/CodeBlockRenderer.cs` (+3 -3) 📝 `src/Markdig/Renderers/Html/HeadingRenderer.cs` (+1 -1) 📝 `src/Markdig/Renderers/Html/Inlines/AutolinkInlineRenderer.cs` (+1 -1) _...and 16 more files_ </details> ### 📄 Description This PR: - Compares strings using StringComparison.Ordinal or pattern matching to avoid culture differences - Writes chars, where possible, to avoid passing references - Eliminates a few allocations - Enables nullable in a few more places - Ensures CodeInline.Content is initialized by adding a constructor - Seals renderer classes to ensure they are not subclassed --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-29 14:49:42 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/markdig#1095