Open sandboxFocus
  • TOC

Post­Sharp Documentation

Introduction

Deployment and Configuration

Adding Aspects to Code

Logging

Contracts

INotify­Property­Changed

Weak Event

XAML

Parent/Child, Visitor and Disposable

Undo/Redo

Caching

Multithreading

Developing Custom Aspects

Validating Architecture

Testing and Debugging

Miscellaneous

API Reference

Post­Sharp

Post­Sharp.​Aspects

Post­Sharp.​Aspects.​Advices

Post­Sharp.​Aspects.​Configuration

Post­Sharp.​Aspects.​Dependencies

Post­Sharp.​Aspects.​Internals

Post­Sharp.​Aspects.​Serialization

Post­Sharp.​Collections

Post­Sharp.​Constraints

Post­Sharp.​Extensibility

Post­Sharp.​Extensibility.​Build­Time­Logging

Post­Sharp.​Patterns

Post­Sharp.​Patterns.​Caching

Post­Sharp.​Patterns.​Caching.​Backends

Post­Sharp.​Patterns.​Caching.​Backends.​Azure

Post­Sharp.​Patterns.​Caching.​Backends.​Redis

Post­Sharp.​Patterns.​Caching.​Dependencies

Post­Sharp.​Patterns.​Caching.​Formatters

Post­Sharp.​Patterns.​Caching.​Implementation

Post­Sharp.​Patterns.​Caching.​Locking

Post­Sharp.​Patterns.​Caching.​Serializers

Post­Sharp.​Patterns.​Caching.​Value­Adapters

Post­Sharp.​Patterns.​Collections

Post­Sharp.​Patterns.​Collections.​Advices

Post­Sharp.​Patterns.​Contracts

Post­Sharp.​Patterns.​Diagnostics

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Core

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Framework

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Diagnostic­Source

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Http­Client

Post­Sharp.​Patterns.​Diagnostics.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Application­Insights

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Common­Logging

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Console

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Event­Source

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Log4Net

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Microsoft

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Multiplexer

Post­Sharp.​Patterns.​Diagnostics.​Backends.​NLog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Null

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Serilog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace­Source

Post­Sharp.​Patterns.​Diagnostics.​Contexts

Post­Sharp.​Patterns.​Diagnostics.​Correlation

Post­Sharp.​Patterns.​Diagnostics.​Custom

Post­Sharp.​Patterns.​Diagnostics.​Custom.​Messages

Post­Sharp.​Patterns.​Diagnostics.​Formatters

Post­Sharp.​Patterns.​Diagnostics.​Record­Builders

Post­Sharp.​Patterns.​Diagnostics.​Threading­Instrumentation

Post­Sharp.​Patterns.​Diagnostics.​Transactions

Post­Sharp.​Patterns.​Diagnostics.​Transactions.​Model

Post­Sharp.​Patterns.​Dynamic­Advising

Post­Sharp.​Patterns.​Formatters

Post­Sharp.​Patterns.​Model

Post­Sharp.​Patterns.​Model.​Controls

Post­Sharp.​Patterns.​Model.​Type­Adapters

Post­Sharp.​Patterns.​Recording

Post­Sharp.​Patterns.​Recording.​Operations

Post­Sharp.​Patterns.​Threading

Post­Sharp.​Patterns.​Threading.​Models

Post­Sharp.​Patterns.​Utilities

Post­Sharp.​Patterns.​Xaml

Post­Sharp.​Reflection

Post­Sharp.​Reflection.​Method­Body

Post­Sharp.​Serialization

  • Article

Class UnsafeStringBuilder

A class similar to StringBuilder, but implemented using unsafe C#.

Inheritance
UnsafeStringBuilder
Implements
Namespace: PostSharp.Patterns.Formatters
Assembly: PostSharp.Patterns.Common.dll
Syntax
public sealed class UnsafeStringBuilder : IDisposable

Constructors

Name Description
UnsafeStringBuilder(char*, int, bool)

Initializes a new UnsafeStringBuilder with a pre-allocated buffer/

UnsafeStringBuilder(int, bool)

Initializes a new UnsafeStringBuilder 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 char) of the current UnsafeStringBuilder.

IsDisposed

Determines whether the current UnsafeStringBuilder has been disposed.

this[int]

Gets the char at a given position in the current UnsafeStringBuilder.

Length

Gets the current number of characters in the current UnsafeStringBuilder.

ThrowOnOverflow

true if an OverflowException should be thrown when the buffer capacity is insufficient, false if the Append method should return false without exception.

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(in CharSpan)

Appends a CharSpan to the current UnsafeStringBuilder.

Append(UnsafeString)

Appends an UnsafeString to the current UnsafeStringBuilder.

Append(UnsafeStringBuilder)

Appends the current value of a UnsafeStringBuilder to the current UnsafeStringBuilder.

Append(bool)

Appends a bool (true or false, litterally) to the current UnsafeStringBuilder.

Append(byte)

Appends a byte (with decimal formatting) to the current UnsafeStringBuilder.

Append(char)

Appends one char to the current UnsafeStringBuilder.

Append(char*, int)

Appends an unmanaged array of char to the current UnsafeStringBuilder.

Append(char, char)

Appends two char to the current UnsafeStringBuilder.

Append(char, char, char)

Appends three char to the current UnsafeStringBuilder.

Append(char, char, char, char)

Appends four char to the current UnsafeStringBuilder.

Append(char, char, char, char, char)

Appends five char to the current UnsafeStringBuilder.

Append(char, int)

Appends several times the same char to the current UnsafeStringBuilder.

Append(char[])

Appends an array of char to the current UnsafeStringBuilder.

Append(char[], int, int)

Appends an array segment of char to the current UnsafeStringBuilder.

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(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.

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 false, the last character of the string is removed and the string length is decreased by 1.

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()
ToUnsafeString()

Gets an UnsafeString that provides read-only access to the current UnsafeStringBuilder.

Truncate(int)

Truncates the string to a maximum length.

  • Navigation