(&mut self)
| 139 | } |
| 140 | |
| 141 | fn read_hex4(&mut self) -> Result<u32, JsonError> { |
| 142 | if self.pos + 4 > self.src.len() { return Err(self.err("truncated \\u escape")); } |
| 143 | let mut acc: u32 = 0; |
| 144 | for _ in 0..4 { |
| 145 | let d = (self.src[self.pos] as char).to_digit(16).ok_or_else(|| self.err("invalid hex digit"))?; |
| 146 | acc = acc * 16 + d; |
| 147 | self.pos += 1; |
| 148 | } |
| 149 | Ok(acc) |
| 150 | } |
| 151 | |
| 152 | fn read_number(&mut self) -> Result<Token, JsonError> { |
| 153 | let start = self.pos; |
no test coverage detected