PostSharp//API Reference/Post­Sharp.​Patterns.​Formatters/Unsafe­String
Open sandboxFocus

Class UnsafeString

A generalized representation of a string that can be either backed by a system String, a char[], or an UnsafeStringBuilder. Conversions between these types happen transparently and are cached.

Inheritance
UnsafeString
Namespace: PostSharp.Patterns.Formatters
Assembly: PostSharp.Patterns.Common.dll
Syntax
public sealed class UnsafeString : Object

Constructors

Name Description
UnsafeString(Char[])

Initializes a new UnsafeString backed by an array of Char.

UnsafeString(String)

Initializes a new UnsafeString backed by a String.

Properties

Name Description
Buffer

Gets an unmanaged pointer to the string.

IsImmutable

Determines whether the current UnsafeString is immutable or, when the value of this property is false, if still bound to a mutable. Call the MakeImmutable() method to make the UnsafeString immutable.

Length

Gets the number of characters in the string.

Methods

Name Description
MakeImmutable()

If the current UnsafeString is bound to its origin UnsafeStringBuilder, evaluates the UnsafeStringBuilder and breaks the binding, so that later changes in the UnsafeStringBuilder do not cause changes in the current UnsafeString. This method also prevents the UnsafeString form being recycled.

ToCharArray()

Gets an ArraySegment<T> representing the current UnsafeString.

ToString()

Returns a string that represents the current object.