Lines Matching refs:number

123 *  This Function Translate from number 0-9 to number '0'-'9'
124 * number 10-35 to number 'a'-'z'
126 uint32_t NumberHelper::ToCharCode(uint32_t number)
128 ASSERT(number < 36); // 36 == total number of '0'-'9' + 'a' -'z'
129 return number < 10 ? (number + 48): // 48 == '0'; 10: '0' - '9';
130 (number - 10 + 97); // 97 == 'a'; 'a' - 'z'
133 JSTaggedValue NumberHelper::Int32ToString(JSThread *thread, int32_t number, uint32_t radix)
135 bool isNegative = number < 0;
138 n = static_cast<uint32_t>(number);
147 n = static_cast<uint32_t>(-number);
174 JSTaggedValue NumberHelper::DoubleToString(JSThread *thread, double number, int radix)
182 bool negative = number < 0.0;
184 number = -number;
187 double integer = std::floor(number);
188 double fraction = number - integer;
190 auto value = bit_cast<uint64_t>(number);
192 double delta = HALF * (bit_cast<double>(value) - number);
402 int number = 0;
407 number = CustomFcvtHelper(tmpbuf1, JS_DTOA_BUF_SIZE, valueNumber, digits + 1, roundingMode);
408 if (tmpbuf1[number - 1] == HALFCHAR) {
409 number = CustomFcvtHelper(tmpbuf1, JS_DTOA_BUF_SIZE, valueNumber, digits + 1, FE_DOWNWARD);
422 JSTaggedValue NumberHelper::DoubleToPrecisionString(JSThread *thread, double number, int digit)
424 if (number == 0.0) {
425 return DoubleToFixedString(thread, number, digit - 1);
427 double positiveNumber = number > 0 ? number : -number;
432 return DoubleToFixedString(thread, number, std::abs(radixDigit));
434 return DoubleToExponential(thread, number, digit);
437 JSTaggedValue NumberHelper::DoubleToExponential(JSThread *thread, double number, int digit)
442 if (number == 0.0) {
446 if (number < 0) {
448 number = -number;
452 DtoaHelper::Dtoa(number, tmpbuf, &n, &k);
462 int result = snprintf_s(tmpbuf, sizeof(tmpbuf), sizeof(tmpbuf) - 1, "%.*e", digit - 1, number);
505 int number = decimalPoint;
511 if (number > 0 && number <= numberMax) {
512 ToASCIIWithGreatThanZero(tmpbuf, digitNumber, number, buf1);
513 } else if (MIN_DIGITS < number && number <= 0) {
516 for (i = 0; i < -number; i++) {
521 ToASCIIWithNegative(tmpbuf, digitNumber, number, buf1);
527 void NumberHelper::ToASCIIWithGreatThanZero(std::string& tmpbuf, int digitNumber, int number, const std::string& buf)
529 if (digitNumber <= number) {
531 tmpbuf += std::string(number - digitNumber, '0');
534 tmpbuf += buf.substr(0, number);
536 tmpbuf += buf.substr(number, digitNumber - number);
668 CString NumberHelper::IntegerToString(double number, int radix)
672 while (number / radix > MAX_MANTISSA) {
673 number /= radix;
677 double remainder = std::fmod(number, radix);
679 number = (number - remainder) / radix;
680 } while (number > 0);
684 CString NumberHelper::IntToString(int number)
686 return ToCString(number);
689 JSHandle<EcmaString> NumberHelper::IntToEcmaString(const JSThread *thread, int number)
692 return factory->NewFromASCII(ToCString(number));
776 JSHandle<EcmaString> NumberHelper::NumberToString(const JSThread *thread, JSTaggedValue number)
778 ASSERT(number.IsNumber());
781 int entry = cacheTable->GetNumberHash(number);
782 JSTaggedValue cacheResult = cacheTable->FindCachedResult(entry, number);
788 if (number.IsInt()) {
789 int intVal = number.GetInt();
796 resultJSHandle = DoubleToEcmaString(thread, number.GetDouble());
799 cacheTable->SetCachedResult(thread, entry, number, resultJSHandle);
866 // valid number's codes not longer than '9', except 'I' and non-breaking space.
896 // 2. get number sign
923 // 4. get number radix
972 // 6. parse to number
994 auto number = static_cast<double>(intNumber);
996 if (number == 0) {
997 number = -0.0;
999 number = -number;
1009 return number * std::pow(radix, exponent);
1016 (number * std::pow(radix, exponent)) : NAN_VALUE);
1038 // 10. parse exponent number
1081 uint64_t number = 0;
1096 if (number < numberMax) {
1097 number = number * radix + digit;
1109 result = number / powVal;
1111 result = number * powVal;
1290 value = std::strtoll(str.c_str(), &end, 0); // Automatic check of the number system
1292 // If no number is converted