trusty (3) Array.sort.3kaya.gz

Provided by: kaya_0.4.4-6ubuntu3_amd64 bug

NAME

       Array::sort - Sort an array.

SYNOPSIS

       Void sort( var [a] xs, Int(a, a) sortfn=compare )

ARGUMENTS

       xs The array to sort

       sortfn Optionally, a user-defined comparison function.

DESCRIPTION

       Sort  an array in-place using the quicksort algorithm.  By default this uses the Builtins.compare (3kaya)
       function and sorts in ascending order, but it can instead use a user supplied compare function.

    xs = [3,5,1,2,6,1];
    sort(xs); // [1,1,2,3,5,6]

       Comparison functions should return 0 if the values are identical, less  than  zero  if  the  first  value
       passed to the function is 'smaller', and more than zero if the second value is 'bigger'. In this context,
       'smaller' values are moved to the start of the array, and 'bigger'  values  to  the  end.  The  following
       example has a simple function to sort an array of Int s into descending order.

    Int rsort(Int a, Int b) {
        return b-a;
    }

    Void main() {
        xs =  [3,5,1,2,6,1];
        sort(xs,rsort); // [6,5,3,2,1,1]
    }

       Values  that  are identical for the purposes of the sorting function will be placed in an undefined order
       relative to each other.

AUTHORS

       Kaya standard  library  by  Edwin  Brady,  Chris  Morris  and  others  (kaya@kayalang.org).  For  further
       information see http://kayalang.org/

LICENSE

       The  Kaya  standard library is free software; you can redistribute it and/or modify it under the terms of
       the GNU Lesser General Public License (version 2.1 or  any  later  version)  as  published  by  the  Free
       Software Foundation.

       The Array.sorted (3kaya) function returns a sorted copy of the array, rather than sorting in place.