From 305748b791b019a5829bba2d59bb1f0488e60ba3 Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Fri, 8 Nov 2024 14:45:20 +1100 Subject: [PATCH] chore: avoid multi enumeration warnings in TryGetStringBeforeChars (#10358) * avoid multi enumeration warnings in TryGetStringBeforeChars * Revert "test: generate public API contract" This reverts commit 1613584e70195bbdb46ebc7b92a7a517c1ef0875 --------- Co-authored-by: Yufei Huang --- src/Docfx.MarkdigEngine.Extensions/ExtensionsHelper.cs | 8 ++++---- src/Docfx.MarkdigEngine.Extensions/Noloc/NolocParser.cs | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Docfx.MarkdigEngine.Extensions/ExtensionsHelper.cs b/src/Docfx.MarkdigEngine.Extensions/ExtensionsHelper.cs index 1833039ac16..2a47f838972 100644 --- a/src/Docfx.MarkdigEngine.Extensions/ExtensionsHelper.cs +++ b/src/Docfx.MarkdigEngine.Extensions/ExtensionsHelper.cs @@ -139,7 +139,7 @@ public static void SkipWhitespace(ref StringSlice slice) } } - public static string TryGetStringBeforeChars(IEnumerable chars, ref StringSlice slice, bool breakOnWhitespace = false) + public static string TryGetStringBeforeChars(IReadOnlyList chars, ref StringSlice slice, bool breakOnWhitespace = false) { StringSlice savedSlice = slice; var c = slice.CurrentChar; @@ -239,11 +239,11 @@ private static bool MatchPath(ref StringSlice slice, ref string path) string includedFilePath; if (slice.CurrentChar == '<') { - includedFilePath = TryGetStringBeforeChars(new char[] { ')', '>' }, ref slice, breakOnWhitespace: true); + includedFilePath = TryGetStringBeforeChars([')', '>'], ref slice, breakOnWhitespace: true); } else { - includedFilePath = TryGetStringBeforeChars(new char[] { ')' }, ref slice, breakOnWhitespace: true); + includedFilePath = TryGetStringBeforeChars([')'], ref slice, breakOnWhitespace: true); } if (includedFilePath == null) @@ -264,7 +264,7 @@ private static bool MatchPath(ref StringSlice slice, ref string path) } else { - var title = TryGetStringBeforeChars(new char[] { ')' }, ref slice, breakOnWhitespace: false); + var title = TryGetStringBeforeChars([')'], ref slice, breakOnWhitespace: false); if (title == null) { return false; diff --git a/src/Docfx.MarkdigEngine.Extensions/Noloc/NolocParser.cs b/src/Docfx.MarkdigEngine.Extensions/Noloc/NolocParser.cs index b7dfa65b018..12447ff19bd 100644 --- a/src/Docfx.MarkdigEngine.Extensions/Noloc/NolocParser.cs +++ b/src/Docfx.MarkdigEngine.Extensions/Noloc/NolocParser.cs @@ -24,7 +24,7 @@ public override bool Match(InlineProcessor processor, ref StringSlice slice) return false; } - var text = ExtensionsHelper.TryGetStringBeforeChars(new char[] { '\"', '\n' }, ref slice); + var text = ExtensionsHelper.TryGetStringBeforeChars(['\"', '\n'], ref slice); if (text == null || text.Contains('\n')) {