Skip to content

Commit edc695e

Browse files
akosthekisszherczeg
authored andcommitted
Remove const array and scalar variables from ecma_utf8_string_to_number
There is no need for putting `LIT_CHAR_*` constants in const scalars or arrays, they can be used directly. (There is especially no need for arrays of 10 elements if only 2 of them are used.) JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
1 parent 30fd549 commit edc695e

File tree

1 file changed

+28
-37
lines changed

1 file changed

+28
-37
lines changed

jerry-core/ecma/base/ecma-helpers-conversion.c

Lines changed: 28 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -341,15 +341,6 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
341341
{
342342
/* TODO: Check license issues */
343343

344-
const lit_utf8_byte_t dec_digits_range[10] = { '0', '9' };
345-
const lit_utf8_byte_t hex_lower_digits_range[10] = { 'a', 'f' };
346-
const lit_utf8_byte_t hex_upper_digits_range[10] = { 'A', 'F' };
347-
const lit_utf8_byte_t hex_x_chars[2] = { 'x', 'X' };
348-
const lit_utf8_byte_t e_chars[2] = { 'e', 'E' };
349-
const lit_utf8_byte_t plus_char = '+';
350-
const lit_utf8_byte_t minus_char = '-';
351-
const lit_utf8_byte_t dot_char = '.';
352-
353344
if (str_size == 0)
354345
{
355346
return ECMA_NUMBER_ZERO;
@@ -396,9 +387,9 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
396387
}
397388

398389
if ((end_p >= begin_p + 2)
399-
&& begin_p[0] == dec_digits_range[0]
400-
&& (begin_p[1] == hex_x_chars[0]
401-
|| begin_p[1] == hex_x_chars[1]))
390+
&& begin_p[0] == LIT_CHAR_0
391+
&& (begin_p[1] == LIT_CHAR_LOWERCASE_X
392+
|| begin_p[1] == LIT_CHAR_UPPERCASE_X))
402393
{
403394
/* Hex literal handling */
404395
begin_p += 2;
@@ -411,20 +402,20 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
411402
{
412403
int32_t digit_value;
413404

414-
if (*iter_p >= dec_digits_range[0]
415-
&& *iter_p <= dec_digits_range[1])
405+
if (*iter_p >= LIT_CHAR_0
406+
&& *iter_p <= LIT_CHAR_9)
416407
{
417-
digit_value = (*iter_p - dec_digits_range[0]);
408+
digit_value = (*iter_p - LIT_CHAR_0);
418409
}
419-
else if (*iter_p >= hex_lower_digits_range[0]
420-
&& *iter_p <= hex_lower_digits_range[1])
410+
else if (*iter_p >= LIT_CHAR_LOWERCASE_A
411+
&& *iter_p <= LIT_CHAR_LOWERCASE_F)
421412
{
422-
digit_value = 10 + (*iter_p - hex_lower_digits_range[0]);
413+
digit_value = 10 + (*iter_p - LIT_CHAR_LOWERCASE_A);
423414
}
424-
else if (*iter_p >= hex_upper_digits_range[0]
425-
&& *iter_p <= hex_upper_digits_range[1])
415+
else if (*iter_p >= LIT_CHAR_UPPERCASE_A
416+
&& *iter_p <= LIT_CHAR_UPPERCASE_F)
426417
{
427-
digit_value = 10 + (*iter_p - hex_upper_digits_range[0]);
418+
digit_value = 10 + (*iter_p - LIT_CHAR_UPPERCASE_A);
428419
}
429420
else
430421
{
@@ -439,11 +430,11 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
439430

440431
bool sign = false; /* positive */
441432

442-
if (*begin_p == plus_char)
433+
if (*begin_p == LIT_CHAR_PLUS)
443434
{
444435
begin_p++;
445436
}
446-
else if (*begin_p == minus_char)
437+
else if (*begin_p == LIT_CHAR_MINUS)
447438
{
448439
sign = true; /* negative */
449440

@@ -482,10 +473,10 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
482473
{
483474
int32_t digit_value;
484475

485-
if (*begin_p >= dec_digits_range[0]
486-
&& *begin_p <= dec_digits_range[1])
476+
if (*begin_p >= LIT_CHAR_0
477+
&& *begin_p <= LIT_CHAR_9)
487478
{
488-
digit_value = (*begin_p - dec_digits_range[0]);
479+
digit_value = (*begin_p - LIT_CHAR_0);
489480
}
490481
else
491482
{
@@ -511,7 +502,7 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
511502
}
512503

513504
if (begin_p <= end_p
514-
&& *begin_p == dot_char)
505+
&& *begin_p == LIT_CHAR_DOT)
515506
{
516507
begin_p++;
517508

@@ -520,10 +511,10 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
520511
{
521512
int32_t digit_value;
522513

523-
if (*begin_p >= dec_digits_range[0]
524-
&& *begin_p <= dec_digits_range[1])
514+
if (*begin_p >= LIT_CHAR_0
515+
&& *begin_p <= LIT_CHAR_9)
525516
{
526-
digit_value = (*begin_p - dec_digits_range[0]);
517+
digit_value = (*begin_p - LIT_CHAR_0);
527518
}
528519
else
529520
{
@@ -550,16 +541,16 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
550541
bool e_in_lit_sign = false;
551542

552543
if (begin_p <= end_p
553-
&& (*begin_p == e_chars[0]
554-
|| *begin_p == e_chars[1]))
544+
&& (*begin_p == LIT_CHAR_LOWERCASE_E
545+
|| *begin_p == LIT_CHAR_UPPERCASE_E))
555546
{
556547
begin_p++;
557548

558-
if (*begin_p == plus_char)
549+
if (*begin_p == LIT_CHAR_PLUS)
559550
{
560551
begin_p++;
561552
}
562-
else if (*begin_p == minus_char)
553+
else if (*begin_p == LIT_CHAR_MINUS)
563554
{
564555
e_in_lit_sign = true;
565556
begin_p++;
@@ -574,10 +565,10 @@ ecma_utf8_string_to_number (const lit_utf8_byte_t *str_p, /**< utf-8 string */
574565
{
575566
int32_t digit_value;
576567

577-
if (*begin_p >= dec_digits_range[0]
578-
&& *begin_p <= dec_digits_range[1])
568+
if (*begin_p >= LIT_CHAR_0
569+
&& *begin_p <= LIT_CHAR_9)
579570
{
580-
digit_value = (*begin_p - dec_digits_range[0]);
571+
digit_value = (*begin_p - LIT_CHAR_0);
581572
}
582573
else
583574
{

0 commit comments

Comments
 (0)