Struct NullableFunctionPointer
Represents a null-able transient function pointer pointing to a target function
Implements
Inherited Members
Namespace: SemPtr
Assembly: SemPtr.dll
Syntax
public readonly ref struct NullableFunctionPointer : ISpanFormattable, IFormattable, IUtf8SpanFormattable, IEquatable<NullableFunctionPointer>, IEquatable<NullablePointerReadOnly>, IEquatable<NullablePointerUninitialized>, IFunctionPointer<NullableFunctionPointer>, IFunctionPointer, IPointer<NullableFunctionPointer>, IPointer
Remarks
NullableFunctionPointer has the following characteristics:
null-ableYou must check whether the function pointer isnullusing TryGetNonNull(out FunctionPointer) before invoking the function pointer's target function.- TransientThe function pointer's target function is only valid for the lifetime of the pointer. You cannot let the function pointer escape the current scope and you cannot invoke the function pointer's target function after the pointer's lifetime ends.
- UntypedThe function pointer points to a target function of unknown signature. You must cast the function pointer to a specific type before you can invoke its target function.
Properties
| Name | Description |
|---|---|
| AsIntPtr | Gets an nint that represents the same memory address as the current pointer. |
| AsUIntPtr | Gets an nuint that represents the same memory address as the current pointer. |
| HasTargetFunction | Gets a value indicating whether the current function pointer is non- |
| Null | Gets a NullableFunctionPointer that represents a |
| Raw | Gets a raw pointer pointing to the same target function as the current pointer. |
Methods
| Name | Description |
|---|---|
| Equals(NullableFunctionPointer) | Indicates whether the current object is equal to another object of the same type. |
| Equals(NullablePointerReadOnly) | Indicates whether the current object is equal to another object of the same type. |
| Equals(NullablePointerUninitialized) | Indicates whether the current object is equal to another object of the same type. |
| Equals(object?) | Not supported. Do not call this method, use the Equals(NullableFunctionPointer) method instead. |
| FromDelegate<TDelegate>(TDelegate?) | Creates a NullableFunctionPointer<TDelegate> from a delegate of type |
| FromIntPtr(nint) | Creates a NullableFunctionPointer from a memory address given as a nint. |
| FromRaw(void*) | Creates a NullableFunctionPointer from a |
| FromUIntPtr(nuint) | Creates a NullableFunctionPointer from a memory address given as a nint. |
| GetHashCode() | Returns the hash code for this instance. |
| ToString() | Formats the value of the current instance using the default format. |
| ToString(IFormatProvider?) | Formats the value of the current instance using the specified format. |
| ToString(string?) | Formats the value of the current instance using the specified format. |
| ToString(string?, IFormatProvider?) | Formats the value of the current instance using the specified format. |
| TryFormat(Span<byte>, out int, IFormatProvider?) | Tries to format the value of the current instance as UTF-8 into the provided span of bytes. |
| TryFormat(Span<byte>, out int, ReadOnlySpan<char>, IFormatProvider?) | Tries to format the value of the current instance as UTF-8 into the provided span of bytes. |
| TryFormat(Span<char>, out int, IFormatProvider?) | Tries to format the value of the current instance into the provided span of characters. |
| TryFormat(Span<char>, out int, ReadOnlySpan<char>, IFormatProvider?) | Tries to format the value of the current instance into the provided span of characters. |
| TryGetNonNull(out FunctionPointer) | Attempts to get a non- |
Operators
| Name | Description |
|---|---|
| operator ==(NullableFunctionPointer, NullableFunctionPointer) | Compares two values to determine equality. |
| operator ==(NullableFunctionPointer, NullablePointerReadOnly) | Compares two values to determine equality. |
| operator ==(NullableFunctionPointer, NullablePointerUninitialized) | Compares two values to determine equality. |
| explicit operator NullablePointerReadOnly(NullableFunctionPointer) | Converts a NullableFunctionPointer to a NullablePointerReadOnly. |
| operator false(NullableFunctionPointer) | Determines whether the specified function pointer is |
| operator !=(NullableFunctionPointer, NullableFunctionPointer) | Compares two values to determine inequality. |
| operator !=(NullableFunctionPointer, NullablePointerReadOnly) | Compares two values to determine inequality. |
| operator !=(NullableFunctionPointer, NullablePointerUninitialized) | Compares two values to determine inequality. |
| operator true(NullableFunctionPointer) | Determines whether the specified function pointer is non- |