(num []byte, prec int)
| 1433 | } |
| 1434 | |
| 1435 | func hexadecimalNumber(num []byte, prec int) []byte { |
| 1436 | b, suffix := removeUnderscoresAndSuffix(num) |
| 1437 | if len(b) <= 2 || 12 < len(b) || len(b) == 12 && ('D' < b[2] && b[2] <= 'F' || 'd' < b[2]) { |
| 1438 | if suffix { |
| 1439 | return append(b, 'n') |
| 1440 | } |
| 1441 | return b |
| 1442 | } |
| 1443 | var n int64 |
| 1444 | for _, c := range b[2:] { |
| 1445 | n *= 16 |
| 1446 | if c <= '9' { |
| 1447 | n += int64(c - '0') |
| 1448 | } else if c <= 'F' { |
| 1449 | n += 10 + int64(c-'A') |
| 1450 | } else { |
| 1451 | n += 10 + int64(c-'a') |
| 1452 | } |
| 1453 | } |
| 1454 | i := strconv.LenInt(n) - 1 |
| 1455 | b = b[:i+1] |
| 1456 | for 0 <= i { |
| 1457 | b[i] = byte('0' + n%10) |
| 1458 | n /= 10 |
| 1459 | i-- |
| 1460 | } |
| 1461 | if suffix { |
| 1462 | return append(b, 'n') |
| 1463 | } |
| 1464 | return minify.Number(b, prec) |
| 1465 | } |
searching dependent graphs…