(buf: &[u8])
| 243 | } |
| 244 | |
| 245 | fn parse_integer(buf: &[u8]) -> io::Result<Option<(i64, usize)>> { |
| 246 | match find_crlf(buf) { |
| 247 | Some(pos) => { |
| 248 | let s = std::str::from_utf8(&buf[..pos]) |
| 249 | .map_err(|e| io::Error::new(io::ErrorKind::InvalidData, e))?; |
| 250 | let n: i64 = s |
| 251 | .parse() |
| 252 | .map_err(|e| io::Error::new(io::ErrorKind::InvalidData, e))?; |
| 253 | Ok(Some((n, pos + 2))) |
| 254 | } |
| 255 | None => Ok(None), |
| 256 | } |
| 257 | } |
| 258 | |
| 259 | fn parse_bulk_string(buf: &[u8]) -> io::Result<Option<(RespValue, usize)>> { |
| 260 | let crlf_pos = match find_crlf(buf) { |
no test coverage detected