diff options
| author | Ben Kimock <kimockb@gmail.com> | 2024-05-21 20:12:07 -0400 |
|---|---|---|
| committer | Ben Kimock <kimockb@gmail.com> | 2024-05-21 20:12:30 -0400 |
| commit | c3a606237d9c01e4622b267031596bf632567e6f (patch) | |
| tree | fdcf8485698540fe24cc40d645b96c21561797a5 /compiler/rustc_serialize | |
| parent | 95150d72465db491f4b04b73545e106462bd003b (diff) | |
| download | rust-c3a606237d9c01e4622b267031596bf632567e6f.tar.gz rust-c3a606237d9c01e4622b267031596bf632567e6f.zip | |
PR feedback
Diffstat (limited to 'compiler/rustc_serialize')
| -rw-r--r-- | compiler/rustc_serialize/src/opaque.rs | 10 | ||||
| -rw-r--r-- | compiler/rustc_serialize/tests/leb128.rs | 5 |
2 files changed, 8 insertions, 7 deletions
diff --git a/compiler/rustc_serialize/src/opaque.rs b/compiler/rustc_serialize/src/opaque.rs index 1b4b1d2436f..1dcb69920d7 100644 --- a/compiler/rustc_serialize/src/opaque.rs +++ b/compiler/rustc_serialize/src/opaque.rs @@ -17,7 +17,7 @@ use crate::int_overflow::DebugStrictAdd; pub type FileEncodeResult = Result<usize, (PathBuf, io::Error)>; -const FOOTER: &[u8] = b"rust-end-file"; +pub const MAGIC_END_BYTES: &[u8] = b"rust-end-file"; /// The size of the buffer in `FileEncoder`. const BUF_SIZE: usize = 8192; @@ -183,7 +183,7 @@ impl FileEncoder { } pub fn finish(&mut self) -> FileEncodeResult { - self.write_all(FOOTER); + self.write_all(MAGIC_END_BYTES); self.flush(); #[cfg(debug_assertions)] { @@ -264,10 +264,10 @@ pub struct MemDecoder<'a> { impl<'a> MemDecoder<'a> { #[inline] - pub fn new(data: &'a [u8], position: usize) -> Option<MemDecoder<'a>> { - let data = data.strip_suffix(FOOTER)?; + pub fn new(data: &'a [u8], position: usize) -> Result<MemDecoder<'a>, ()> { + let data = data.strip_suffix(MAGIC_END_BYTES).ok_or(())?; let Range { start, end } = data.as_ptr_range(); - Some(MemDecoder { start, current: data[position..].as_ptr(), end, _marker: PhantomData }) + Ok(MemDecoder { start, current: data[position..].as_ptr(), end, _marker: PhantomData }) } #[inline] diff --git a/compiler/rustc_serialize/tests/leb128.rs b/compiler/rustc_serialize/tests/leb128.rs index 2bf4f38d3c3..fafe4b91a95 100644 --- a/compiler/rustc_serialize/tests/leb128.rs +++ b/compiler/rustc_serialize/tests/leb128.rs @@ -1,5 +1,6 @@ use rustc_serialize::leb128::*; use rustc_serialize::opaque::MemDecoder; +use rustc_serialize::opaque::MAGIC_END_BYTES; use rustc_serialize::Decoder; macro_rules! impl_test_unsigned_leb128 { @@ -27,7 +28,7 @@ macro_rules! impl_test_unsigned_leb128 { stream.extend(&buf[..n]); } let stream_end = stream.len(); - stream.extend(b"rust-end-file"); + stream.extend(MAGIC_END_BYTES); let mut decoder = MemDecoder::new(&stream, 0).unwrap(); for &expected in &values { @@ -76,7 +77,7 @@ macro_rules! impl_test_signed_leb128 { stream.extend(&buf[..n]); } let stream_end = stream.len(); - stream.extend(b"rust-end-file"); + stream.extend(MAGIC_END_BYTES); let mut decoder = MemDecoder::new(&stream, 0).unwrap(); for &expected in &values { |
