diff options
| author | ljedrz <ljedrz@gmail.com> | 2018-11-30 16:38:30 +0100 |
|---|---|---|
| committer | ljedrz <ljedrz@gmail.com> | 2018-12-02 08:18:46 +0100 |
| commit | 95f32f1ebddae26ac6610040ea93ea3de440089a (patch) | |
| tree | 55aabab5b05b5f9bce5aee9ecc439b345c1c1dad | |
| parent | ca0806c70320093a37dbe52ba2442d1e047c9c8d (diff) | |
| download | rust-95f32f1ebddae26ac6610040ea93ea3de440089a.tar.gz rust-95f32f1ebddae26ac6610040ea93ea3de440089a.zip | |
arena: improve common patterns
| -rw-r--r-- | src/libarena/lib.rs | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/libarena/lib.rs b/src/libarena/lib.rs index ed83eddc479..e926a886d63 100644 --- a/src/libarena/lib.rs +++ b/src/libarena/lib.rs @@ -310,13 +310,8 @@ impl Default for DroplessArena { impl DroplessArena { pub fn in_arena<T: ?Sized>(&self, ptr: *const T) -> bool { let ptr = ptr as *const u8 as *mut u8; - for chunk in &*self.chunks.borrow() { - if chunk.start() <= ptr && ptr < chunk.end() { - return true; - } - } - false + self.chunks.borrow().iter().any(|chunk| chunk.start() <= ptr && ptr < chunk.end()) } fn align(&self, align: usize) { @@ -408,7 +403,7 @@ impl DroplessArena { { assert!(!mem::needs_drop::<T>()); assert!(mem::size_of::<T>() != 0); - assert!(slice.len() != 0); + assert!(!slice.is_empty()); let mem = self.alloc_raw( slice.len() * mem::size_of::<T>(), |
