Struct NullablePersistentFunctionPointer<TDelegate>
Represents a null-able persistent function pointer pointing to a target function whose signature is represented by TDelegate
Implements
Inherited Members
Namespace: SemPtr
Assembly: SemPtr.dll
Syntax
public readonly struct NullablePersistentFunctionPointer<TDelegate> : IEquatable<NullablePersistentFunctionPointer<TDelegate>>, IEquatable<NullableFunctionPointer>, IEquatable<NullablePointerReadOnly>, IEquatable<NullablePointerUninitialized>, IEqualityOperators<NullablePersistentFunctionPointer<TDelegate>, NullablePersistentFunctionPointer<TDelegate>, bool>, ISpanFormattable, IFormattable, IUtf8SpanFormattable, ITypedFunctionPointer<TDelegate, NullablePersistentFunctionPointer<TDelegate>>, ITypedFunctionPointer<TDelegate>, IFunctionPointer<NullablePersistentFunctionPointer<TDelegate>>, IFunctionPointer, IPointer<NullablePersistentFunctionPointer<TDelegate>>, IPointer where TDelegate : notnull, Delegate
Type Parameters
| Name | Description |
|---|---|
| TDelegate | The type of the delegate representing the signature of the target function that this pointer points to. |
Remarks
NullablePersistentFunctionPointer<TDelegate> has the following characteristics:
null-ableYou must check whether the function pointer isnullusing TryGetNonNull(out PersistentFunctionPointer<TDelegate>) before invoking the function pointer's target function.- PersistentThe function pointer's target function outlives the pointer's initial scope. You can let the function pointer escape the current scope and store it for later invocation. No guarantees are made about how long the target function will remain valid.
- TypedThe function pointer points to a target function whose signature is represented by
TDelegate.
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 NullablePersistentFunctionPointer<TDelegate> that represents a |
Methods
| Name | Description |
|---|---|
| Equals(NullableFunctionPointer) | Indicates whether the current object is equal to another object of the same type. |
| Equals(NullablePersistentFunctionPointer<TDelegate>) | 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?) | Indicates whether this instance and a specified object are equal. |
| FromDelegate(TDelegate?) | Creates a NullablePersistentFunctionPointer<TDelegate> from a delegate of type |
| FromIntPtr(nint) | Creates a NullablePersistentFunctionPointer<TDelegate> from a memory address given as a nint. |
| FromUIntPtr(nuint) | Creates a NullablePersistentFunctionPointer<TDelegate> from a memory address given as a nint. |
| GetHashCode() | Returns the hash code for this instance. |
| ToDelegate() | Converts the current function pointer to a delegate of type |
| 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 PersistentFunctionPointer<TDelegate>) | Attempts to get a non- |