Table of Contents

Namespace NanoByte.Common

Generic utility classes, interfaces, etc. that are applicable to a wide range of different applications.

Classes

AnsiCli

Helper methods for ANSI console rendering.

Disposable

Invokes a callback on Dispose().

EncodingUtils

Helper methods for encoding strings, decoding byte arrays, calculating hashes, etc..

ExceptionUtils

Provides helper methods related to System.Exceptions.

ExitCodeException

Indicates that a System.Diagnostics.Process exited with an unexpected System.Diagnostics.Process.ExitCode.

Log

A simple logging system. Writes to an in-memory buffer and a plain text file. Allows additional handlers to be registered (e.g., for console or GUI output).

MathUtils

Provides math-related utility functions.

Named

Static companion for INamed.

NotAdminException

Like a System.UnauthorizedAccessException but with the additional hint that retrying the operation as an administrator would fix the problem.

ProcessUtils

Provides methods for launching child processes.

PropertyPointer

Provides factory methods for PropertyPointer<T>.

PropertyPointer<T>

Wraps delegate-based access to a property.

StagedOperation

Common base class for operations that are first staged and then either committed or rolled back.

StringUtils

Provides additional or simplified string functions.

UpdateUtils

Provides neat little code-shortcuts for updating properties.

Structs

TimedLogEvent

Structure that allows you to log timed execution blocks.

UnixTime

Represents a point in time as the number of seconds since the Unix epoch (Unix timestamp).

Interfaces

ICloneable<T>

Supports cloning.

IHighlightColor

An object that can be highlighted with a specific color in graphical representations.

INamed

An entity that has a unique name that can be used for identification in lists and trees.

Enums

LogSeverity

Describes how severe/important a Log entry is.

Delegates

LogEntryEventHandler

Describes an event relating to an entry in the Log.