Skip to content

Commit a8d2d3e

Browse files
committed
.
1 parent 952beff commit a8d2d3e

File tree

223 files changed

+33
-2306
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

223 files changed

+33
-2306
lines changed

src/ApiBuilderTests/Splitter.cs

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ public static async Task Run()
286286
var lines = ProcessFile(sourceCode, definedSymbols);
287287
lines = RemoveEmptyConditionalBlocks(lines);
288288
lines = RemoveEmptyLines(lines);
289-
if (lines.Count == 0 || !ContainsTypes(lines))
289+
if (lines.Count == 0 || !ContainsTypes(lines) || IsEmptyPolyfillClass(lines))
290290
{
291291
continue;
292292
}
@@ -319,6 +319,38 @@ public static bool ContainsTypes(List<string> lines) =>
319319
trimmed.Contains("TypeForwardedTo");
320320
});
321321

322+
/// <summary>
323+
/// Checks if the file is an empty Polyfill class (only contains namespace, usings, and an empty static partial class Polyfill).
324+
/// </summary>
325+
public static bool IsEmptyPolyfillClass(List<string> lines)
326+
{
327+
foreach (var line in lines)
328+
{
329+
var trimmed = line.TrimStart();
330+
331+
// Skip namespace declarations, using statements, braces, and preprocessor directives
332+
if (trimmed.StartsWith("namespace ") ||
333+
trimmed.StartsWith("using ") ||
334+
trimmed is "{" or "}" ||
335+
trimmed.StartsWith('#'))
336+
{
337+
continue;
338+
}
339+
340+
// Skip the Polyfill class declaration itself
341+
if (trimmed.StartsWith("static partial class Polyfill") ||
342+
trimmed.StartsWith("partial class Polyfill"))
343+
{
344+
continue;
345+
}
346+
347+
// Any other content means it's not empty
348+
return false;
349+
}
350+
351+
return true;
352+
}
353+
322354
/// <summary>
323355
/// Removes empty conditional blocks (e.g., #if X followed directly by #endif with no content).
324356
/// Handles nested cases by repeatedly removing until no more empty blocks exist.

src/Split/net10.0/Polyfill_ArraySegment.cs

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/Split/net10.0/Polyfill_CancellationToken.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Compression.cs

Lines changed: 0 additions & 14 deletions
This file was deleted.

src/Split/net10.0/Polyfill_DateTime.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Dictionary.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Encoding.cs

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Encoding_GetByteCount.cs

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Encoding_GetCharCount.cs

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/Split/net10.0/Polyfill_Encoding_GetChars.cs

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)