diff --git a/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index 92d765433..0ffd4fc02 100644 --- a/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -2039,10 +2039,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2075,10 +2075,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2111,10 +2111,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = 0 } - if (b < '0' || b > '9') numberError() var x = '0' - b if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2149,12 +2149,12 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isPos = false } - if (b < '0' || b > '9') numberError() var x1 = '0' - b if (isToken && x1 == 0) { ensureNotLeadingZero() 0L } else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while (x1 > -214748364 && (pos < tail || { @@ -2213,7 +2213,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2235,6 +2234,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2361,7 +2361,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2383,6 +2382,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2519,11 +2519,11 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() if (isToken && b == '0') { ensureNotLeadingZero() BigInt(0) } else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2562,7 +2562,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2582,6 +2581,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() digits -= pos while ((pos < tail || { digits += pos diff --git a/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index 163653f8b..e6e137fbd 100644 --- a/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -2001,10 +2001,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2037,10 +2037,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2073,10 +2073,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = 0 } - if (b < '0' || b > '9') numberError() var x = '0' - b if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2111,10 +2111,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = 0L } - if (b < '0' || b > '9') numberError() var x = ('0' - b).toLong if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var dec = 0L @@ -2178,7 +2178,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2200,6 +2199,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2330,7 +2330,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2352,6 +2351,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2483,11 +2483,11 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() if (isToken && b == '0') { ensureNotLeadingZero() BigInt(0) } else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2542,7 +2542,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2562,6 +2561,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() digits -= pos var m, bs = 0L while ((pos + 7 < tail || { diff --git a/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index 056cc6a38..754def49d 100644 --- a/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -2001,10 +2001,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2037,10 +2037,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var x = b - '0' if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2073,10 +2073,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = 0 } - if (b < '0' || b > '9') numberError() var x = '0' - b if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf while ((pos < tail || { @@ -2111,10 +2111,10 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = 0L } - if (b < '0' || b > '9') numberError() var x = ('0' - b).toLong if (isToken && x == 0) ensureNotLeadingZero() else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var dec = 0L @@ -2178,7 +2178,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2200,6 +2199,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2330,7 +2330,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) isNeg = true } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf val from = pos - 1 @@ -2352,6 +2351,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() while ((pos < tail || { pos = loadMore(pos) buf = this.buf @@ -2480,11 +2480,11 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() if (isToken && b == '0') { ensureNotLeadingZero() BigInt(0) } else { + if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2539,7 +2539,6 @@ final class JsonReader private[jsoniter_scala]( b = nextByte(head) s = -1 } - if (b < '0' || b > '9') numberError() var pos = head var buf = this.buf var from = pos - 1 @@ -2559,6 +2558,7 @@ final class JsonReader private[jsoniter_scala]( b >= '0' && b <= '9' }) leadingZeroError(pos - 1) } else { + if (b < '0' || b > '9') numberError() digits -= pos var m, bs = 0L while ((pos + 7 < tail || {