fix warnings

This commit is contained in:
Jorge Aparicio 2018-03-01 19:40:39 +01:00
parent 757dc3b2a0
commit 0dd522268c
3 changed files with 22 additions and 17 deletions

View File

@ -77,6 +77,7 @@
//! ```
#![deny(missing_docs)]
#![deny(warnings)]
#![feature(const_fn)]
#![feature(const_unsafe_cell_new)]
#![feature(core_intrinsics)]

View File

@ -1,5 +1,5 @@
use core::marker::{PhantomData, Unsize};
use core::ptr::{self, Shared};
use core::ptr::{self, NonNull};
use BufferFullError;
use ring_buffer::RingBuffer;
@ -12,11 +12,11 @@ where
pub fn split(&mut self) -> (Producer<T, A>, Consumer<T, A>) {
(
Producer {
rb: unsafe { Shared::new_unchecked(self) },
rb: unsafe { NonNull::new_unchecked(self) },
_marker: PhantomData,
},
Consumer {
rb: unsafe { Shared::new_unchecked(self) },
rb: unsafe { NonNull::new_unchecked(self) },
_marker: PhantomData,
},
)
@ -29,8 +29,8 @@ pub struct Consumer<'a, T, A>
where
A: Unsize<[T]>,
{
// XXX do we need to use `Shared` (for soundness) here?
rb: Shared<RingBuffer<T, A>>,
// XXX do we need to use `NonNull` (for soundness) here?
rb: NonNull<RingBuffer<T, A>>,
_marker: PhantomData<&'a ()>,
}
@ -70,8 +70,8 @@ pub struct Producer<'a, T, A>
where
A: Unsize<[T]>,
{
// XXX do we need to use `Shared` (for soundness) here?
rb: Shared<RingBuffer<T, A>>,
// XXX do we need to use `NonNull` (for soundness) here?
rb: NonNull<RingBuffer<T, A>>,
_marker: PhantomData<&'a ()>,
}

View File

@ -217,9 +217,8 @@ where
let new_len = start + s.len();
if new_len <= buffer.len() {
self.vec.len = new_len;
buffer[start..self.vec.len].copy_from_slice(
&s.as_bytes()[0..self.vec.len.saturating_sub(start)],
);
buffer[start..self.vec.len]
.copy_from_slice(&s.as_bytes()[0..self.vec.len.saturating_sub(start)]);
Ok(())
} else {
Err(BufferFullError)
@ -521,16 +520,18 @@ mod tests {
use {String, Vec};
#[test]
fn debug() {
extern crate std;
use core::fmt::Write;
let mut s: String<[u8; 8]> = String::from("abcd");
let s: String<[u8; 8]> = String::from("abcd");
let mut std_s = std::string::String::new();
write!(std_s, "{:?}", s);
write!(std_s, "{:?}", s).unwrap();
assert_eq!("\"abcd\"", std_s);
}
#[test]
fn empty() {
let s: String<[u8; 4]> = String::new();
assert!(s.capacity() == 4);
@ -587,12 +588,15 @@ mod tests {
#[test]
fn from_utf8_unchecked() {
let mut v: Vec<u8, [u8; 8]> = Vec::new();
v.push(0).unwrap();
v.push(159).unwrap();
v.push(146).unwrap();
v.push(150).unwrap();
v.push(104).unwrap();
v.push(101).unwrap();
v.push(108).unwrap();
v.push(108).unwrap();
v.push(111).unwrap();
let s = unsafe { String::from_utf8_unchecked(v) };
assert_eq!(s, "hello");
}
#[test]