Wheefun I/O Library
0.0.5
Useful I/O Primitives.
include
wfio
wfio.h
Go to the documentation of this file.
1
/* WFIO - the Wheefun IO Library
2
Copyright (C) 2018 Phillip Kilgore
3
4
This program is free software: you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation, either version 3 of the License, or
7
(at your option) any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU General Public License for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program. If not, see <https://www.gnu.org/licenses/>.
16
17
Additionally, you should have recieved a copy of the GNU Classpath
18
exception, which amends the license to generally permit linking against
19
the software provided herein.
20
*/
21
40
#ifndef WFIO_WFIO_H
41
#define WFIO_WFIO_H
42
48
#define WFIO_VERSION_MAJOR 0
49
55
#define WFIO_VERSION_MINOR 0
56
62
#define WFIO_VERSION_PATCH 5
63
64
/* Exact Comparison */
65
75
#define WFIO_VERSION_EQ(MAJOR, MINOR)\
76
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR == MINOR))
77
88
#define WFIO_VERSION_EQ3(MAJOR, MINOR, PATCH)\
89
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR == MINOR) &\
90
(WFIO_VERSION_PATCH == PATCH))
91
92
102
#define WFIO_VERSION_NE(MAJOR, MINOR)\
103
((WFIO_VERSION_MAJOR != MAJOR) | (WFIO_VERSION_MINOR != MINOR))
104
115
#define WFIO_VERSION_NE3(MAJOR, MINOR, PATCH)\
116
((WFIO_VERSION_MAJOR != MAJOR) | (WFIO_VERSION_MINOR != MINOR) |\
117
(WFIO_VERSION_PATCH != PATCH))
118
119
/* Ranged Functions */
120
130
#define WFIO_VERSION_AT_LEAST(MAJOR, MINOR) (\
131
((WFIO_VERSION_MAJOR > MAJOR)) | \
132
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR >= MINOR)))
133
144
#define WFIO_VERSION_AT_LEAST3(MAJOR, MINOR, PATCH) (\
145
((WFIO_VERSION_MAJOR > MAJOR)) | \
146
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR > MINOR)) | \
147
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR == MINOR) &\
148
(WFIO_VERSION_PATCH >= PATCH)))
149
159
#define WFIO_VERSION_NO_GREATER(MAJOR, MINOR) (\
160
((WFIO_VERSION_MAJOR < MAJOR)) | \
161
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR <= MINOR)))
162
174
#define WFIO_VERSION_NO_GREATER3(MAJOR, MINOR, PATCH) (\
175
((WFIO_VERSION_MAJOR < MAJOR)) | \
176
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR < MINOR)) | \
177
((WFIO_VERSION_MAJOR == MAJOR) & (WFIO_VERSION_MINOR == MINOR) &\
178
(WFIO_VERSION_PATCH <= PATCH)))
179
192
#define WFIO_VERSION_IN_RANGE(MINMAJ, MINMIN, MAXMAJ, MAXMIN) (\
193
WFIO_VERSION_AT_LEAST(MINMAJ, MINMIN) &\
194
WFIO_VERSION_NO_GREATER(MAXMAJ, MAXMIN))
195
210
#define WFIO_VERSION_IN_RANGE3(MINMAJ, MINMIN, MINPATCH,\
211
MAXMAJ, MAXMIN, MAXPATCH) (\
212
WFIO_VERSION_AT_LEAST3(MINMAJ, MINMIN, MINPATCH) &\
213
WFIO_VERSION_NO_GREATER3(MAXMAJ, MAXMIN, MAXPATH))
214
215
#ifdef __cplusplus
216
219
namespace
wfio
{}
220
#endif
221
222
#endif
wfio
The root namespace for WFIO.
Definition:
bin.h:879
Generated by
1.8.13