SemPtr SemPtr
SemPtr SemPtr
Documentation generated with DocFX
Using SingulinkFX as the template

Search Results for

    Struct NullablePersistentPointer

    Represents a null-able persistent pointer pointing to a target.

    Implements
    IEquatable<NullablePersistentPointer>
    IEquatable<NullablePointerReadOnly>
    IEquatable<NullablePointerUninitialized>
    IEquatable<NullableFunctionPointer>
    IEqualityOperators<NullablePersistentPointer, NullablePersistentPointer, bool>
    IPointer<NullablePersistentPointer>
    IPointer
    ISpanFormattable
    IFormattable
    IUtf8SpanFormattable
    Inherited Members
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: SemPtr
    Assembly: SemPtr.dll
    Syntax
    public readonly struct NullablePersistentPointer : IEquatable<NullablePersistentPointer>, IEquatable<NullablePointerReadOnly>, IEquatable<NullablePointerUninitialized>, IEquatable<NullableFunctionPointer>, IEqualityOperators<NullablePersistentPointer, NullablePersistentPointer, bool>, IPointer<NullablePersistentPointer>, IPointer, ISpanFormattable, IFormattable, IUtf8SpanFormattable
    Remarks

    NullablePersistentPointer has the following characteristics:

    • null-ableYou must check whether the pointer is null using TryGetNonNull(out PersistentPointer) before accessing the pointer's target.
    • PersistentThe pointer's target outlives the pointer's initial scope. You can let the pointer escape the current scope and store it for later access. No guarantees are made about how long the target will remain valid or who owns it.
    • Single objectThe pointer points to a single target.
    • Read-writeYou can read and write the pointer's target.
    • UntypedThe pointer points to a single target of unknown type. You must cast the pointer to a specific type before you can access its target.

    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.

    HasTarget

    Gets a value indicating whether the current pointer is non-null.

    Null

    Gets a NullablePersistentPointer that represents a null pointer.

    Raw

    Gets a raw pointer pointing to the same target as the current pointer.

    Methods

    Name Description
    Equals(NullableFunctionPointer)

    Indicates whether the current object is equal to another object of the same type.

    Equals(NullablePersistentPointer)

    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.

    FromIntPtr(nint)

    Creates a NullablePersistentPointer from a memory address given as a nint.

    FromRaw(void*)

    Creates a NullablePersistentPointer from a raw pointer.

    FromRaw<T>(T*)

    Creates a NullablePersistentPointer<T> from a raw pointer.

    FromUIntPtr(nuint)

    Creates a NullablePersistentPointer 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 PersistentPointer)

    Attempts to get a non-null pointer from the current pointer.

    Operators

    Name Description
    operator ==(NullablePersistentPointer, NullableFunctionPointer)

    Compares two values to determine equality.

    operator ==(NullablePersistentPointer, NullablePersistentPointer)

    Compares two values to determine equality.

    operator ==(NullablePersistentPointer, NullablePointerReadOnly)

    Compares two values to determine equality.

    operator ==(NullablePersistentPointer, NullablePointerUninitialized)

    Compares two values to determine equality.

    explicit operator NullableFunctionPointer(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullableFunctionPointer.

    explicit operator NullablePersistentFunctionPointer(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePersistentFunctionPointer.

    operator false(NullablePersistentPointer)

    Determines whether the specified pointer is null.

    implicit operator NullablePersistentPointerReadOnly(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePersistentPointerReadOnly.

    implicit operator NullablePersistentPointerUninitialized(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePersistentPointerUninitialized.

    implicit operator NullablePointer(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePointer.

    implicit operator NullablePointerReadOnly(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePointerReadOnly.

    implicit operator NullablePointerUninitialized(NullablePersistentPointer)

    Converts a NullablePersistentPointer to a NullablePointerUninitialized.

    operator !=(NullablePersistentPointer, NullableFunctionPointer)

    Compares two values to determine inequality.

    operator !=(NullablePersistentPointer, NullablePersistentPointer)

    Compares two values to determine inequality.

    operator !=(NullablePersistentPointer, NullablePointerReadOnly)

    Compares two values to determine inequality.

    operator !=(NullablePersistentPointer, NullablePointerUninitialized)

    Compares two values to determine inequality.

    operator true(NullablePersistentPointer)

    Determines whether the specified pointer is non-null.

    © 2026 Felix Rüdiger. SemPtr and its documentation are licensed under the MIT license.