mirror of
https://github.com/google/comprehensive-rust.git
synced 2024-12-15 22:37:28 +02:00
Remove unnecessary syntax in protobuf example (#1592)
`Ok(x?)` has the same outcome as `x` and save an unpacking/repacking cycle. `x as usize` has no effect when `x` already has type `usize`. In `x < 4usize` the `usize` is unnecessary when `x` already has type `usize`.
This commit is contained in:
parent
c7a86ca584
commit
302a03bbe3
@ -81,7 +81,7 @@ impl<'a> FieldValue<'a> {
|
||||
let FieldValue::Len(data) = self else {
|
||||
return Err(Error::UnexpectedWireType);
|
||||
};
|
||||
Ok(std::str::from_utf8(data).map_err(|_| Error::InvalidString)?)
|
||||
std::str::from_utf8(data).map_err(|_| Error::InvalidString)
|
||||
}
|
||||
|
||||
fn as_bytes(&self) -> Result<&'a [u8], Error> {
|
||||
@ -142,14 +142,14 @@ fn parse_field(data: &[u8]) -> Result<(Field, &[u8]), Error> {
|
||||
WireType::Len => {
|
||||
let (len, remainder) = parse_varint(remainder)?;
|
||||
let len: usize = len.try_into()?;
|
||||
if remainder.len() < len as usize {
|
||||
if remainder.len() < len {
|
||||
return Err(Error::UnexpectedEOF);
|
||||
}
|
||||
let (value, remainder) = remainder.split_at(len);
|
||||
(FieldValue::Len(value), remainder)
|
||||
}
|
||||
WireType::I32 => {
|
||||
if remainder.len() < 4usize {
|
||||
if remainder.len() < 4 {
|
||||
return Err(Error::UnexpectedEOF);
|
||||
}
|
||||
let (value, remainder) = remainder.split_at(4);
|
||||
|
Loading…
Reference in New Issue
Block a user