details: http://hg.nginx.org/njs/rev/bd9f53d9de27 branches: changeset: 626:bd9f53d9de27 user: Dmitry Volyntsev <xei...@nginx.com> date: Fri Oct 19 20:55:30 2018 +0300 description: Added njs_primitive_value_to_number().
diffstat: njs/njs_number.c | 18 ++++++++++++++++++ njs/njs_number.h | 2 ++ 2 files changed, 20 insertions(+), 0 deletions(-) diffs (40 lines): diff -r 7e76c67af046 -r bd9f53d9de27 njs/njs_number.c --- a/njs/njs_number.c Fri Oct 19 20:55:23 2018 +0300 +++ b/njs/njs_number.c Fri Oct 19 20:55:30 2018 +0300 @@ -64,6 +64,24 @@ njs_value_to_index(const njs_value_t *va double +njs_primitive_value_to_number(const njs_value_t *value) +{ + if (nxt_fast_path(njs_is_numeric(value))) { + return value->data.u.number; + } + + return njs_string_to_number(value, 1); +} + + +uint32_t +njs_primitive_value_to_integer(const njs_value_t *value) +{ + return njs_number_to_integer(njs_primitive_value_to_number(value)); +} + + +double njs_number_dec_parse(const u_char **start, const u_char *end) { return nxt_strtod(start, end); diff -r 7e76c67af046 -r bd9f53d9de27 njs/njs_number.h --- a/njs/njs_number.h Fri Oct 19 20:55:23 2018 +0300 +++ b/njs/njs_number.h Fri Oct 19 20:55:30 2018 +0300 @@ -13,6 +13,8 @@ uint32_t njs_value_to_index(const njs_value_t *value); +double njs_primitive_value_to_number(const njs_value_t *value); +uint32_t njs_primitive_value_to_integer(const njs_value_t *value); double njs_number_dec_parse(const u_char **start, const u_char *end); uint64_t njs_number_oct_parse(const u_char **start, const u_char *end); uint64_t njs_number_bin_parse(const u_char **start, const u_char *end); _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel