(&mut self)
| 227 | } |
| 228 | |
| 229 | fn parse_array(&mut self) -> Result<JsonValue, JsonError> { |
| 230 | self.expect('[')?; |
| 231 | let mut values = Vec::new(); |
| 232 | loop { |
| 233 | self.skip_whitespace(); |
| 234 | if self.try_consume(']') { |
| 235 | break; |
| 236 | } |
| 237 | values.push(self.parse_value()?); |
| 238 | self.skip_whitespace(); |
| 239 | if self.try_consume(']') { |
| 240 | break; |
| 241 | } |
| 242 | self.expect(',')?; |
| 243 | } |
| 244 | Ok(JsonValue::Array(values)) |
| 245 | } |
| 246 | |
| 247 | fn parse_object(&mut self) -> Result<JsonValue, JsonError> { |
| 248 | self.expect('{')?; |
no test coverage detected