55using System . Text ;
66using System . Text . RegularExpressions ;
77
8+ using AdvancedStringBuilder ;
9+
810using MsieJavaScriptEngine . Extensions ;
911using MsieJavaScriptEngine . Resources ;
10- using MsieJavaScriptEngine . Utilities ;
1112
1213namespace MsieJavaScriptEngine . Helpers
1314{
@@ -91,7 +92,8 @@ internal static string StringifyCallStackItems(CallStackItem[] callStackItems)
9192 return string . Empty ;
9293 }
9394
94- StringBuilder stackBuilder = StringBuilderPool . GetBuilder ( ) ;
95+ var stringBuilderPool = StringBuilderPool . Shared ;
96+ StringBuilder stackBuilder = stringBuilderPool . Rent ( ) ;
9597
9698 for ( int stackItemIndex = 0 ; stackItemIndex < stackItemCount ; stackItemIndex ++ )
9799 {
@@ -106,7 +108,7 @@ internal static string StringifyCallStackItems(CallStackItem[] callStackItems)
106108 }
107109
108110 string callStack = stackBuilder . ToString ( ) ;
109- StringBuilderPool . ReleaseBuilder ( stackBuilder ) ;
111+ stringBuilderPool . Return ( stackBuilder ) ;
110112
111113 return callStack ;
112114 }
@@ -144,7 +146,8 @@ internal static string GenerateEngineLoadErrorMessage(string description, string
144146
145147 if ( ! string . IsNullOrWhiteSpace ( description ) )
146148 {
147- StringBuilder messageBuilder = StringBuilderPool . GetBuilder ( ) ;
149+ var stringBuilderPool = StringBuilderPool . Shared ;
150+ StringBuilder messageBuilder = stringBuilderPool . Rent ( ) ;
148151 messageBuilder . Append ( jsEngineNotLoadedPart ) ;
149152 messageBuilder . Append ( " " ) ;
150153 if ( quoteDescription )
@@ -157,7 +160,7 @@ internal static string GenerateEngineLoadErrorMessage(string description, string
157160 }
158161
159162 message = messageBuilder . ToString ( ) ;
160- StringBuilderPool . ReleaseBuilder ( messageBuilder ) ;
163+ stringBuilderPool . Return ( messageBuilder ) ;
161164 }
162165 else
163166 {
@@ -223,7 +226,8 @@ internal static string GenerateScriptErrorMessage(string type, string descriptio
223226 ) ;
224227 }
225228
226- StringBuilder messageBuilder = StringBuilderPool . GetBuilder ( ) ;
229+ var stringBuilderPool = StringBuilderPool . Shared ;
230+ StringBuilder messageBuilder = stringBuilderPool . Rent ( ) ;
227231 if ( ! string . IsNullOrWhiteSpace ( type ) )
228232 {
229233 messageBuilder . Append ( type ) ;
@@ -247,7 +251,7 @@ internal static string GenerateScriptErrorMessage(string type, string descriptio
247251 }
248252
249253 string errorMessage = messageBuilder . ToString ( ) ;
250- StringBuilderPool . ReleaseBuilder ( messageBuilder ) ;
254+ stringBuilderPool . Return ( messageBuilder ) ;
251255
252256 return errorMessage ;
253257 }
@@ -269,7 +273,8 @@ public static string GenerateErrorDetails(JsException jsException, bool omitMess
269273 throw new ArgumentNullException ( nameof ( jsException ) ) ;
270274 }
271275
272- StringBuilder detailsBuilder = StringBuilderPool . GetBuilder ( ) ;
276+ var stringBuilderPool = StringBuilderPool . Shared ;
277+ StringBuilder detailsBuilder = stringBuilderPool . Rent ( ) ;
273278 WriteCommonErrorDetails ( detailsBuilder , jsException , omitMessage ) ;
274279
275280 var jsScriptException = jsException as JsScriptException ;
@@ -287,7 +292,7 @@ public static string GenerateErrorDetails(JsException jsException, bool omitMess
287292 detailsBuilder . TrimEnd ( ) ;
288293
289294 string errorDetails = detailsBuilder . ToString ( ) ;
290- StringBuilderPool . ReleaseBuilder ( detailsBuilder ) ;
295+ stringBuilderPool . Return ( detailsBuilder ) ;
291296
292297 return errorDetails ;
293298 }
@@ -306,7 +311,8 @@ public static string GenerateErrorDetails(JsScriptException jsScriptException,
306311 throw new ArgumentNullException ( nameof ( jsScriptException ) ) ;
307312 }
308313
309- StringBuilder detailsBuilder = StringBuilderPool . GetBuilder ( ) ;
314+ var stringBuilderPool = StringBuilderPool . Shared ;
315+ StringBuilder detailsBuilder = stringBuilderPool . Rent ( ) ;
310316 WriteCommonErrorDetails ( detailsBuilder , jsScriptException , omitMessage ) ;
311317 WriteScriptErrorDetails ( detailsBuilder , jsScriptException ) ;
312318
@@ -319,7 +325,7 @@ public static string GenerateErrorDetails(JsScriptException jsScriptException,
319325 detailsBuilder . TrimEnd ( ) ;
320326
321327 string errorDetails = detailsBuilder . ToString ( ) ;
322- StringBuilderPool . ReleaseBuilder ( detailsBuilder ) ;
328+ stringBuilderPool . Return ( detailsBuilder ) ;
323329
324330 return errorDetails ;
325331 }
@@ -338,15 +344,16 @@ public static string GenerateErrorDetails(JsRuntimeException jsRuntimeException,
338344 throw new ArgumentNullException ( nameof ( jsRuntimeException ) ) ;
339345 }
340346
341- StringBuilder detailsBuilder = StringBuilderPool . GetBuilder ( ) ;
347+ var stringBuilderPool = StringBuilderPool . Shared ;
348+ StringBuilder detailsBuilder = stringBuilderPool . Rent ( ) ;
342349 WriteCommonErrorDetails ( detailsBuilder , jsRuntimeException , omitMessage ) ;
343350 WriteScriptErrorDetails ( detailsBuilder , jsRuntimeException ) ;
344351 WriteRuntimeErrorDetails ( detailsBuilder , jsRuntimeException ) ;
345352
346353 detailsBuilder . TrimEnd ( ) ;
347354
348355 string errorDetails = detailsBuilder . ToString ( ) ;
349- StringBuilderPool . ReleaseBuilder ( detailsBuilder ) ;
356+ stringBuilderPool . Return ( detailsBuilder ) ;
350357
351358 return errorDetails ;
352359 }
0 commit comments