module Bindings.Gsl.Sorting where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Bindings.Gsl.VectorsAndMatrices.DataTypes
import Bindings.Gsl.Permutations
type C'gsl_comparison_fn_t = FunPtr (FunPtr ( Ptr () -> Ptr () -> IO CInt))
foreign import ccall "wrapper" mk'gsl_comparison_fn_t
:: (FunPtr ( Ptr () -> Ptr () -> IO CInt)) -> IO C'gsl_comparison_fn_t
foreign import ccall "dynamic" mK'gsl_comparison_fn_t
:: C'gsl_comparison_fn_t -> (FunPtr ( Ptr () -> Ptr () -> IO CInt))
foreign import ccall "gsl_heapsort" c'gsl_heapsort
:: Ptr () -> CSize -> CSize -> C'gsl_comparison_fn_t -> IO ()
foreign import ccall "&gsl_heapsort" p'gsl_heapsort
:: FunPtr (Ptr () -> CSize -> CSize -> C'gsl_comparison_fn_t -> IO ())
foreign import ccall "gsl_heapsort_index" c'gsl_heapsort_index
:: Ptr CSize -> Ptr () -> CSize -> CSize -> C'gsl_comparison_fn_t -> IO CInt
foreign import ccall "&gsl_heapsort_index" p'gsl_heapsort_index
:: FunPtr (Ptr CSize -> Ptr () -> CSize -> CSize -> C'gsl_comparison_fn_t -> IO CInt)
foreign import ccall "gsl_sort_char" c'gsl_sort_char
:: CString -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_char" p'gsl_sort_char
:: FunPtr (CString -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_char_index" c'gsl_sort_char_index
:: Ptr CSize -> CString -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_char_index" p'gsl_sort_char_index
:: FunPtr (Ptr CSize -> CString -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_char_smallest" c'gsl_sort_char_smallest
:: CString -> CSize -> CString -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_char_smallest" p'gsl_sort_char_smallest
:: FunPtr (CString -> CSize -> CString -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_char_smallest_index" c'gsl_sort_char_smallest_index
:: Ptr CSize -> CSize -> CString -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_char_smallest_index" p'gsl_sort_char_smallest_index
:: FunPtr (Ptr CSize -> CSize -> CString -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_char_largest" c'gsl_sort_char_largest
:: CString -> CSize -> CString -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_char_largest" p'gsl_sort_char_largest
:: FunPtr (CString -> CSize -> CString -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_char_largest_index" c'gsl_sort_char_largest_index
:: Ptr CSize -> CSize -> CString -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_char_largest_index" p'gsl_sort_char_largest_index
:: FunPtr (Ptr CSize -> CSize -> CString -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort" c'gsl_sort
:: Ptr CDouble -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort" p'gsl_sort
:: FunPtr (Ptr CDouble -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_index" c'gsl_sort_index
:: Ptr CSize -> Ptr CDouble -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_index" p'gsl_sort_index
:: FunPtr (Ptr CSize -> Ptr CDouble -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_smallest" c'gsl_sort_smallest
:: Ptr CDouble -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_smallest" p'gsl_sort_smallest
:: FunPtr (Ptr CDouble -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_smallest_index" c'gsl_sort_smallest_index
:: Ptr CSize -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_smallest_index" p'gsl_sort_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_largest" c'gsl_sort_largest
:: Ptr CDouble -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_largest" p'gsl_sort_largest
:: FunPtr (Ptr CDouble -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_largest_index" c'gsl_sort_largest_index
:: Ptr CSize -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_largest_index" p'gsl_sort_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CDouble -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_float" c'gsl_sort_float
:: Ptr CFloat -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_float" p'gsl_sort_float
:: FunPtr (Ptr CFloat -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_float_index" c'gsl_sort_float_index
:: Ptr CSize -> Ptr CFloat -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_float_index" p'gsl_sort_float_index
:: FunPtr (Ptr CSize -> Ptr CFloat -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_float_smallest" c'gsl_sort_float_smallest
:: Ptr CFloat -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_float_smallest" p'gsl_sort_float_smallest
:: FunPtr (Ptr CFloat -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_float_smallest_index" c'gsl_sort_float_smallest_index
:: Ptr CSize -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_float_smallest_index" p'gsl_sort_float_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_float_largest" c'gsl_sort_float_largest
:: Ptr CFloat -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_float_largest" p'gsl_sort_float_largest
:: FunPtr (Ptr CFloat -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_float_largest_index" c'gsl_sort_float_largest_index
:: Ptr CSize -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_float_largest_index" p'gsl_sort_float_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CFloat -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_int" c'gsl_sort_int
:: Ptr CInt -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_int" p'gsl_sort_int
:: FunPtr (Ptr CInt -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_int_index" c'gsl_sort_int_index
:: Ptr CSize -> Ptr CInt -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_int_index" p'gsl_sort_int_index
:: FunPtr (Ptr CSize -> Ptr CInt -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_int_smallest" c'gsl_sort_int_smallest
:: Ptr CInt -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_int_smallest" p'gsl_sort_int_smallest
:: FunPtr (Ptr CInt -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_int_smallest_index" c'gsl_sort_int_smallest_index
:: Ptr CSize -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_int_smallest_index" p'gsl_sort_int_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_int_largest" c'gsl_sort_int_largest
:: Ptr CInt -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_int_largest" p'gsl_sort_int_largest
:: FunPtr (Ptr CInt -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_int_largest_index" c'gsl_sort_int_largest_index
:: Ptr CSize -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_int_largest_index" p'gsl_sort_int_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_long" c'gsl_sort_long
:: Ptr CLong -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_long" p'gsl_sort_long
:: FunPtr (Ptr CLong -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_long_index" c'gsl_sort_long_index
:: Ptr CSize -> Ptr CLong -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_long_index" p'gsl_sort_long_index
:: FunPtr (Ptr CSize -> Ptr CLong -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_long_smallest" c'gsl_sort_long_smallest
:: Ptr CLong -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_long_smallest" p'gsl_sort_long_smallest
:: FunPtr (Ptr CLong -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_long_smallest_index" c'gsl_sort_long_smallest_index
:: Ptr CSize -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_long_smallest_index" p'gsl_sort_long_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_long_largest" c'gsl_sort_long_largest
:: Ptr CLong -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_long_largest" p'gsl_sort_long_largest
:: FunPtr (Ptr CLong -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_long_largest_index" c'gsl_sort_long_largest_index
:: Ptr CSize -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_long_largest_index" p'gsl_sort_long_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CLong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_short" c'gsl_sort_short
:: Ptr CShort -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_short" p'gsl_sort_short
:: FunPtr (Ptr CShort -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_short_index" c'gsl_sort_short_index
:: Ptr CSize -> Ptr CShort -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_short_index" p'gsl_sort_short_index
:: FunPtr (Ptr CSize -> Ptr CShort -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_short_smallest" c'gsl_sort_short_smallest
:: Ptr CShort -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_short_smallest" p'gsl_sort_short_smallest
:: FunPtr (Ptr CShort -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_short_smallest_index" c'gsl_sort_short_smallest_index
:: Ptr CSize -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_short_smallest_index" p'gsl_sort_short_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_short_largest" c'gsl_sort_short_largest
:: Ptr CShort -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_short_largest" p'gsl_sort_short_largest
:: FunPtr (Ptr CShort -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_short_largest_index" c'gsl_sort_short_largest_index
:: Ptr CSize -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_short_largest_index" p'gsl_sort_short_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uchar" c'gsl_sort_uchar
:: Ptr CUChar -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_uchar" p'gsl_sort_uchar
:: FunPtr (Ptr CUChar -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_uchar_index" c'gsl_sort_uchar_index
:: Ptr CSize -> Ptr CUChar -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_uchar_index" p'gsl_sort_uchar_index
:: FunPtr (Ptr CSize -> Ptr CUChar -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_uchar_smallest" c'gsl_sort_uchar_smallest
:: Ptr CUChar -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uchar_smallest" p'gsl_sort_uchar_smallest
:: FunPtr (Ptr CUChar -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uchar_smallest_index" c'gsl_sort_uchar_smallest_index
:: Ptr CSize -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uchar_smallest_index" p'gsl_sort_uchar_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uchar_largest" c'gsl_sort_uchar_largest
:: Ptr CUChar -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uchar_largest" p'gsl_sort_uchar_largest
:: FunPtr (Ptr CUChar -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uchar_largest_index" c'gsl_sort_uchar_largest_index
:: Ptr CSize -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uchar_largest_index" p'gsl_sort_uchar_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUChar -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uint" c'gsl_sort_uint
:: Ptr CUInt -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_uint" p'gsl_sort_uint
:: FunPtr (Ptr CUInt -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_uint_index" c'gsl_sort_uint_index
:: Ptr CSize -> Ptr CUInt -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_uint_index" p'gsl_sort_uint_index
:: FunPtr (Ptr CSize -> Ptr CUInt -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_uint_smallest" c'gsl_sort_uint_smallest
:: Ptr CUInt -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uint_smallest" p'gsl_sort_uint_smallest
:: FunPtr (Ptr CUInt -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uint_smallest_index" c'gsl_sort_uint_smallest_index
:: Ptr CSize -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uint_smallest_index" p'gsl_sort_uint_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uint_largest" c'gsl_sort_uint_largest
:: Ptr CUInt -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uint_largest" p'gsl_sort_uint_largest
:: FunPtr (Ptr CUInt -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_uint_largest_index" c'gsl_sort_uint_largest_index
:: Ptr CSize -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_uint_largest_index" p'gsl_sort_uint_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUInt -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ulong" c'gsl_sort_ulong
:: Ptr CULong -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_ulong" p'gsl_sort_ulong
:: FunPtr (Ptr CULong -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_ulong_index" c'gsl_sort_ulong_index
:: Ptr CSize -> Ptr CULong -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_ulong_index" p'gsl_sort_ulong_index
:: FunPtr (Ptr CSize -> Ptr CULong -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_ulong_smallest" c'gsl_sort_ulong_smallest
:: Ptr CULong -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ulong_smallest" p'gsl_sort_ulong_smallest
:: FunPtr (Ptr CULong -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ulong_smallest_index" c'gsl_sort_ulong_smallest_index
:: Ptr CSize -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ulong_smallest_index" p'gsl_sort_ulong_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ulong_largest" c'gsl_sort_ulong_largest
:: Ptr CULong -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ulong_largest" p'gsl_sort_ulong_largest
:: FunPtr (Ptr CULong -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ulong_largest_index" c'gsl_sort_ulong_largest_index
:: Ptr CSize -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ulong_largest_index" p'gsl_sort_ulong_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CULong -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ushort" c'gsl_sort_ushort
:: Ptr CUShort -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_ushort" p'gsl_sort_ushort
:: FunPtr (Ptr CUShort -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_ushort_index" c'gsl_sort_ushort_index
:: Ptr CSize -> Ptr CUShort -> CSize -> CSize -> IO ()
foreign import ccall "&gsl_sort_ushort_index" p'gsl_sort_ushort_index
:: FunPtr (Ptr CSize -> Ptr CUShort -> CSize -> CSize -> IO ())
foreign import ccall "gsl_sort_ushort_smallest" c'gsl_sort_ushort_smallest
:: Ptr CUShort -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ushort_smallest" p'gsl_sort_ushort_smallest
:: FunPtr (Ptr CUShort -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ushort_smallest_index" c'gsl_sort_ushort_smallest_index
:: Ptr CSize -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ushort_smallest_index" p'gsl_sort_ushort_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ushort_largest" c'gsl_sort_ushort_largest
:: Ptr CUShort -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ushort_largest" p'gsl_sort_ushort_largest
:: FunPtr (Ptr CUShort -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_ushort_largest_index" c'gsl_sort_ushort_largest_index
:: Ptr CSize -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt
foreign import ccall "&gsl_sort_ushort_largest_index" p'gsl_sort_ushort_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr CUShort -> CSize -> CSize -> IO CInt)
foreign import ccall "gsl_sort_vector_char" c'gsl_sort_vector_char
:: Ptr C'gsl_vector_char -> IO ()
foreign import ccall "&gsl_sort_vector_char" p'gsl_sort_vector_char
:: FunPtr (Ptr C'gsl_vector_char -> IO ())
foreign import ccall "gsl_sort_vector_char_index" c'gsl_sort_vector_char_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_char -> IO CInt
foreign import ccall "&gsl_sort_vector_char_index" p'gsl_sort_vector_char_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_char -> IO CInt)
foreign import ccall "gsl_sort_vector_char_smallest" c'gsl_sort_vector_char_smallest
:: CString -> CSize -> Ptr C'gsl_vector_char -> IO CInt
foreign import ccall "&gsl_sort_vector_char_smallest" p'gsl_sort_vector_char_smallest
:: FunPtr (CString -> CSize -> Ptr C'gsl_vector_char -> IO CInt)
foreign import ccall "gsl_sort_vector_char_largest" c'gsl_sort_vector_char_largest
:: CString -> CSize -> Ptr C'gsl_vector_char -> IO CInt
foreign import ccall "&gsl_sort_vector_char_largest" p'gsl_sort_vector_char_largest
:: FunPtr (CString -> CSize -> Ptr C'gsl_vector_char -> IO CInt)
foreign import ccall "gsl_sort_vector_char_smallest_index" c'gsl_sort_vector_char_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_char -> IO CInt
foreign import ccall "&gsl_sort_vector_char_smallest_index" p'gsl_sort_vector_char_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_char -> IO CInt)
foreign import ccall "gsl_sort_vector_char_largest_index" c'gsl_sort_vector_char_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_char -> IO CInt
foreign import ccall "&gsl_sort_vector_char_largest_index" p'gsl_sort_vector_char_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_char -> IO CInt)
foreign import ccall "gsl_sort_vector" c'gsl_sort_vector
:: Ptr C'gsl_vector -> IO ()
foreign import ccall "&gsl_sort_vector" p'gsl_sort_vector
:: FunPtr (Ptr C'gsl_vector -> IO ())
foreign import ccall "gsl_sort_vector_index" c'gsl_sort_vector_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_sort_vector_index" p'gsl_sort_vector_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_sort_vector_smallest" c'gsl_sort_vector_smallest
:: Ptr CDouble -> CSize -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_sort_vector_smallest" p'gsl_sort_vector_smallest
:: FunPtr (Ptr CDouble -> CSize -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_sort_vector_largest" c'gsl_sort_vector_largest
:: Ptr CDouble -> CSize -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_sort_vector_largest" p'gsl_sort_vector_largest
:: FunPtr (Ptr CDouble -> CSize -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_sort_vector_smallest_index" c'gsl_sort_vector_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_sort_vector_smallest_index" p'gsl_sort_vector_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_sort_vector_largest_index" c'gsl_sort_vector_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector -> IO CInt
foreign import ccall "&gsl_sort_vector_largest_index" p'gsl_sort_vector_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector -> IO CInt)
foreign import ccall "gsl_sort_vector_float" c'gsl_sort_vector_float
:: Ptr C'gsl_vector_float -> IO ()
foreign import ccall "&gsl_sort_vector_float" p'gsl_sort_vector_float
:: FunPtr (Ptr C'gsl_vector_float -> IO ())
foreign import ccall "gsl_sort_vector_float_index" c'gsl_sort_vector_float_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_float -> IO CInt
foreign import ccall "&gsl_sort_vector_float_index" p'gsl_sort_vector_float_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_float -> IO CInt)
foreign import ccall "gsl_sort_vector_float_smallest" c'gsl_sort_vector_float_smallest
:: Ptr CFloat -> CSize -> Ptr C'gsl_vector_float -> IO CInt
foreign import ccall "&gsl_sort_vector_float_smallest" p'gsl_sort_vector_float_smallest
:: FunPtr (Ptr CFloat -> CSize -> Ptr C'gsl_vector_float -> IO CInt)
foreign import ccall "gsl_sort_vector_float_largest" c'gsl_sort_vector_float_largest
:: Ptr CFloat -> CSize -> Ptr C'gsl_vector_float -> IO CInt
foreign import ccall "&gsl_sort_vector_float_largest" p'gsl_sort_vector_float_largest
:: FunPtr (Ptr CFloat -> CSize -> Ptr C'gsl_vector_float -> IO CInt)
foreign import ccall "gsl_sort_vector_float_smallest_index" c'gsl_sort_vector_float_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_float -> IO CInt
foreign import ccall "&gsl_sort_vector_float_smallest_index" p'gsl_sort_vector_float_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_float -> IO CInt)
foreign import ccall "gsl_sort_vector_float_largest_index" c'gsl_sort_vector_float_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_float -> IO CInt
foreign import ccall "&gsl_sort_vector_float_largest_index" p'gsl_sort_vector_float_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_float -> IO CInt)
foreign import ccall "gsl_sort_vector_int" c'gsl_sort_vector_int
:: Ptr C'gsl_vector_int -> IO ()
foreign import ccall "&gsl_sort_vector_int" p'gsl_sort_vector_int
:: FunPtr (Ptr C'gsl_vector_int -> IO ())
foreign import ccall "gsl_sort_vector_int_index" c'gsl_sort_vector_int_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_int -> IO CInt
foreign import ccall "&gsl_sort_vector_int_index" p'gsl_sort_vector_int_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_int -> IO CInt)
foreign import ccall "gsl_sort_vector_int_smallest" c'gsl_sort_vector_int_smallest
:: Ptr CInt -> CSize -> Ptr C'gsl_vector_int -> IO CInt
foreign import ccall "&gsl_sort_vector_int_smallest" p'gsl_sort_vector_int_smallest
:: FunPtr (Ptr CInt -> CSize -> Ptr C'gsl_vector_int -> IO CInt)
foreign import ccall "gsl_sort_vector_int_largest" c'gsl_sort_vector_int_largest
:: Ptr CInt -> CSize -> Ptr C'gsl_vector_int -> IO CInt
foreign import ccall "&gsl_sort_vector_int_largest" p'gsl_sort_vector_int_largest
:: FunPtr (Ptr CInt -> CSize -> Ptr C'gsl_vector_int -> IO CInt)
foreign import ccall "gsl_sort_vector_int_smallest_index" c'gsl_sort_vector_int_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_int -> IO CInt
foreign import ccall "&gsl_sort_vector_int_smallest_index" p'gsl_sort_vector_int_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_int -> IO CInt)
foreign import ccall "gsl_sort_vector_int_largest_index" c'gsl_sort_vector_int_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_int -> IO CInt
foreign import ccall "&gsl_sort_vector_int_largest_index" p'gsl_sort_vector_int_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_int -> IO CInt)
foreign import ccall "gsl_sort_vector_long" c'gsl_sort_vector_long
:: Ptr C'gsl_vector_long -> IO ()
foreign import ccall "&gsl_sort_vector_long" p'gsl_sort_vector_long
:: FunPtr (Ptr C'gsl_vector_long -> IO ())
foreign import ccall "gsl_sort_vector_long_index" c'gsl_sort_vector_long_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_long -> IO CInt
foreign import ccall "&gsl_sort_vector_long_index" p'gsl_sort_vector_long_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_long -> IO CInt)
foreign import ccall "gsl_sort_vector_long_smallest" c'gsl_sort_vector_long_smallest
:: Ptr CLong -> CSize -> Ptr C'gsl_vector_long -> IO CInt
foreign import ccall "&gsl_sort_vector_long_smallest" p'gsl_sort_vector_long_smallest
:: FunPtr (Ptr CLong -> CSize -> Ptr C'gsl_vector_long -> IO CInt)
foreign import ccall "gsl_sort_vector_long_largest" c'gsl_sort_vector_long_largest
:: Ptr CLong -> CSize -> Ptr C'gsl_vector_long -> IO CInt
foreign import ccall "&gsl_sort_vector_long_largest" p'gsl_sort_vector_long_largest
:: FunPtr (Ptr CLong -> CSize -> Ptr C'gsl_vector_long -> IO CInt)
foreign import ccall "gsl_sort_vector_long_smallest_index" c'gsl_sort_vector_long_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_long -> IO CInt
foreign import ccall "&gsl_sort_vector_long_smallest_index" p'gsl_sort_vector_long_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_long -> IO CInt)
foreign import ccall "gsl_sort_vector_long_largest_index" c'gsl_sort_vector_long_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_long -> IO CInt
foreign import ccall "&gsl_sort_vector_long_largest_index" p'gsl_sort_vector_long_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_long -> IO CInt)
foreign import ccall "gsl_sort_vector_short" c'gsl_sort_vector_short
:: Ptr C'gsl_vector_short -> IO ()
foreign import ccall "&gsl_sort_vector_short" p'gsl_sort_vector_short
:: FunPtr (Ptr C'gsl_vector_short -> IO ())
foreign import ccall "gsl_sort_vector_short_index" c'gsl_sort_vector_short_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_short -> IO CInt
foreign import ccall "&gsl_sort_vector_short_index" p'gsl_sort_vector_short_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_short -> IO CInt)
foreign import ccall "gsl_sort_vector_short_smallest" c'gsl_sort_vector_short_smallest
:: Ptr CShort -> CSize -> Ptr C'gsl_vector_short -> IO CInt
foreign import ccall "&gsl_sort_vector_short_smallest" p'gsl_sort_vector_short_smallest
:: FunPtr (Ptr CShort -> CSize -> Ptr C'gsl_vector_short -> IO CInt)
foreign import ccall "gsl_sort_vector_short_largest" c'gsl_sort_vector_short_largest
:: Ptr CShort -> CSize -> Ptr C'gsl_vector_short -> IO CInt
foreign import ccall "&gsl_sort_vector_short_largest" p'gsl_sort_vector_short_largest
:: FunPtr (Ptr CShort -> CSize -> Ptr C'gsl_vector_short -> IO CInt)
foreign import ccall "gsl_sort_vector_short_smallest_index" c'gsl_sort_vector_short_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_short -> IO CInt
foreign import ccall "&gsl_sort_vector_short_smallest_index" p'gsl_sort_vector_short_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_short -> IO CInt)
foreign import ccall "gsl_sort_vector_short_largest_index" c'gsl_sort_vector_short_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_short -> IO CInt
foreign import ccall "&gsl_sort_vector_short_largest_index" p'gsl_sort_vector_short_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_short -> IO CInt)
foreign import ccall "gsl_sort_vector_uchar" c'gsl_sort_vector_uchar
:: Ptr C'gsl_vector_uchar -> IO ()
foreign import ccall "&gsl_sort_vector_uchar" p'gsl_sort_vector_uchar
:: FunPtr (Ptr C'gsl_vector_uchar -> IO ())
foreign import ccall "gsl_sort_vector_uchar_index" c'gsl_sort_vector_uchar_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_uchar -> IO CInt
foreign import ccall "&gsl_sort_vector_uchar_index" p'gsl_sort_vector_uchar_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_uchar -> IO CInt)
foreign import ccall "gsl_sort_vector_uchar_smallest" c'gsl_sort_vector_uchar_smallest
:: Ptr CUChar -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt
foreign import ccall "&gsl_sort_vector_uchar_smallest" p'gsl_sort_vector_uchar_smallest
:: FunPtr (Ptr CUChar -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt)
foreign import ccall "gsl_sort_vector_uchar_largest" c'gsl_sort_vector_uchar_largest
:: Ptr CUChar -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt
foreign import ccall "&gsl_sort_vector_uchar_largest" p'gsl_sort_vector_uchar_largest
:: FunPtr (Ptr CUChar -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt)
foreign import ccall "gsl_sort_vector_uchar_smallest_index" c'gsl_sort_vector_uchar_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt
foreign import ccall "&gsl_sort_vector_uchar_smallest_index" p'gsl_sort_vector_uchar_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt)
foreign import ccall "gsl_sort_vector_uchar_largest_index" c'gsl_sort_vector_uchar_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt
foreign import ccall "&gsl_sort_vector_uchar_largest_index" p'gsl_sort_vector_uchar_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_uchar -> IO CInt)
foreign import ccall "gsl_sort_vector_uint" c'gsl_sort_vector_uint
:: Ptr C'gsl_vector_uint -> IO ()
foreign import ccall "&gsl_sort_vector_uint" p'gsl_sort_vector_uint
:: FunPtr (Ptr C'gsl_vector_uint -> IO ())
foreign import ccall "gsl_sort_vector_uint_index" c'gsl_sort_vector_uint_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_uint -> IO CInt
foreign import ccall "&gsl_sort_vector_uint_index" p'gsl_sort_vector_uint_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_uint -> IO CInt)
foreign import ccall "gsl_sort_vector_uint_smallest" c'gsl_sort_vector_uint_smallest
:: Ptr CUInt -> CSize -> Ptr C'gsl_vector_uint -> IO CInt
foreign import ccall "&gsl_sort_vector_uint_smallest" p'gsl_sort_vector_uint_smallest
:: FunPtr (Ptr CUInt -> CSize -> Ptr C'gsl_vector_uint -> IO CInt)
foreign import ccall "gsl_sort_vector_uint_largest" c'gsl_sort_vector_uint_largest
:: Ptr CUInt -> CSize -> Ptr C'gsl_vector_uint -> IO CInt
foreign import ccall "&gsl_sort_vector_uint_largest" p'gsl_sort_vector_uint_largest
:: FunPtr (Ptr CUInt -> CSize -> Ptr C'gsl_vector_uint -> IO CInt)
foreign import ccall "gsl_sort_vector_uint_smallest_index" c'gsl_sort_vector_uint_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_uint -> IO CInt
foreign import ccall "&gsl_sort_vector_uint_smallest_index" p'gsl_sort_vector_uint_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_uint -> IO CInt)
foreign import ccall "gsl_sort_vector_uint_largest_index" c'gsl_sort_vector_uint_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_uint -> IO CInt
foreign import ccall "&gsl_sort_vector_uint_largest_index" p'gsl_sort_vector_uint_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_uint -> IO CInt)
foreign import ccall "gsl_sort_vector_ulong" c'gsl_sort_vector_ulong
:: Ptr C'gsl_vector_ulong -> IO ()
foreign import ccall "&gsl_sort_vector_ulong" p'gsl_sort_vector_ulong
:: FunPtr (Ptr C'gsl_vector_ulong -> IO ())
foreign import ccall "gsl_sort_vector_ulong_index" c'gsl_sort_vector_ulong_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_ulong -> IO CInt
foreign import ccall "&gsl_sort_vector_ulong_index" p'gsl_sort_vector_ulong_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_ulong -> IO CInt)
foreign import ccall "gsl_sort_vector_ulong_smallest" c'gsl_sort_vector_ulong_smallest
:: Ptr CULong -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt
foreign import ccall "&gsl_sort_vector_ulong_smallest" p'gsl_sort_vector_ulong_smallest
:: FunPtr (Ptr CULong -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt)
foreign import ccall "gsl_sort_vector_ulong_largest" c'gsl_sort_vector_ulong_largest
:: Ptr CULong -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt
foreign import ccall "&gsl_sort_vector_ulong_largest" p'gsl_sort_vector_ulong_largest
:: FunPtr (Ptr CULong -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt)
foreign import ccall "gsl_sort_vector_ulong_smallest_index" c'gsl_sort_vector_ulong_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt
foreign import ccall "&gsl_sort_vector_ulong_smallest_index" p'gsl_sort_vector_ulong_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt)
foreign import ccall "gsl_sort_vector_ulong_largest_index" c'gsl_sort_vector_ulong_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt
foreign import ccall "&gsl_sort_vector_ulong_largest_index" p'gsl_sort_vector_ulong_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_ulong -> IO CInt)
foreign import ccall "gsl_sort_vector_ushort" c'gsl_sort_vector_ushort
:: Ptr C'gsl_vector_ushort -> IO ()
foreign import ccall "&gsl_sort_vector_ushort" p'gsl_sort_vector_ushort
:: FunPtr (Ptr C'gsl_vector_ushort -> IO ())
foreign import ccall "gsl_sort_vector_ushort_index" c'gsl_sort_vector_ushort_index
:: Ptr C'gsl_permutation -> Ptr C'gsl_vector_ushort -> IO CInt
foreign import ccall "&gsl_sort_vector_ushort_index" p'gsl_sort_vector_ushort_index
:: FunPtr (Ptr C'gsl_permutation -> Ptr C'gsl_vector_ushort -> IO CInt)
foreign import ccall "gsl_sort_vector_ushort_smallest" c'gsl_sort_vector_ushort_smallest
:: Ptr CUShort -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt
foreign import ccall "&gsl_sort_vector_ushort_smallest" p'gsl_sort_vector_ushort_smallest
:: FunPtr (Ptr CUShort -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt)
foreign import ccall "gsl_sort_vector_ushort_largest" c'gsl_sort_vector_ushort_largest
:: Ptr CUShort -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt
foreign import ccall "&gsl_sort_vector_ushort_largest" p'gsl_sort_vector_ushort_largest
:: FunPtr (Ptr CUShort -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt)
foreign import ccall "gsl_sort_vector_ushort_smallest_index" c'gsl_sort_vector_ushort_smallest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt
foreign import ccall "&gsl_sort_vector_ushort_smallest_index" p'gsl_sort_vector_ushort_smallest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt)
foreign import ccall "gsl_sort_vector_ushort_largest_index" c'gsl_sort_vector_ushort_largest_index
:: Ptr CSize -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt
foreign import ccall "&gsl_sort_vector_ushort_largest_index" p'gsl_sort_vector_ushort_largest_index
:: FunPtr (Ptr CSize -> CSize -> Ptr C'gsl_vector_ushort -> IO CInt)