<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.5" />

ValueStringBuilder

public int Capacity { get; }

public ref char this[int index] { get; }

public int Length { get; set; }

public Span<char> RawChars { get; }

Returns the underlying storage of the builder.

public ValueStringBuilder(Span<char> initialBuffer)

public ValueStringBuilder(int initialCapacity)

public void Append(char c)

public void Append(string s)

public void Append(char c, int count)

public void Append(Char* value, int length)

public void Append(ReadOnlySpan<char> value)

public Span<char> AppendSpan(int length)

public ReadOnlySpan<char> AsSpan(bool terminate)

Returns a span around the contents of the builder.

public ReadOnlySpan<char> AsSpan()

public ReadOnlySpan<char> AsSpan(int start)

public ReadOnlySpan<char> AsSpan(int start, int length)

public void Dispose()

public void EnsureCapacity(int capacity)

public ref char GetPinnableReference()

Get a pinnable reference to the builder. Does not ensure there is a null char after Length This overload is pattern matched in the C# 7.3+ compiler so you can omit the explicit method call, and write eg "fixed (char* c = builder)"

public ref char GetPinnableReference(bool terminate)

Get a pinnable reference to the builder.

public void Insert(int index, char value, int count)

public void Insert(int index, string s)

public bool TryCopyTo(Span<char> destination, out int charsWritten)