docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class NativeSortExtension

    Extension methods for sorting collections.

    Inheritance
    object
    NativeSortExtension
    Namespace: Unity.Collections
    Assembly: Unity.Collections.dll
    Syntax
    public static class NativeSortExtension

    Methods

    BinarySearch<T>(UnsafeList<T>, T)

    Finds a value in this sorted list by binary search.

    Declaration
    public static int BinarySearch<T>(this UnsafeList<T> list, T value) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to search.

    T value

    The value to locate.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    If this list is not sorted, the value might not be found, even if it's present in this list.

    BinarySearch<T>(NativeArray<T>, T)

    Finds a value in this sorted array by binary search.

    Declaration
    public static int BinarySearch<T>(this NativeArray<T> array, T value) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to search.

    T value

    The value to locate.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    If the array is not sorted, the value might not be found, even if it's present in this array.

    BinarySearch<T>(NativeList<T>, T)

    Finds a value in this sorted list by binary search.

    Declaration
    public static int BinarySearch<T>(this NativeList<T> list, T value) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to search.

    T value

    The value to locate.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    If this list is not sorted, the value might not be found, even if it's present in this list.

    BinarySearch<T>(NativeSlice<T>, T)

    Finds a value in this sorted slice by binary search.

    Declaration
    public static int BinarySearch<T>(this NativeSlice<T> slice, T value) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to search.

    T value

    The value to locate.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    If this slice is not sorted, the value might not be found, even if it's present in this slice.

    BinarySearch<T>(T*, int, T)

    Finds a value in a sorted array by binary search.

    Declaration
    public static int BinarySearch<T>(T* ptr, int length, T value) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    T* ptr

    The array to search.

    int length

    The number of elements to search. Indexes greater than or equal to length won't be searched.

    T value

    The value to locate.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    If the array is not sorted, the value might not be found, even if it's present in the array.

    BinarySearch<T, U>(UnsafeList<T>, T, U)

    Finds a value in this sorted list by binary search using a custom comparison.

    Declaration
    public static int BinarySearch<T, U>(this UnsafeList<T> list, T value, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to search.

    T value

    The value to locate.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    If this list is not sorted, the value might not be found, even if it's present in this list.

    BinarySearch<T, U>(NativeArray<T>, T, U)

    Finds a value in this sorted array by binary search using a custom comparison.

    Declaration
    public static int BinarySearch<T, U>(this NativeArray<T> array, T value, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to search.

    T value

    The value to locate.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The comparer type.

    Remarks

    If the array is not sorted, the value might not be found, even if it's present in this array.

    BinarySearch<T, U>(NativeList<T>, T, U)

    Finds a value in this sorted list by binary search using a custom comparison.

    Declaration
    public static int BinarySearch<T, U>(this NativeList<T> list, T value, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to search.

    T value

    The value to locate.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    If this list is not sorted, the value may not be found, even if it's present in this list.

    BinarySearch<T, U>(NativeSlice<T>, T, U)

    Finds a value in this sorted slice by binary search using a custom comparison.

    Declaration
    public static int BinarySearch<T, U>(this NativeSlice<T> slice, T value, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to search.

    T value

    The value to locate.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    If this slice is not sorted, the value might not be found, even if it's present in this slice.

    BinarySearch<T, U>(T*, int, T, U)

    Finds a value in a sorted array by binary search using a custom comparison.

    Declaration
    public static int BinarySearch<T, U>(T* ptr, int length, T value, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    T* ptr

    The array to search.

    int length

    The number of elements to search. Indexes greater than or equal to length won't be searched.

    T value

    The value to locate.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    int

    If found, the index of the located value. If not found, the return value is negative.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    If the array is not sorted, the value might not be found, even if it's present in the array.

    SortJob<T>(UnsafeList<T>)

    Returns a job which will sort this list in ascending order.

    Declaration
    public static SortJob<T, NativeSortExtension.DefaultComparer<T>> SortJob<T>(this UnsafeList<T> list) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to sort.

    Returns
    Type Description
    SortJob<T, NativeSortExtension.DefaultComparer<T>>

    A job for sorting this list.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T>(NativeArray<T>)

    Returns a job which will sort this array in ascending order.

    Declaration
    public static SortJob<T, NativeSortExtension.DefaultComparer<T>> SortJob<T>(this NativeArray<T> array) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to sort.

    Returns
    Type Description
    SortJob<T, NativeSortExtension.DefaultComparer<T>>

    A job for sorting this array.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T>(NativeList<T>)

    Returns a job which will sort this list in ascending order.

    Declaration
    public static SortJob<T, NativeSortExtension.DefaultComparer<T>> SortJob<T>(this NativeList<T> list) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to sort.

    Returns
    Type Description
    SortJob<T, NativeSortExtension.DefaultComparer<T>>

    A job for sorting this list.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T>(NativeSlice<T>)

    Returns a job which will sort this slice in ascending order.

    Declaration
    public static SortJob<T, NativeSortExtension.DefaultComparer<T>> SortJob<T>(this NativeSlice<T> slice) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to sort.

    Returns
    Type Description
    SortJob<T, NativeSortExtension.DefaultComparer<T>>

    A job for sorting this slice.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T>(T*, int)

    Returns a job which will sort an array in ascending order.

    Declaration
    public static SortJob<T, NativeSortExtension.DefaultComparer<T>> SortJob<T>(T* array, int length) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    T* array

    The array to sort.

    int length

    The number of elements to sort in the array. Indexes greater than or equal to length won't be included in the sort.

    Returns
    Type Description
    SortJob<T, NativeSortExtension.DefaultComparer<T>>

    A job for sorting the array.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T, U>(UnsafeList<T>, U)

    Returns a job which will sort this list using a custom comparison.

    Declaration
    public static SortJob<T, U> SortJob<T, U>(this UnsafeList<T> list, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    SortJob<T, U>

    A job for sorting this list.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T, U>(NativeArray<T>, U)

    Returns a job which will sort this array using a custom comparison.

    Declaration
    public static SortJob<T, U> SortJob<T, U>(this NativeArray<T> array, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    SortJob<T, U>

    A job for sorting the array.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T, U>(NativeList<T>, U)

    Returns a job which will sort this list using a custom comparison.

    Declaration
    public static SortJob<T, U> SortJob<T, U>(this NativeList<T> list, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    SortJob<T, U>

    A job for sorting this list.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T, U>(NativeSlice<T>, U)

    Returns a job which will sort this slice using a custom comparison.

    Declaration
    public static SortJob<T, U> SortJob<T, U>(this NativeSlice<T> slice, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    SortJob<T, U>

    A job for sorting this slice.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    SortJob<T, U>(T*, int, U)

    Returns a job which will sort an array using a custom comparison.

    Declaration
    public static SortJob<T, U> SortJob<T, U>(T* array, int length, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    T* array

    The array to sort.

    int length

    The number of elements to sort in the array. Indexes greater than or equal to length won't be included in the sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Returns
    Type Description
    SortJob<T, U>

    A job for sorting the array.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Remarks

    This method does not schedule the job. Scheduling the job is left to you.

    Sort<T>(UnsafeList<T>)

    Sorts this list in ascending order.

    Declaration
    public static void Sort<T>(this UnsafeList<T> list) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to sort.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Sort<T>(NativeArray<T>)

    Sorts this array in ascending order.

    Declaration
    public static void Sort<T>(this NativeArray<T> array) where T : struct, IComparable<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to sort.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Sort<T>(NativeList<T>)

    Sorts this list in ascending order.

    Declaration
    public static void Sort<T>(this NativeList<T> list) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to sort.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Sort<T>(NativeSlice<T>)

    Sorts this slice in ascending order.

    Declaration
    public static void Sort<T>(this NativeSlice<T> slice) where T : struct, IComparable<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to sort.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Sort<T>(T*, int)

    Sorts an array in ascending order.

    Declaration
    public static void Sort<T>(T* array, int length) where T : unmanaged, IComparable<T>
    Parameters
    Type Name Description
    T* array

    The array to sort.

    int length

    The number of elements to sort in the array. Indexes greater than or equal to length won't be included in the sort.

    Type Parameters
    Name Description
    T

    The type of the elements.

    Sort<T, U>(UnsafeList<T>, U)

    Sorts the list using a custom comparison.

    Declaration
    public static void Sort<T, U>(this UnsafeList<T> list, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    UnsafeList<T> list

    The list to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Sort<T, U>(NativeArray<T>, U)

    Sorts this array using a custom comparison.

    Declaration
    public static void Sort<T, U>(this NativeArray<T> array, U comp) where T : struct where U : IComparer<T>
    Parameters
    Type Name Description
    NativeArray<T> array

    The array to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Sort<T, U>(NativeList<T>, U)

    Sorts this list using a custom comparison.

    Declaration
    public static void Sort<T, U>(this NativeList<T> list, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    NativeList<T> list

    The list to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Sort<T, U>(NativeSlice<T>, U)

    Sorts this slice using a custom comparison.

    Declaration
    public static void Sort<T, U>(this NativeSlice<T> slice, U comp) where T : struct where U : IComparer<T>
    Parameters
    Type Name Description
    NativeSlice<T> slice

    The slice to sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    Sort<T, U>(T*, int, U)

    Sorts an array using a custom comparison.

    Declaration
    public static void Sort<T, U>(T* array, int length, U comp) where T : unmanaged where U : IComparer<T>
    Parameters
    Type Name Description
    T* array

    The array to sort.

    int length

    The number of elements to sort in the array. Indexes greater than or equal to length won't be included in the sort.

    U comp

    The comparison function used to determine the relative order of the elements.

    Type Parameters
    Name Description
    T

    The type of the elements.

    U

    The type of the comparer.

    In This Article
    • Methods
      • BinarySearch<T>(UnsafeList<T>, T)
      • BinarySearch<T>(NativeArray<T>, T)
      • BinarySearch<T>(NativeList<T>, T)
      • BinarySearch<T>(NativeSlice<T>, T)
      • BinarySearch<T>(T*, int, T)
      • BinarySearch<T, U>(UnsafeList<T>, T, U)
      • BinarySearch<T, U>(NativeArray<T>, T, U)
      • BinarySearch<T, U>(NativeList<T>, T, U)
      • BinarySearch<T, U>(NativeSlice<T>, T, U)
      • BinarySearch<T, U>(T*, int, T, U)
      • SortJob<T>(UnsafeList<T>)
      • SortJob<T>(NativeArray<T>)
      • SortJob<T>(NativeList<T>)
      • SortJob<T>(NativeSlice<T>)
      • SortJob<T>(T*, int)
      • SortJob<T, U>(UnsafeList<T>, U)
      • SortJob<T, U>(NativeArray<T>, U)
      • SortJob<T, U>(NativeList<T>, U)
      • SortJob<T, U>(NativeSlice<T>, U)
      • SortJob<T, U>(T*, int, U)
      • Sort<T>(UnsafeList<T>)
      • Sort<T>(NativeArray<T>)
      • Sort<T>(NativeList<T>)
      • Sort<T>(NativeSlice<T>)
      • Sort<T>(T*, int)
      • Sort<T, U>(UnsafeList<T>, U)
      • Sort<T, U>(NativeArray<T>, U)
      • Sort<T, U>(NativeList<T>, U)
      • Sort<T, U>(NativeSlice<T>, U)
      • Sort<T, U>(T*, int, U)
    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)