From 66d8f55399111f7be7dfac6b32f6af20e103c749 Mon Sep 17 00:00:00 2001 From: Todd Grunke Date: Wed, 29 May 2024 04:38:22 -0700 Subject: [PATCH] Change the DocumentationCommentId to use a PooledStringBuilder (#73737) This shows as about 1% of allocations in OOP in a find references profile I'm looking at. --- src/Compilers/Core/Portable/DocumentationCommentId.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Compilers/Core/Portable/DocumentationCommentId.cs b/src/Compilers/Core/Portable/DocumentationCommentId.cs index e9efd222012e4..607e111ae0609 100644 --- a/src/Compilers/Core/Portable/DocumentationCommentId.cs +++ b/src/Compilers/Core/Portable/DocumentationCommentId.cs @@ -54,11 +54,11 @@ public void ClearAndFree(List list) throw new ArgumentNullException(nameof(symbol)); } - var builder = new StringBuilder(); + var builder = PooledStringBuilder.GetInstance(); var generator = new PrefixAndDeclarationGenerator(builder); generator.Visit(symbol); - return generator.Failed ? null : builder.ToString(); + return generator.Failed ? null : builder.ToStringAndFree(); } /// @@ -86,10 +86,10 @@ public static string CreateReferenceId(ISymbol symbol) return result; } - var builder = new StringBuilder(); + var builder = PooledStringBuilder.GetInstance(); var generator = new ReferenceGenerator(builder, typeParameterContext: null); generator.Visit(symbol); - return builder.ToString(); + return builder.ToStringAndFree(); } ///