12 static int f_if_i(
int argc,
const int *argt
UNUSED,
void **args)
15 DCELL *arg1 = args[1];
16 CELL *arg2 = (argc >= 2) ? args[2] :
NULL;
17 CELL *arg3 = (argc >= 3) ? args[3] :
NULL;
18 CELL *arg4 = (argc >= 4) ? args[4] :
NULL;
29 res[i] = arg1[i] != 0.0 ? 1 : 0;
35 else if (arg1[i] == 0.0)
48 else if (arg1[i] == 0.0) {
65 else if (arg1[i] == 0.0) {
71 else if (arg1[i] > 0.0) {
92 static int f_if_f(
int argc,
const int *argt
UNUSED,
void **args)
95 DCELL *arg1 = args[1];
96 FCELL *arg2 = (argc >= 2) ? args[2] :
NULL;
97 FCELL *arg3 = (argc >= 3) ? args[3] :
NULL;
98 FCELL *arg4 = (argc >= 4) ? args[4] :
NULL;
110 else if (arg1[i] == 0.0)
123 else if (arg1[i] == 0.0) {
140 else if (arg1[i] == 0.0) {
146 else if (arg1[i] > 0.0) {
167 static int f_if_d(
int argc,
const int *argt
UNUSED,
void **args)
169 DCELL *res = args[0];
170 DCELL *arg1 = args[1];
171 DCELL *arg2 = (argc >= 2) ? args[2] :
NULL;
172 DCELL *arg3 = (argc >= 3) ? args[3] :
NULL;
173 DCELL *arg4 = (argc >= 4) ? args[4] :
NULL;
185 else if (arg1[i] == 0.0)
198 else if (arg1[i] == 0.0) {
215 else if (arg1[i] == 0.0) {
221 else if (arg1[i] > 0.0) {
242 int f_if(
int argc,
const int *argt,
void **args)
251 if (argc >= 2 && argt[2] != argt[0])
253 if (argc >= 3 && argt[3] != argt[0])
255 if (argc >= 4 && argt[4] != argt[0])
260 return f_if_i(argc, argt, args);
262 return f_if_f(argc, argt, args);
264 return f_if_d(argc, argt, args);
#define UNUSED
A macro for an attribute, if attached to a variable, indicating that the variable is not used.
int c_if(int argc, int *argt)
int f_if(int argc, const int *argt, void **args)