Table of Contents

Namespace Dassie.Core

Classes

AliasAttribute

Applied by the Dassie compiler to alias types.

Array<T, D>

Defines 'Array[T, 'D: int]' as an alias for a multi-dimensional array of type T.

Assert

Implements global assertion functions.

Assert.AssertionException

The exception thrown when an assertion fails.

AutoAttribute

Marks a field as an auto-implemented property.

Buffer<T, L>

Defines 'Buffer[T, 'L: int]' as an alias for a single-dimensional, fixed-length array of type T.

ClrGlobalFunctionAttribute

Declares a function to be a CLR global function contained in the special <Module> type.

CompileTimeDependencyAttribute

Marks a generic parameter as a compile-time dependency.

CorePackage

Acts as an extension package for all built-in commands, project templates, build log devices, compiler directives, subsystems and actions.

DependentValueAttribute

Marks a field as a dependent value.

Documentation

Provides functionality for extracting XML documentation for types and members.

EntryPointAttribute

Marks the entry point of an assembly, which is most commonly a function called Main.

Enumeration

Marker attribute to declare a type as an Int32 enumeration.

Enumeration<T>

Marker attribute to declare a type as an enumeration.

EventAttribute

Marks a field as an event.

FuncPtr<T>

Defines 'FuncPtr[T]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>

Defines 'FuncPtr[T, ..., T10]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>

Defines 'FuncPtr[T, ..., T11]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>

Defines 'FuncPtr[T, ..., T12]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>

Defines 'FuncPtr[T, ..., T13]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>

Defines 'FuncPtr[T, ..., T14]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>

Defines 'FuncPtr[T, ..., T15]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>

Defines 'FuncPtr[T, ..., T16]' as an alias for a function pointer type.

FuncPtr<T, T2>

Defines 'FuncPtr[T, T2]' as an alias for a function pointer type.

FuncPtr<T, T2, T3>

Defines 'FuncPtr[T, T2, T3]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4>

Defines 'FuncPtr[T, ..., T4]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5>

Defines 'FuncPtr[T, ..., T5]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6>

Defines 'FuncPtr[T, ..., T6]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7>

Defines 'FuncPtr[T, ..., T7]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8>

Defines 'FuncPtr[T, ..., T8]' as an alias for a function pointer type.

FuncPtr<T, T2, T3, T4, T5, T6, T7, T8, T9>

Defines 'FuncPtr[T, ..., T9]' as an alias for a function pointer type.

HideBySigAttribute

Sets the 'hidebysig' method attribute.

InitLocalsAttribute

Used to configure the compiler behavior for zero-initialization of local variables of methods.

NewSlotAttribute

Sets the 'newslot' method attribute.

NewTypeAttribute

Represents a type alias with 'newtype' semantics. Newtype aliases are erased to their underlying type at runtime.

NewTypeCallSiteAttribute

Marks a parameter, local variable, return type or field as requiring a value to be of the newtype specified by the type parameter.

ObjectDump

Allows dumping the contents of an object to a string.

PredicateAttribute

Marks a function as a predicate for a type constraint.

Process

Provides functionality for interacting with the currently running process.

Ptr

Defines 'Ptr' as an alias for void*.

Ptr<T>

Defines 'Ptr[T]' as an alias for T*.

PureAttribute

Marks a method as pure.

RTSpecialNameAttribute

Sets the 'rtspecialname' method attribute.

Ref<T>

Defines 'Ref[T]' as an alias for T&.

RuntimeDependencyAttribute

Marks a generic parameter as a runtime dependency.

RuntimeImplementedAttribute

Sets the 'runtime' implementation flag.

SpecialNameAttribute

Sets the 'specialname' method attribute.

Union

Marker attribute to declare a type as a union.

Value

Provides functionality related to values.

VarArgsAttribute

Sets the 'vararg' method attribute.

Vector<T>

Defines 'Vector[T]' as an alias for a single-dimensional array of type T.

VolatileAttribute

Applies the 'IsVolatile' required custom modifier (modreq) to a field.

base64

Provides a string processor for encoding string literals as Base64.

from_base64

Provides a string processor for decoding Base64 string literals.

null

Defines 'null' as an alias for void.

object

Defines 'object' as an alias for object.

stdin

Provides functionality for reading from standard input.

stdout

Provides functionality for writing to the standard output.

string

Defines 'string' as an alias for string.

utf8

Provides a string processor to treat string literals as UTF-8 character arrays.

Structs

bool

Defines 'bool' as an alias for bool.

char

Defines 'char' as an alias for char.

decimal

Defines 'decimal' as an alias for decimal.

float16

Defines 'float16' as an alias for Half.

float32

Defines 'float32' as an alias for float.

float64

Defines 'float64' as an alias for double.

int

Defines 'int' as an alias for int.

int128

Defines 'int128' as an alias for Int128.

int16

Defines 'int16' as an alias for short.

int32

Defines 'int32' as an alias for int.

int64

Defines 'int64' as an alias for long.

int8

Defines 'int8' as an alias for sbyte.

native

Defines 'native' as an alias for nint.

uint

Defines 'uint' as an alias for uint.

uint128

Defines 'uint128' as an alias for UInt128.

uint16

Defines 'uint16' as an alias for ushort.

uint32

Defines 'uint32' as an alias for uint.

uint64

Defines 'uint64' as an alias for ulong.

uint8

Defines 'uint8' as an alias for byte.

unative

Defines 'unative' as an alias for nuint.

Interfaces

IStringProcessor<TReturn>

Provides a mechanism for processing string literals, for example to allow them to have different encodings.