18 "description":
"A signed 64-bit integer.",
19 "keywords": [
"number",
"signed" ],
37 json_type t = json_object_get_type(js);
38 if (t == json_type_int)
39 return json_object_get_int64(js);
40 else if (t == json_type_double)
42 double d = json_object_get_double(js);
55 const char *s = json_object_get_string(js);
57 return strtold(s, NULL);
69 if (value == LLONG_MIN)
70 return json_object_new_double(-INFINITY);
71 else if (value == LLONG_MAX)
72 return json_object_new_double(INFINITY);
74 return json_object_new_int64(value);
84 char *summary = strdup(json_object_to_json_string_ext(js,JSON_C_TO_STRING_PLAIN));
103 for (
unsigned long i = 0; i < count; ++i)
104 if (integers[i] < min)
107 *outputPosition = i + 1;
127 for (
unsigned long i = 0; i < count; ++i)
128 if (integers[i] > max)
131 *outputPosition = i + 1;
159 VuoInteger rectifiedMin = (minimum < maximum) ? minimum : maximum;
160 VuoInteger rectifiedMax = (minimum < maximum) ? maximum : minimum;
162 if (value > rectifiedMax)
163 return rectifiedMin + ((value-rectifiedMax-1) % (rectifiedMax-rectifiedMin+1));
164 else if (value < rectifiedMin)
165 return rectifiedMax + ((value-rectifiedMin+1) % (rectifiedMax-rectifiedMin+1));
201#if (ULONG_MAX > 0xffffffffUL)
202 min = 0x100000000UL % upper_bound;
205 if (upper_bound > 0x80000000)
206 min = 1 + ~upper_bound;
209 min = ((0xffffffff - (upper_bound * 2)) + 1) % upper_bound;
225 return r % upper_bound;
237 if (minimum == maximum)
251 state[0] = seed & 0xffff;
252 state[1] = (seed >> 16) & 0xffff;
253 state[2] = (seed >> 32) & 0xffff;
269 if (maximum < INT_MIN || maximum > INT_MAX || llabs(maximum - minimum) > INT_MAX)
272 if (minimum == maximum)
279 VuoInteger topPlusOne = actualMaximum - actualMinimum + 1;
281 VuoInteger maxUsable = (two31 / topPlusOne) * topPlusOne;
286 if (num >= 0 && num < maxUsable)
287 return num % topPlusOne + actualMinimum;
296 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
297 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
299 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 0,
300 0, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0, 0, 0, 0, 0, 0, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0, 0, 0, 0, 0, 0, 0, 0, 0,
303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
304 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
329 return value1 == value2;
343 min = max = integers[0];
344 for (
unsigned long i = 1; i < count; ++i)
346 min =
MIN(min, integers[i]);
347 max =
MAX(max, integers[i]);
349 return (max - min) <= tolerance;
365 return minimum <= value && value <= maximum;