YetAnotherCoupler 3.2.0_a
Loading...
Searching...
No Matches
Macros | Functions
utils_core.h File Reference
#include "utils_common.h"
Include dependency graph for utils_core.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ASSERT(c)
 
#define COPY_DATA(data, count)
 

Functions

void yac_quicksort_index (int *a, size_t n, int *idx)
 
void yac_quicksort_index_yac_int_size_t (yac_int *a, size_t n, size_t *idx)
 
void yac_quicksort_index_yac_int_yac_int (yac_int *a, size_t n, yac_int *idx)
 
void yac_quicksort_index_size_t_yac_int (size_t *a, size_t n, yac_int *idx)
 
void yac_quicksort_index_yac_int_uint64_t (yac_int *a, size_t n, uint64_t *idx)
 
void yac_quicksort_index_yac_int_int (yac_int *a, size_t n, int *idx)
 
void yac_quicksort_index_size_t_size_t (size_t *a, size_t n, size_t *idx)
 
void yac_quicksort_index_uint64_t_size_t (uint64_t *a, size_t n, size_t *idx)
 
void yac_quicksort_index_int_size_t (int *a, size_t n, size_t *idx)
 
void yac_quicksort_index_size_t_int (size_t *a, size_t n, int *idx)
 
void yac_quicksort_index_size_t_void_p (size_t *a, size_t n, void **idx)
 
void yac_quicksort_index_int_yac_int (int *a, size_t n, yac_int *idx)
 
void yac_quicksort_index_int_double (int *a, size_t n, double *idx)
 
void yac_quicksort_index_size_t_size_t_double (size_t *a, size_t n, size_t *b, double *c)
 
void yac_quicksort_index_yac_int_yac_int_double (yac_int *a, size_t n, yac_int *b, double *c)
 
void yac_quicksort_index_yac_int_yac_int_size_t (yac_int *a, size_t n, yac_int *b, size_t *c)
 
void yac_quicksort_index_int_size_t_size_t (int *a, size_t n, size_t *b, size_t *c)
 
void yac_quicksort_index_int_size_t_yac_int (int *a, size_t n, size_t *b, yac_int *c)
 
void yac_mergesort (void *base, size_t num, size_t size, int(*compar)(const void *, const void *))
 
static void yac_remove_duplicates_uint (unsigned *array, size_t *n)
 
static void yac_remove_duplicates_double (double *array, size_t *n)
 
static void yac_remove_duplicates_size_t (size_t *array, size_t *n)
 
static void yac_remove_duplicates_size_t_2 (size_t(*array)[2], size_t *n)
 
static void yac_remove_duplicates_size_t_3 (size_t(*array)[3], size_t *n)
 

Macro Definition Documentation

◆ ASSERT

#define ASSERT (   c)
Value:
if (!(c)) {\
fprintf(stderr, "### Assertion violation: %s in %s:%d\n",\
#c, __FILE__, __LINE__);\
abort ();\
}

Definition at line 202 of file utils_core.h.

◆ COPY_DATA

#define COPY_DATA (   data,
  count 
)
Value:
(memcpy( \
xmalloc((size_t)(count) * sizeof(*(data))), \
(data), (size_t)(count) * sizeof(*(data))))
#define xmalloc(size)
Definition ppm_xfuncs.h:66

Definition at line 209 of file utils_core.h.

Function Documentation

◆ yac_mergesort()

void yac_mergesort ( void *  base,
size_t  num,
size_t  size,
int(*)(const void *, const void *)  compar 
)

Natural Merge sort

Definition at line 134 of file mergesort.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_quicksort_index()

void yac_quicksort_index ( int *  a,
size_t  n,
int *  idx 
)
Examples
test_quicksort.c.
Here is the caller graph for this function:

◆ yac_quicksort_index_int_double()

void yac_quicksort_index_int_double ( int *  a,
size_t  n,
double *  idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_int_size_t()

void yac_quicksort_index_int_size_t ( int *  a,
size_t  n,
size_t *  idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_int_size_t_size_t()

void yac_quicksort_index_int_size_t_size_t ( int *  a,
size_t  n,
size_t *  b,
size_t *  c 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_int_size_t_yac_int()

void yac_quicksort_index_int_size_t_yac_int ( int *  a,
size_t  n,
size_t *  b,
yac_int c 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_int_yac_int()

void yac_quicksort_index_int_yac_int ( int *  a,
size_t  n,
yac_int idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_size_t_int()

void yac_quicksort_index_size_t_int ( size_t *  a,
size_t  n,
int *  idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_size_t_size_t()

void yac_quicksort_index_size_t_size_t ( size_t *  a,
size_t  n,
size_t *  idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_size_t_size_t_double()

void yac_quicksort_index_size_t_size_t_double ( size_t *  a,
size_t  n,
size_t *  b,
double *  c 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_size_t_void_p()

void yac_quicksort_index_size_t_void_p ( size_t *  a,
size_t  n,
void **  idx 
)

◆ yac_quicksort_index_size_t_yac_int()

void yac_quicksort_index_size_t_yac_int ( size_t *  a,
size_t  n,
yac_int idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_uint64_t_size_t()

void yac_quicksort_index_uint64_t_size_t ( uint64_t *  a,
size_t  n,
size_t *  idx 
)

◆ yac_quicksort_index_yac_int_int()

void yac_quicksort_index_yac_int_int ( yac_int a,
size_t  n,
int *  idx 
)

◆ yac_quicksort_index_yac_int_size_t()

void yac_quicksort_index_yac_int_size_t ( yac_int a,
size_t  n,
size_t *  idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_yac_int_uint64_t()

void yac_quicksort_index_yac_int_uint64_t ( yac_int a,
size_t  n,
uint64_t *  idx 
)

◆ yac_quicksort_index_yac_int_yac_int()

void yac_quicksort_index_yac_int_yac_int ( yac_int a,
size_t  n,
yac_int idx 
)
Here is the caller graph for this function:

◆ yac_quicksort_index_yac_int_yac_int_double()

void yac_quicksort_index_yac_int_yac_int_double ( yac_int a,
size_t  n,
yac_int b,
double *  c 
)

◆ yac_quicksort_index_yac_int_yac_int_size_t()

void yac_quicksort_index_yac_int_yac_int_size_t ( yac_int a,
size_t  n,
yac_int b,
size_t *  c 
)
Here is the caller graph for this function:

◆ yac_remove_duplicates_double()

static void yac_remove_duplicates_double ( double *  array,
size_t *  n 
)
inlinestatic

remove duplicated entries from a list of integers

Parameters
[in,out]arrayarray containing a sorted (ascending) list of integers
[in,out]nnumber of entries in array

Definition at line 81 of file utils_core.h.

Here is the caller graph for this function:

◆ yac_remove_duplicates_size_t()

static void yac_remove_duplicates_size_t ( size_t *  array,
size_t *  n 
)
inlinestatic

remove duplicated entries from a list of integers

Parameters
[in,out]arrayarray containing a sorted (ascending) list of integers
[in,out]nnumber of entries in array

Definition at line 108 of file utils_core.h.

Here is the caller graph for this function:

◆ yac_remove_duplicates_size_t_2()

static void yac_remove_duplicates_size_t_2 ( size_t(*)  array[2],
size_t *  n 
)
inlinestatic

remove duplicated entries from a list of integers

Parameters
[in,out]arrayarray containing a sorted (ascending) list of integers
[in,out]nnumber of entries in array

Definition at line 135 of file utils_core.h.

Here is the caller graph for this function:

◆ yac_remove_duplicates_size_t_3()

static void yac_remove_duplicates_size_t_3 ( size_t(*)  array[3],
size_t *  n 
)
inlinestatic

remove duplicated entries from a list of integers

Parameters
[in,out]arrayarray containing a sorted (ascending) list of integers
[in,out]nnumber of entries in array

Definition at line 169 of file utils_core.h.

Here is the caller graph for this function:

◆ yac_remove_duplicates_uint()

static void yac_remove_duplicates_uint ( unsigned *  array,
size_t *  n 
)
inlinestatic

remove duplicated entries from a list of integers

Parameters
[in,out]arrayarray containing a sorted (ascending) list of integers
[in,out]nnumber of entries in array

Definition at line 54 of file utils_core.h.