]> git.lizzy.rs Git - rust.git/commitdiff
Allow Buffer methods to inline
authorBen Kimock <kimockb@gmail.com>
Wed, 20 Jul 2022 22:21:15 +0000 (18:21 -0400)
committerBen Kimock <kimockb@gmail.com>
Sun, 24 Jul 2022 16:50:05 +0000 (12:50 -0400)
library/std/src/io/buffered/bufreader/buffer.rs

index 92fe47745d932aa88cd0fbc73855798f01d9b1c9..1989d85dfb5dbec23b3ad90c3b9065a451220ade 100644 (file)
@@ -10,11 +10,13 @@ pub struct Buffer {
 }
 
 impl Buffer {
+    #[inline]
     pub fn with_capacity(capacity: usize) -> Self {
         let buf = Box::new_uninit_slice(capacity);
         Self { buf, pos: 0, cap: 0, init: 0 }
     }
 
+    #[inline]
     pub fn buffer(&self) -> &[u8] {
         // SAFETY: self.cap is always <= self.init, so self.buf[self.pos..self.cap] is always init
         // Additionally, both self.pos and self.cap are valid and and self.cap => self.pos, and
@@ -22,31 +24,38 @@ pub fn buffer(&self) -> &[u8] {
         unsafe { MaybeUninit::slice_assume_init_ref(&self.buf.get_unchecked(self.pos..self.cap)) }
     }
 
+    #[inline]
     pub fn capacity(&self) -> usize {
         self.buf.len()
     }
 
+    #[inline]
     pub fn cap(&self) -> usize {
         self.cap
     }
 
+    #[inline]
     pub fn pos(&self) -> usize {
         self.pos
     }
 
+    #[inline]
     pub fn discard_buffer(&mut self) {
         self.pos = 0;
         self.cap = 0;
     }
 
+    #[inline]
     pub fn consume(&mut self, amt: usize) {
         self.pos = cmp::min(self.pos + amt, self.cap);
     }
 
+    #[inline]
     pub fn unconsume(&mut self, amt: usize) {
         self.pos = self.pos.saturating_sub(amt);
     }
 
+    #[inline]
     pub fn fill_buf(&mut self, mut reader: impl Read) -> io::Result<&[u8]> {
         // If we've reached the end of our internal buffer then we need to fetch
         // some more data from the underlying reader.