A class similar to StringBuilder, but implemented using unsafe C#.
Implements
Namespace: Flashtrace.Formatters
Assembly: Flashtrace.Formatters.dll
Syntax
public sealed class UnsafeStringBuilder : IDisposableConstructors
| Name | Description |
|---|---|
| UnsafeStringBuilder(char*, int, bool) | Initializes a new instance of the UnsafeStringBuilder class with a pre-allocated buffer. |
| UnsafeStringBuilder(int, bool) | Initializes a new instance of the UnsafeStringBuilder class and allocates a new buffer. |
Properties
| Name | Description |
|---|---|
| Buffer | Gets a pointer to the unmanaged buffer of the current UnsafeStringBuilder. |
| Capacity | Gets the capacity (number of |
| IsDisposed | Gets a value indicating whether the current UnsafeStringBuilder has been disposed. |
| this[int] | Gets the |
| Length | Gets the current number of characters in the current UnsafeStringBuilder. |
| ThrowOnOverflow | Gets a value indicating whether an OverflowException should be thrown when
the buffer capacity is insufficient. If |
| Version | Gets the version of the current UnsafeStringBuilder. This property is incremented every time the current object is reused, more specifically, when the Clear() method is called. |
Methods
| Name | Description |
|---|---|
| Append(UnsafeStringBuilder?) | Appends the current value of a UnsafeStringBuilder to the current UnsafeStringBuilder. |
| Append(bool) | Appends a bool ( |
| Append(byte) | Appends a byte (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(char) | Appends one |
| Append(char*, int) | Appends an unmanaged array of |
| Append(char, char) | Appends two |
| Append(char, char, char) | Appends three |
| Append(char, char, char, char) | Appends four |
| Append(char, char, char, char, char) | Appends five |
| Append(char, int) | Appends several times the same |
| Append(char[]?) | Appends an array of |
| Append(char[]?, int, int) | Appends an array segment of |
| Append(short) | Appends a short (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(int) | Appends a int (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(long) | Appends a long (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(ReadOnlySpan<char>) | |
| Append(sbyte) | Appends an sbyte (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(string?) | Appends a string to the current UnsafeStringBuilder. |
| Append(string?, int, int) | Appends a part of a string to the current UnsafeStringBuilder. |
| Append(ushort) | Appends a ushort (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(uint) | Appends a uint (with decimal formatting) to the current UnsafeStringBuilder. |
| Append(ulong) | Appends a ulong (with decimal formatting) to the current UnsafeStringBuilder. |
| Append<T>(T, ReadOnlySpan<char>, IFormatProvider?) | |
| Clear() | Clears the current UnsafeStringBuilder so it can be reused to build a new string. |
| Dispose() | |
| ~UnsafeStringBuilder() | |
| SetNullTermination() | Appends a null character at the end of the current string, without affecting the string length.
In case of overflow, if ThrowOnOverflow is |
| Substring(int) | Returns the substring starting at a given index and ending at the end of the current string. |
| Substring(int, int) | Returns the substring starting at a given index and having a specified length. |
| ToString() | |
| Truncate(int) | Truncates the string to a maximum length. |