docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Struct NativeText.ReadOnly

    A read-only alias for the value of a NativeText. Does not have its own allocated storage.

    Implements
    INativeList<byte>
    IIndexable<byte>
    IUTF8Bytes
    Namespace: Unity.Collections
    Assembly: Unity.Collections.dll
    Syntax
    [NativeContainer]
    [NativeContainerIsReadOnly]
    public struct NativeText.ReadOnly : INativeList<byte>, IIndexable<byte>, IUTF8Bytes

    Properties

    Capacity

    The current capacity in bytes of this string.

    Declaration
    public int Capacity { readonly get; set; }
    Property Value
    Type Description
    int

    The current capacity in bytes of the string.

    Remarks

    The null-terminator byte is not included in the capacity, so the string's character buffer is Capacity + 1 in size.

    Exceptions
    Type Condition
    NotSupportedException

    Thrown if ENABLE_UNITY_COLLECTIONS_CHECKS is defined and a write is attempted.

    IsEmpty

    Whether this string has no characters.

    Declaration
    public bool IsEmpty { readonly get; set; }
    Property Value
    Type Description
    bool

    True if this string has no characters or if the string has not been constructed.

    this[int]

    The byte at an index.

    Declaration
    public byte this[int index] { readonly get; set; }
    Parameters
    Type Name Description
    int index

    A zero-based byte index.

    Property Value
    Type Description
    byte

    The byte at the index.

    Exceptions
    Type Condition
    IndexOutOfRangeException

    Thrown if the index is out of bounds.

    NotSupportedException

    Thrown if ENABLE_UNITY_COLLECTIONS_CHECKS is defined and a write is attempted.

    Length

    The current length in bytes of this string.

    Declaration
    public int Length { readonly get; set; }
    Property Value
    Type Description
    int

    The current length in bytes of the UTF-8 encoded string.

    Remarks

    The length does not include the null terminator byte.

    Exceptions
    Type Condition
    NotSupportedException

    Thrown if ENABLE_UNITY_COLLECTIONS_CHECKS is defined and a write is attempted.

    Methods

    Clear()

    Sets the length to 0. For a NativeText.Readonly this function does nothing, unless safety checks are enabled (in which case it throws).

    Declaration
    public void Clear()
    Exceptions
    Type Condition
    NotSupportedException

    Thrown if ENABLE_UNITY_COLLECTIONS_CHECKS is defined.

    CompareTo(string)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    [ExcludeFromBurstCompatTesting("Takes managed string")]
    public int CompareTo(string other)
    Parameters
    Type Name Description
    string other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(FixedString128Bytes)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(FixedString128Bytes other)
    Parameters
    Type Name Description
    FixedString128Bytes other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(FixedString32Bytes)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(FixedString32Bytes other)
    Parameters
    Type Name Description
    FixedString32Bytes other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(FixedString4096Bytes)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(FixedString4096Bytes other)
    Parameters
    Type Name Description
    FixedString4096Bytes other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(FixedString512Bytes)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(FixedString512Bytes other)
    Parameters
    Type Name Description
    FixedString512Bytes other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(FixedString64Bytes)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(FixedString64Bytes other)
    Parameters
    Type Name Description
    FixedString64Bytes other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(NativeText)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(NativeText other)
    Parameters
    Type Name Description
    NativeText other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    CompareTo(ReadOnly)

    Returns the lexicographical sort order of this string relative to another.

    Declaration
    public int CompareTo(NativeText.ReadOnly other)
    Parameters
    Type Name Description
    NativeText.ReadOnly other

    Another string to compare with.

    Returns
    Type Description
    int

    A number denoting the lexicographical sort order of this string relative to the other string:

     0 denotes both strings have the same sort position.<br />
     -1 denotes that this string should be sorted to precede the other.<br />
     +1 denotes that this string should be sorted to follow the other.<br />
    

    ElementAt(int)

    Returns a reference to the byte (not character) at an index. Unsupported by NativeText.ReadOnly.

    Declaration
    public ref byte ElementAt(int index)
    Parameters
    Type Name Description
    int index

    A byte index.

    Returns
    Type Description
    byte

    A reference to the byte at the index.

    Remarks

    This function is a no-op when ENABLE_UNITY_COLLECTIONS_CHECKS is not defined, throws otherwise.

    Exceptions
    Type Condition
    NotSupportedException

    Thrown when called. This operation is not supported.

    Equals(object)

    Returns true if this string and another object are equal.

    Declaration
    [ExcludeFromBurstCompatTesting("Takes managed object")]
    public override bool Equals(object other)
    Parameters
    Type Name Description
    object other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if this string and the object are equal.

    Overrides
    ValueType.Equals(object)
    Remarks

    For the object to be equal, it must itself be a managed string, NativeText, or FixedStringNBytes.

     Two strings are equal if they have equal length and all their characters match.
    

    Equals(string)

    Returns true if this string and another are equal.

    Declaration
    [ExcludeFromBurstCompatTesting("Takes managed string")]
    public bool Equals(string other)
    Parameters
    Type Name Description
    string other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(FixedString128Bytes)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(FixedString128Bytes other)
    Parameters
    Type Name Description
    FixedString128Bytes other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(FixedString32Bytes)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(FixedString32Bytes other)
    Parameters
    Type Name Description
    FixedString32Bytes other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(FixedString4096Bytes)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(FixedString4096Bytes other)
    Parameters
    Type Name Description
    FixedString4096Bytes other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(FixedString512Bytes)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(FixedString512Bytes other)
    Parameters
    Type Name Description
    FixedString512Bytes other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(FixedString64Bytes)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(FixedString64Bytes other)
    Parameters
    Type Name Description
    FixedString64Bytes other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(NativeText)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(NativeText other)
    Parameters
    Type Name Description
    NativeText other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Equals(ReadOnly)

    Returns true if this string and another are equal.

    Declaration
    public bool Equals(NativeText.ReadOnly other)
    Parameters
    Type Name Description
    NativeText.ReadOnly other

    Another string to compare with.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    GetEnumerator()

    Returns an enumerator for iterating over the characters of the NativeText.

    Declaration
    public NativeText.Enumerator GetEnumerator()
    Returns
    Type Description
    NativeText.Enumerator

    An enumerator for iterating over the characters of the NativeText.

    GetHashCode()

    Returns a hash code of this string.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    int

    A hash code of this string.

    Overrides
    ValueType.GetHashCode()
    Remarks

    The hash code is an integer that is always the same for two equal strings but (very likely) different for two unequal strings.

    GetUnsafePtr()

    Returns a pointer to this string's character buffer.

    Declaration
    public byte* GetUnsafePtr()
    Returns
    Type Description
    byte*

    A pointer to this string's character buffer.

    Remarks

    The pointer is made invalid by operations that reallocate the character buffer, such as setting Capacity.

    ToString()

    Returns a managed string copy of this string.

    Declaration
    [ExcludeFromBurstCompatTesting("Returns managed string")]
    public override string ToString()
    Returns
    Type Description
    string

    A managed string copy of this string.

    Overrides
    ValueType.ToString()

    TryResize(int, NativeArrayOptions)

    Attempt to set the length in bytes of this string. For NativeText.ReadOnly this function is a no-op and always returns false.

    Declaration
    public bool TryResize(int newLength, NativeArrayOptions clearOptions = NativeArrayOptions.ClearMemory)
    Parameters
    Type Name Description
    int newLength

    The new length in bytes of the string.

    NativeArrayOptions clearOptions

    Whether any bytes added should be zeroed out.

    Returns
    Type Description
    bool

    Always false.

    Exceptions
    Type Condition
    NotSupportedException

    Thrown if ENABLE_UNITY_COLLECTIONS_CHECKS is defined.

    Operators

    operator ==(in ReadOnly, in FixedString128Bytes)

    Returns true if two strings are equal.

    Declaration
    public static bool operator ==(in NativeText.ReadOnly a, in FixedString128Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString128Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator ==(in ReadOnly, in FixedString32Bytes)

    Returns true if two strings are equal.

    Declaration
    public static bool operator ==(in NativeText.ReadOnly a, in FixedString32Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString32Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator ==(in ReadOnly, in FixedString4096Bytes)

    Returns true if two strings are equal.

    Declaration
    public static bool operator ==(in NativeText.ReadOnly a, in FixedString4096Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString4096Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator ==(in ReadOnly, in FixedString512Bytes)

    Returns true if two strings are equal.

    Declaration
    public static bool operator ==(in NativeText.ReadOnly a, in FixedString512Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString512Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator ==(in ReadOnly, in FixedString64Bytes)

    Returns true if two strings are equal.

    Declaration
    public static bool operator ==(in NativeText.ReadOnly a, in FixedString64Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString64Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are equal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator !=(in ReadOnly, in FixedString128Bytes)

    Returns true if two strings are unequal.

    Declaration
    public static bool operator !=(in NativeText.ReadOnly a, in FixedString128Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString128Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are unequal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator !=(in ReadOnly, in FixedString32Bytes)

    Returns true if two strings are unequal.

    Declaration
    public static bool operator !=(in NativeText.ReadOnly a, in FixedString32Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString32Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are unequal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator !=(in ReadOnly, in FixedString4096Bytes)

    Returns true if two strings are unequal.

    Declaration
    public static bool operator !=(in NativeText.ReadOnly a, in FixedString4096Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString4096Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are unequal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator !=(in ReadOnly, in FixedString512Bytes)

    Returns true if two strings are unequal.

    Declaration
    public static bool operator !=(in NativeText.ReadOnly a, in FixedString512Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString512Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are unequal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    operator !=(in ReadOnly, in FixedString64Bytes)

    Returns true if two strings are unequal.

    Declaration
    public static bool operator !=(in NativeText.ReadOnly a, in FixedString64Bytes b)
    Parameters
    Type Name Description
    NativeText.ReadOnly a

    A string to compare.

    FixedString64Bytes b

    Another string to compare.

    Returns
    Type Description
    bool

    True if the two strings are unequal.

    Remarks

    Two strings are equal if they have equal length and all their characters match.

    Implements

    INativeList<T>
    IIndexable<T>
    IUTF8Bytes

    Extension Methods

    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4, T5, T6, T7>(ref T, in U, in T0, in T1, in T2, in T3, in T4, in T5, in T6, in T7)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4, T5, T6, T7, T8>(ref T, in U, in T0, in T1, in T2, in T3, in T4, in T5, in T6, in T7, in T8)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>(ref T, in U, in T0, in T1, in T2, in T3, in T4, in T5, in T6, in T7, in T8, in T9)
    FixedStringMethods.AppendFormat<T, U, T0>(ref T, in U, in T0)
    FixedStringMethods.AppendFormat<T, U, T0, T1>(ref T, in U, in T0, in T1)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2>(ref T, in U, in T0, in T1, in T2)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3>(ref T, in U, in T0, in T1, in T2, in T3)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4>(ref T, in U, in T0, in T1, in T2, in T3, in T4)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4, T5>(ref T, in U, in T0, in T1, in T2, in T3, in T4, in T5)
    FixedStringMethods.AppendFormat<T, U, T0, T1, T2, T3, T4, T5, T6>(ref T, in U, in T0, in T1, in T2, in T3, in T4, in T5, in T6)
    FixedStringMethods.AppendRawByte<T>(ref T, byte)
    FixedStringMethods.Append<T>(ref T, byte*, int)
    FixedStringMethods.Append<T>(ref T, char)
    FixedStringMethods.Append<T>(ref T, int)
    FixedStringMethods.Append<T>(ref T, long)
    FixedStringMethods.Append<T>(ref T, float, char)
    FixedStringMethods.Append<T>(ref T, string)
    FixedStringMethods.Append<T>(ref T, uint)
    FixedStringMethods.Append<T>(ref T, ulong)
    FixedStringMethods.Append<T>(ref T, Unicode.Rune)
    FixedStringMethods.Append<T>(ref T, Unicode.Rune, int)
    FixedStringMethods.Append<T, T2>(ref T, in T2)
    FixedStringMethods.CompareTo<T>(ref T, byte*, int)
    FixedStringMethods.CompareTo<T, T2>(ref T, in T2)
    FixedStringMethods.ComputeHashCode<T>(ref T)
    FixedStringMethods.Contains<T, T2>(ref T, in T2)
    FixedStringMethods.ConvertToString<T>(ref T)
    FixedStringMethods.CopyFromTruncated<T>(ref T, string)
    FixedStringMethods.CopyFromTruncated<T, T2>(ref T, in T2)
    FixedStringMethods.CopyFrom<T>(ref T, string)
    FixedStringMethods.CopyFrom<T, T2>(ref T, in T2)
    FixedStringMethods.EffectiveSizeOf<T>(ref T)
    FixedStringMethods.EndsWith<T>(ref T, Unicode.Rune)
    FixedStringMethods.EndsWith<T, U>(ref T, in U)
    FixedStringMethods.Equals<T>(ref T, byte*, int)
    FixedStringMethods.Equals<T, T2>(ref T, in T2)
    FixedStringMethods.IndexOf<T>(ref T, byte*, int)
    FixedStringMethods.IndexOf<T>(ref T, byte*, int, int, int)
    FixedStringMethods.IndexOf<T>(ref T, Unicode.Rune)
    FixedStringMethods.IndexOf<T, T2>(ref T, in T2)
    FixedStringMethods.IndexOf<T, T2>(ref T, in T2, int, int)
    FixedStringMethods.LastIndexOf<T>(ref T, byte*, int)
    FixedStringMethods.LastIndexOf<T>(ref T, byte*, int, int, int)
    FixedStringMethods.LastIndexOf<T>(ref T, Unicode.Rune)
    FixedStringMethods.LastIndexOf<T, T2>(ref T, in T2)
    FixedStringMethods.LastIndexOf<T, T2>(ref T, in T2, int, int)
    FixedStringMethods.Parse<T>(ref T, ref int, ref int)
    FixedStringMethods.Parse<T>(ref T, ref int, ref float, char)
    FixedStringMethods.Parse<T>(ref T, ref int, ref uint)
    FixedStringMethods.Peek<T>(ref T, int)
    FixedStringMethods.Read<T>(ref T, ref int)
    FixedStringMethods.StartsWith<T>(ref T, Unicode.Rune)
    FixedStringMethods.StartsWith<T, U>(ref T, in U)
    FixedStringMethods.Substring<T>(ref T, int)
    FixedStringMethods.Substring<T>(ref T, int, int)
    FixedStringMethods.ToLowerAscii<T>(ref T)
    FixedStringMethods.ToUpperAscii<T>(ref T)
    FixedStringMethods.TrimEnd<T>(ref T)
    FixedStringMethods.TrimEnd<T>(ref T, ReadOnlySpan<Unicode.Rune>)
    FixedStringMethods.TrimStart<T>(ref T)
    FixedStringMethods.TrimStart<T>(ref T, ReadOnlySpan<Unicode.Rune>)
    FixedStringMethods.Trim<T>(ref T)
    FixedStringMethods.Trim<T>(ref T, ReadOnlySpan<Unicode.Rune>)
    FixedStringMethods.Write<T>(ref T, ref int, Unicode.Rune)
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)