src/cx/compare.h

Fri, 23 May 2025 12:44:24 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 23 May 2025 12:44:24 +0200
changeset 1327
ed75dc1db503
parent 1186
7fc882813125
permissions
-rw-r--r--

make test-compile depend on both static and shared

the shared lib is not needed for the tests,
but when run with coverage, gcov will be confused
when outdated line information is available from
a previous shared build

601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 /*
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 *
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4 * Copyright 2021 Mike Becker, Olaf Wintermann All rights reserved.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 *
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 *
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 *
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 *
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
27 */
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
28 /**
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
29 * @file compare.h
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
30 * @brief A collection of simple compare functions.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
31 * @author Mike Becker
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
32 * @author Olaf Wintermann
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
33 * @copyright 2-Clause BSD License
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
34 */
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
35
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
36 #ifndef UCX_COMPARE_H
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
37 #define UCX_COMPARE_H
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
38
650
77021e06b1a8 fix code not compiling under windows+mingw
Mike Becker <universe@uap-core.de>
parents: 631
diff changeset
39 #include "common.h"
77021e06b1a8 fix code not compiling under windows+mingw
Mike Becker <universe@uap-core.de>
parents: 631
diff changeset
40
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
41 #ifdef __cplusplus
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
42 extern "C" {
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
43 #endif
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
44
786
b0ebb3d88407 declare cx_compare_func in compare.h - fixes #344
Mike Becker <universe@uap-core.de>
parents: 762
diff changeset
45 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
46 * A comparator function comparing two arbitrary values.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
47 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
48 * All functions from compare.h with the cx_cmp prefix are
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
49 * compatible with this signature and can be used as
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
50 * compare function for collections, or other implementations
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
51 * that need to be type-agnostic.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
52 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
53 * For simple comparisons the cx_vcmp family of functions
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
54 * can be used, but they are NOT compatible with this function
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
55 * pointer.
786
b0ebb3d88407 declare cx_compare_func in compare.h - fixes #344
Mike Becker <universe@uap-core.de>
parents: 762
diff changeset
56 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
57 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
58 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
59 cx_attr_export
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
60 typedef int (*cx_compare_func)(
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
61 const void *left,
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
62 const void *right
786
b0ebb3d88407 declare cx_compare_func in compare.h - fixes #344
Mike Becker <universe@uap-core.de>
parents: 762
diff changeset
63 );
b0ebb3d88407 declare cx_compare_func in compare.h - fixes #344
Mike Becker <universe@uap-core.de>
parents: 762
diff changeset
64
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
65 /**
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
66 * Compares two integers of type int.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
67 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
68 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
69 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
70 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
71 * @param i1 pointer to integer one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
72 * @param i2 pointer to integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
73 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
74 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
75 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
76 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
77 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
78 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
79 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
80 int cx_cmp_int(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
81
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
82 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
83 * Compares two integers of type int.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
84 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
85 * @param i1 integer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
86 * @param i2 integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
87 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
88 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
89 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
90 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
91 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
92 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
93 int cx_vcmp_int(int i1, int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
94
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
95 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
96 * Compares two integers of type long int.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
97 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
98 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
99 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
100 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
101 * @param i1 pointer to long integer one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
102 * @param i2 pointer to long integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
103 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
104 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
105 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
106 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
107 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
108 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
109 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
110 int cx_cmp_longint(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
111
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
112 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
113 * Compares two integers of type long int.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
114 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
115 * @param i1 long integer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
116 * @param i2 long integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
117 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
118 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
119 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
120 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
121 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
122 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
123 int cx_vcmp_longint(long int i1, long int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
124
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
125 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 * Compares two integers of type long long.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
128 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
129 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
130 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131 * @param i1 pointer to long long one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
132 * @param i2 pointer to long long two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
133 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
134 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
135 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
136 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
137 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
138 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
139 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
140 int cx_cmp_longlong(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
141
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
142 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
143 * Compares two integers of type long long.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
144 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
145 * @param i1 long long int one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
146 * @param i2 long long int two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
147 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
148 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
149 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
150 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
151 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
152 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
153 int cx_vcmp_longlong(long long int i1, long long int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
154
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
155 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
156 * Compares two integers of type int16_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
157 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
158 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
159 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
160 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
161 * @param i1 pointer to int16_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
162 * @param i2 pointer to int16_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
163 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
164 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
165 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
166 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
167 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
168 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
169 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
170 int cx_cmp_int16(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
171
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
172 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
173 * Compares two integers of type int16_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
174 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
175 * @param i1 int16_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
176 * @param i2 int16_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
177 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
178 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
179 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
180 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
181 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
182 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
183 int cx_vcmp_int16(int16_t i1, int16_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
184
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
185 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
186 * Compares two integers of type int32_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
187 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
188 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
189 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
190 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
191 * @param i1 pointer to int32_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
192 * @param i2 pointer to int32_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
193 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
194 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
195 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
196 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
197 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
198 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
199 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
200 int cx_cmp_int32(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
201
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
202 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
203 * Compares two integers of type int32_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
204 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
205 * @param i1 int32_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
206 * @param i2 int32_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
207 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
208 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
209 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
210 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
211 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
212 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
213 int cx_vcmp_int32(int32_t i1, int32_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
214
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
215 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
216 * Compares two integers of type int64_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
217 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
218 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
219 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
220 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
221 * @param i1 pointer to int64_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
222 * @param i2 pointer to int64_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
223 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
224 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
225 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
226 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
227 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
228 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
229 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
230 int cx_cmp_int64(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
231
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
232 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
233 * Compares two integers of type int64_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
234 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
235 * @param i1 int64_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
236 * @param i2 int64_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
237 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
238 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
239 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
240 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
241 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
242 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
243 int cx_vcmp_int64(int64_t i1, int64_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
244
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
245 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
246 * Compares two integers of type unsigned int.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
247 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
248 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
249 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
250 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
251 * @param i1 pointer to unsigned integer one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
252 * @param i2 pointer to unsigned integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
253 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
254 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
255 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
256 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
257 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
258 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
259 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
260 int cx_cmp_uint(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
261
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
262 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
263 * Compares two integers of type unsigned int.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
264 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
265 * @param i1 unsigned integer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
266 * @param i2 unsigned integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
267 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
268 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
269 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
270 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
271 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
272 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
273 int cx_vcmp_uint(unsigned int i1, unsigned int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
274
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
275 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
276 * Compares two integers of type unsigned long int.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
277 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
278 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
279 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
280 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
281 * @param i1 pointer to unsigned long integer one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
282 * @param i2 pointer to unsigned long integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
283 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
284 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
285 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
286 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
287 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
288 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
289 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
290 int cx_cmp_ulongint(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
291
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
292 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
293 * Compares two integers of type unsigned long int.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
294 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
295 * @param i1 unsigned long integer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
296 * @param i2 unsigned long integer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
297 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
298 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
299 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
300 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
301 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
302 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
303 int cx_vcmp_ulongint(unsigned long int i1, unsigned long int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
304
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
305 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
306 * Compares two integers of type unsigned long long.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
307 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
308 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
309 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
310 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
311 * @param i1 pointer to unsigned long long one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
312 * @param i2 pointer to unsigned long long two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
313 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
314 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
315 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
316 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
317 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
318 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
319 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
320 int cx_cmp_ulonglong(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
321
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
322 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
323 * Compares two integers of type unsigned long long.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
324 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
325 * @param i1 unsigned long long one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
326 * @param i2 unsigned long long two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
327 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
328 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
329 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
330 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
331 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
332 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
333 int cx_vcmp_ulonglong(unsigned long long int i1, unsigned long long int i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
334
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
335 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
336 * Compares two integers of type uint16_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
337 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
338 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
339 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
340 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
341 * @param i1 pointer to uint16_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
342 * @param i2 pointer to uint16_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
343 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
344 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
345 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
346 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
347 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
348 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
349 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
350 int cx_cmp_uint16(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
351
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
352 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
353 * Compares two integers of type uint16_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
354 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
355 * @param i1 uint16_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
356 * @param i2 uint16_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
357 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
358 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
359 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
360 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
361 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
362 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
363 int cx_vcmp_uint16(uint16_t i1, uint16_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
364
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
365 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
366 * Compares two integers of type uint32_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
367 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
368 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
369 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
370 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
371 * @param i1 pointer to uint32_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
372 * @param i2 pointer to uint32_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
373 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
374 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
375 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
376 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
377 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
378 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
379 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
380 int cx_cmp_uint32(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
381
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
382 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
383 * Compares two integers of type uint32_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
384 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
385 * @param i1 uint32_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
386 * @param i2 uint32_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
387 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
388 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
389 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
390 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
391 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
392 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
393 int cx_vcmp_uint32(uint32_t i1, uint32_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
394
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
395 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
396 * Compares two integers of type uint64_t.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
397 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
398 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
399 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
400 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
401 * @param i1 pointer to uint64_t one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
402 * @param i2 pointer to uint64_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
403 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
404 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
405 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
406 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
407 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
408 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
409 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
410 int cx_cmp_uint64(const void *i1, const void *i2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
411
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
412 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
413 * Compares two integers of type uint64_t.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
414 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
415 * @param i1 uint64_t one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
416 * @param i2 uint64_t two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
417 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
418 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
419 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
420 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
421 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
422 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
423 int cx_vcmp_uint64(uint64_t i1, uint64_t i2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
424
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
425 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
426 * Compares two real numbers of type float with precision 1e-6f.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
427 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
428 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
429 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
430 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
431 * @param f1 pointer to float one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
432 * @param f2 pointer to float two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
433 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
434 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
435 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
436 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
437 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
438 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
439 cx_attr_export
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
440 int cx_cmp_float(const void *f1, const void *f2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
441
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
442 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
443 * Compares two real numbers of type float with precision 1e-6f.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
444 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
445 * @param f1 float one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
446 * @param f2 float two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
447 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
448 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
449 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
450 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
451 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
452 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
453 int cx_vcmp_float(float f1, float f2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
454
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
455 /**
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
456 * Compares two real numbers of type double with precision 1e-14.
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
457 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
458 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
459 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
460 *
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
461 * @param d1 pointer to double one
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
462 * @param d2 pointer to double two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
463 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
464 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
465 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
466 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
467 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
468 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
469 cx_attr_export
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
470 int cx_cmp_double(const void *d1, const void *d2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
471
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
472 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
473 * Compares two real numbers of type double with precision 1e-14.
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
474 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
475 * @param d1 double one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
476 * @param d2 double two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
477 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
478 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
479 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
480 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
481 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
482 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
483 int cx_vcmp_double(double d1, double d2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
484
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
485 /**
631
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
486 * Compares the integer representation of two pointers.
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
487 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
488 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
489 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
490 *
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
491 * @param ptr1 pointer to pointer one (const intptr_t*)
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
492 * @param ptr2 pointer to pointer two (const intptr_t*)
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
493 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
494 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
495 * @retval 1 if the left argument is greater than the right argument
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
496 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
497 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
498 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
499 cx_attr_export
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
500 int cx_cmp_intptr(const void *ptr1, const void *ptr2);
631
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
501
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
502 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
503 * Compares the integer representation of two pointers.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
504 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
505 * @param ptr1 pointer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
506 * @param ptr2 pointer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
507 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
508 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
509 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
510 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
511 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
512 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
513 int cx_vcmp_intptr(intptr_t ptr1, intptr_t ptr2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
514
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
515 /**
631
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
516 * Compares the unsigned integer representation of two pointers.
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
517 *
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
518 * @note the parameters deliberately have type @c void* to be
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
519 * compatible with #cx_compare_func without the need of a cast.
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
520 *
890
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
521 * @param ptr1 pointer to pointer one (const uintptr_t*)
54565fd74e74 move all const keywords to the west - fixes #426
Mike Becker <universe@uap-core.de>
parents: 786
diff changeset
522 * @param ptr2 pointer to pointer two (const uintptr_t*)
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
523 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
524 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
525 * @retval 1 if the left argument is greater than the right argument
631
406376e64fd8 tests for compare functions
Mike Becker <universe@uap-core.de>
parents: 605
diff changeset
526 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
527 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
528 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
529 cx_attr_export
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
530 int cx_cmp_uintptr(const void *ptr1, const void *ptr2);
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
531
762
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
532 /**
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
533 * Compares the unsigned integer representation of two pointers.
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
534 *
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
535 * @param ptr1 pointer one
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
536 * @param ptr2 pointer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
537 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
538 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
539 * @retval 1 if the left argument is greater than the right argument
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
540 */
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
541 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
542 cx_attr_export
1062
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
543 int cx_vcmp_uintptr(uintptr_t ptr1, uintptr_t ptr2);
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
544
8baed9b38bc6 add cx_vcmp_* family of functions
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
545 /**
1186
7fc882813125 improve consistency in compare.h documentation
Mike Becker <universe@uap-core.de>
parents: 1181
diff changeset
546 * Compares the pointers specified in the arguments without dereferencing.
762
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
547 *
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
548 * @param ptr1 pointer one
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
549 * @param ptr2 pointer two
1092
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
550 * @retval -1 if the left argument is less than the right argument
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
551 * @retval 0 if both arguments are equal
8a35119d1f01 refine docs for compare.h - issue #548
Mike Becker <universe@uap-core.de>
parents: 1062
diff changeset
552 * @retval 1 if the left argument is greater than the right argument
762
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
553 */
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
554 cx_attr_nonnull
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
555 cx_attr_nodiscard
1180
4c3a69b9723a add support for building windows DLLs - resolves #582
Mike Becker <universe@uap-core.de>
parents: 1092
diff changeset
556 cx_attr_export
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 890
diff changeset
557 int cx_cmp_ptr(const void *ptr1, const void *ptr2);
762
4523f6d42512 add cx_cmp_ptr() - fix #340
Mike Becker <universe@uap-core.de>
parents: 759
diff changeset
558
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
559 #ifdef __cplusplus
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
560 } // extern "C"
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
561 #endif
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
562
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents:
diff changeset
563 #endif //UCX_COMPARE_H

mercurial