Libmacro  0.2
Libmacro is an extensible macro and hotkey library.
comparison.h File Reference

Comparison functions to be used with qsort and bsearch. More...

#include "mcr/globals.h"

Go to the source code of this file.

Typedefs

typedef int(* mcr_data_fnc) (void *dataPt)
 
typedef int(* mcr_copy_fnc) (void *destinationPt, const void *sourcePt)
 
typedef int(* mcr_compare_fnc) (const void *lhsPt, const void *rhsPt)
 

Functions

MCR_API int mcr_char_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_id_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_name_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_str_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_int_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_unsigned_compare (const void *lhs, const void *rhs)
 
MCR_API int mcr_ref_compare (const void *lhs, const void *rhs)
 

Detailed Description

Comparison functions to be used with qsort and bsearch.

Definition in file comparison.h.

Typedef Documentation

§ mcr_compare_fnc

typedef int(* mcr_compare_fnc) (const void *lhsPt, const void *rhsPt)

Comparison function of two data or objects

Parameters
lhsPtopt Left side of comparison
rhsPtopt Right side of comparison
Returns
retcmp

Definition at line 53 of file comparison.h.

§ mcr_copy_fnc

typedef int(* mcr_copy_fnc) (void *destinationPt, const void *sourcePt)

Copy from one data or object another

Parameters
destinationPtDestination object
sourcePtopt Source object
Returns
reterr

Definition at line 46 of file comparison.h.

§ mcr_data_fnc

typedef int(* mcr_data_fnc) (void *dataPt)

Function on data or an object.

Use this for data init and deinit, such as mcr_Interface::init and mcr_Interface::deinit

Parameters
dataPtmcr_DataMember::data
Returns
reterr

Definition at line 39 of file comparison.h.

Function Documentation

§ mcr_char_compare()

MCR_API int mcr_char_compare ( const void *  lhs,
const void *  rhs 
)

Compare chars

Parameters
lhsopt const char *
rhsopt const char *
Returns
retcmp

§ mcr_id_compare()

MCR_API int mcr_id_compare ( const void *  lhs,
const void *  rhs 
)

Compare size_t

Parameters
lhsopt const size_t *
rhsopt const size_t *
Returns
retcmp

§ mcr_int_compare()

MCR_API int mcr_int_compare ( const void *  lhs,
const void *  rhs 
)

Compare integers referenced by each pointer.

Parameters
lhsopt int *
rhsopt int *
Returns
retcmp

§ mcr_name_compare()

MCR_API int mcr_name_compare ( const void *  lhs,
const void *  rhs 
)

Compare const c-strings referenced by each pointer, case insensitive.

Parameters
lhsopt const char * const* or mcr_Array *
rhsopt const char * const* or mcr_Array *
Returns
retcmp

§ mcr_ref_compare()

MCR_API int mcr_ref_compare ( const void *  lhs,
const void *  rhs 
)

Compare void * referenced by each pointer.

Parameters
lhsopt void **
rhsopt void **
Returns
retcmp

§ mcr_str_compare()

MCR_API int mcr_str_compare ( const void *  lhs,
const void *  rhs 
)

Compare const c-strings referenced by each pointer, case sensitive.

Parameters
lhsopt const char * const* or mcr_Array *
rhsopt const char * const* or mcr_Array *
Returns
retcmp

§ mcr_unsigned_compare()

MCR_API int mcr_unsigned_compare ( const void *  lhs,
const void *  rhs 
)

Compare unsigned integers referenced by each pointer.

Parameters
lhsopt unsigned int *
rhsopt unsigned int *
Returns
retcmp