4 writes to _chars
Microsoft.Build.Framework (4)
Utilities\ValueStringBuilder.cs (4)
46_chars = initialBuffer; 57_chars = MemoryMarshal.Cast<byte, char>((Span<byte>)_arrayToReturnToPool); 425_chars = MemoryMarshal.Cast<byte, char>((Span<byte>)poolArray); 447_chars = default;
41 references to _chars
Microsoft.Build.Framework (41)
Utilities\ValueStringBuilder.cs (41)
71ArgumentOutOfRangeException.ThrowIfGreaterThan(value, _chars.Length); 79public readonly int Capacity => _chars.Length; 97if ((uint)capacity > (uint)_chars.Length) 113_chars[_length] = '\0'; 114return ref _chars.GetPinnableReference(); 125return ref _chars[index]; 132public override readonly string ToString() => _chars[.._length].ToString(); 153_chars[Length] = '\0'; 156return _chars[.._length]; 162public readonly ReadOnlySpan<char> AsSpan() => _chars[.._length]; 167public readonly ReadOnlySpan<char> this[Range range] => _chars[.._length][range]; 176return _chars[start.._length]; 189return _chars.Slice(start, length); 202if (originalLength > _chars.Length - length) 208return _chars.Slice(originalLength, length); 216if (_chars[.._length].TryCopyTo(destination)) 235if (_length > _chars.Length - count) 241_chars.Slice(index, remaining).CopyTo(_chars[(index + count)..]); 242_chars.Slice(index, count).Fill(value); 261if (_length > _chars.Length - count) 267_chars.Slice(index, remaining).CopyTo(_chars[(index + count)..]); 268s.AsSpan().CopyTo(_chars[index..]); 279if ((uint)pos < (uint)_chars.Length) 281_chars[pos] = c; 302if (s.Length == 1 && (uint)pos < (uint)_chars.Length) 305_chars[pos] = s[0]; 317if (pos > _chars.Length - s.Length) 322s.AsSpan().CopyTo(_chars[pos..]); 331if (_length > _chars.Length - count) 336Span<char> dst = _chars.Slice(_length, count); 351if (pos > _chars.Length - length) 356Span<char> dst = _chars.Slice(_length, length); 371if (pos > _chars.Length - value.Length) 376value.CopyTo(_chars[_length..]); 390_chars[.._length].Replace(oldValue, newValue); 409Debug.Assert(_length > _chars.Length - additionalCapacityBeyondPos, "Grow called incorrectly, no resize is needed."); 417Math.Min((uint)_chars.Length * 2, ArrayMaxLength)); 422_chars[.._length].CopyTo(MemoryMarshal.Cast<byte, char>((Span<byte>)poolArray)); 459public static implicit operator ReadOnlySpan<char>(ValueStringBuilder builder) => builder._chars[..builder._length];