13 writes to m_ChunkChars
System.Private.CoreLib (13)
src\libraries\System.Private.CoreLib\src\System\Text\StringBuilder.cs (10)
81
m_ChunkChars
= new char[DefaultCapacity];
139
m_ChunkChars
= GC.AllocateUninitializedArray<char>(capacity);
165
m_ChunkChars
= GC.AllocateUninitializedArray<char>(capacity);
219
m_ChunkChars
= GC.AllocateUninitializedArray<char>(persistedCapacity);
286
m_ChunkChars
= newArray;
427
m_ChunkChars
= newArray;
434
m_ChunkChars
= chunk.m_ChunkChars;
2648
m_ChunkChars
= chunkChars;
2672
m_ChunkChars
= from.m_ChunkChars;
2780
m_ChunkChars
= GC.AllocateUninitializedArray<char>(size);
src\System\Text\StringBuilder.CoreCLR.cs (3)
33
m_ChunkChars
= new char[GetReplaceBufferCapacity(newLength)];
49
m_ChunkChars
= new char[GetReplaceBufferCapacity(numChars)];
63
m_ChunkChars
= new char[GetReplaceBufferCapacity(newLength)];
59 references to m_ChunkChars
System.Private.CoreLib (59)
src\libraries\System.Private.CoreLib\src\System\Text\StringBuilder.cs (52)
44
/// This is the number of elements in <see cref="
m_ChunkChars
"/> that are in use, from the start of the buffer.
142
value.AsSpan(startIndex, length).CopyTo(
m_ChunkChars
);
220
persistedString.CopyTo(0,
m_ChunkChars
, 0, persistedString.Length);
240
Debug.Assert(m_ChunkOffset +
m_ChunkChars
.Length >= m_ChunkOffset, "The length of the string is greater than int.MaxValue.");
248
Debug.Assert(currentBlock.
m_ChunkChars
!= null);
250
Debug.Assert(currentBlock.m_ChunkLength <= currentBlock.
m_ChunkChars
.Length);
268
get =>
m_ChunkChars
.Length + m_ChunkOffset;
285
Array.Copy(
m_ChunkChars
, newArray, m_ChunkLength);
331
char[] sourceArray = chunk.
m_ChunkChars
;
419
int capacityToPreserve = Math.Min(Capacity, Math.Max(Length * 6 / 5,
m_ChunkChars
.Length));
421
if (newLen > chunk.
m_ChunkChars
.Length)
426
Array.Copy(chunk.
m_ChunkChars
, newArray, chunk.m_ChunkLength);
433
Debug.Assert(newLen == chunk.
m_ChunkChars
.Length, "The new chunk should be larger or equal to the one it is replacing.");
434
m_ChunkChars = chunk.
m_ChunkChars
;
462
return chunk.
m_ChunkChars
[indexInBlock];
483
chunk.
m_ChunkChars
[indexInBlock] = value;
580
return new ReadOnlyMemory<char>(_currentChunk.
m_ChunkChars
, 0, _currentChunk.m_ChunkLength);
672
char[] chunkChars =
m_ChunkChars
;
702
char[] chunkChars =
m_ChunkChars
;
719
m_ChunkChars
.AsSpan(0, restLength).Fill(value);
855
int length = Math.Min(
m_ChunkChars
.Length - m_ChunkLength, count);
859
Debug.Assert(m_ChunkLength == 0 &&
m_ChunkChars
.Length >= count);
862
value.CopyTo(startIndex, new Span<char>(
m_ChunkChars
, m_ChunkLength, length), length);
931
new ReadOnlySpan<char>(chunk.
m_ChunkChars
, chunkStartIndex, chunkCount).CopyTo(destination.Slice(curDestIndex));
1016
char[] chars =
m_ChunkChars
;
1036
m_ChunkChars
[0] = value;
2047
if (thisChunk.
m_ChunkChars
[thisChunkIndex] != sbChunk.
m_ChunkChars
[sbChunkIndex])
2073
ReadOnlySpan<char> chunk = new ReadOnlySpan<char>(sbChunk.
m_ChunkChars
, 0, chunk_length);
2144
ReadOnlySpan<char> remainingChunk = chunk.
m_ChunkChars
.AsSpan(indexInChunk, Math.Min(chunk.m_ChunkLength - indexInChunk, count));
2269
Span<char> span = chunk.
m_ChunkChars
.AsSpan(curInChunk, endInChunk - curInChunk);
2341
char[] chunkChars =
m_ChunkChars
;
2380
int firstLength =
m_ChunkChars
.Length - m_ChunkLength;
2383
new ReadOnlySpan<char>(ref value, firstLength).CopyTo(
m_ChunkChars
.AsSpan(m_ChunkLength));
2384
m_ChunkLength =
m_ChunkChars
.Length;
2393
new ReadOnlySpan<char>(ref Unsafe.Add(ref value, firstLength), restLength).CopyTo(
m_ChunkChars
);
2461
Debug.Assert(gapStart < sourceChunk.
m_ChunkChars
.Length, "gap starts at end of buffer. Should not happen");
2467
ReplaceInPlaceAtChunk(ref targetChunk!, ref targetIndexInChunk, ref sourceChunk.
m_ChunkChars
[gapStart], gapEnd - gapStart);
2509
if (value[i] != chunk.
m_ChunkChars
[indexInChunk])
2546
new ReadOnlySpan<char>(ref value, lengthToCopy).CopyTo(chunk.
m_ChunkChars
.AsSpan(indexInChunk));
2592
get => new Span<char>(
m_ChunkChars
, m_ChunkLength,
m_ChunkChars
.Length - m_ChunkLength);
2672
m_ChunkChars = from.
m_ChunkChars
;
2727
if (!doNotMoveFollowingChars && chunk.m_ChunkLength <= DefaultCapacity * 2 && chunk.
m_ChunkChars
.Length - chunk.m_ChunkLength >= count)
2732
chunk.
m_ChunkChars
[i + count] = chunk.
m_ChunkChars
[i];
2746
new ReadOnlySpan<char>(chunk.
m_ChunkChars
, 0, copyCount1).CopyTo(newChunk.
m_ChunkChars
);
2752
new ReadOnlySpan<char>(chunk.
m_ChunkChars
, copyCount1, copyCount2).CopyTo(chunk.
m_ChunkChars
);
2863
new ReadOnlySpan<char>(endChunk.
m_ChunkChars
, endIndexInChunk, copyCount).CopyTo(endChunk.
m_ChunkChars
.AsSpan(copyTargetIndexInChunk));
src\libraries\System.Private.CoreLib\src\System\Text\StringBuilder.Debug.cs (1)
34
chunks[i - 1] = new string(current.
m_ChunkChars
).Replace('\0', '.');
src\System\Text\StringBuilder.CoreCLR.cs (6)
31
if (newLength >
m_ChunkChars
.Length)
36
new Span<char>(newBuffer, newLength).CopyTo(
m_ChunkChars
);
47
if (numChars >
m_ChunkChars
.Length)
52
m_ChunkLength = Encoding.UTF8.GetChars(source,
m_ChunkChars
);
61
if (newLength >
m_ChunkChars
.Length)
68
fixed (char* pChunkChars =
m_ChunkChars
)