double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = fabs(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, fabs(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = acos(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, acos(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = asin(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, asin(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = atan(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, atan(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
njs_object_math_atan2(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
njs_index_t unused)
{
- double y, x;
-
- y = NAN;
- x = NAN;
-
- if (nargs > 1) {
- y = args[1].data.u.number;
- }
+ double num, y, x;
if (nargs > 2) {
+ y = args[1].data.u.number;
x = args[2].data.u.number;
+
+ num = atan2(y, x);
+
+ } else {
+ num = NAN;
}
- njs_number_set(&vm->retval, atan2(y, x));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = ceil(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, ceil(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = cos(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, cos(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = exp(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, exp(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = floor(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, floor(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = log(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, log(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
njs_object_math_pow(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
njs_index_t unused)
{
- double base, exponent;
-
- base = NAN;
- exponent = NAN;
-
- if (nargs > 1) {
- base = args[1].data.u.number;
- }
+ double num, base, exponent;
if (nargs > 2) {
+ base = args[1].data.u.number;
exponent = args[2].data.u.number;
+
+ num = pow(base, exponent);
+
+ } else {
+ num = NAN;
}
- njs_number_set(&vm->retval, pow(base, exponent));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = round(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, round(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = sin(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, sin(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = sqrt(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, sqrt(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = tan(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, tan(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}
double num;
if (nargs > 1) {
- num = args[1].data.u.number;
+ num = trunc(args[1].data.u.number);
} else {
num = NAN;
}
- njs_number_set(&vm->retval, trunc(num));
+ njs_number_set(&vm->retval, num);
return NXT_OK;
}