summaryrefslogtreecommitdiffstats
path: root/buffered-reader/src/generic.rs
diff options
context:
space:
mode:
Diffstat (limited to 'buffered-reader/src/generic.rs')
-rw-r--r--buffered-reader/src/generic.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/buffered-reader/src/generic.rs b/buffered-reader/src/generic.rs
index 25c56272..d2e9acfa 100644
--- a/buffered-reader/src/generic.rs
+++ b/buffered-reader/src/generic.rs
@@ -13,7 +13,7 @@ use super::*;
///
/// [`File`]: struct.File.html
/// [`Memory`]: struct.Memory.html
-pub struct Generic<T: io::Read, C: fmt::Debug> {
+pub struct Generic<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> {
buffer: Option<Box<[u8]>>,
// The next byte to read in the buffer.
cursor: usize,
@@ -32,13 +32,13 @@ assert_send_and_sync!(Generic<T, C>
where T: io::Read,
C: fmt::Debug);
-impl<T: io::Read, C: fmt::Debug> fmt::Display for Generic<T, C> {
+impl<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> fmt::Display for Generic<T, C> {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "Generic")
}
}
-impl<T: io::Read, C: fmt::Debug> fmt::Debug for Generic<T, C> {
+impl<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> fmt::Debug for Generic<T, C> {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let buffered_data = if let Some(ref buffer) = self.buffer {
buffer.len() - self.cursor
@@ -53,7 +53,7 @@ impl<T: io::Read, C: fmt::Debug> fmt::Debug for Generic<T, C> {
}
}
-impl<T: io::Read> Generic<T, ()> {
+impl<T: io::Read + Send + Sync> Generic<T, ()> {
/// Instantiate a new generic reader. `reader` is the source to
/// wrap. `preferred_chuck_size` is the preferred chuck size. If
/// None, then the default will be used, which is usually what you
@@ -63,7 +63,7 @@ impl<T: io::Read> Generic<T, ()> {
}
}
-impl<T: io::Read, C: fmt::Debug> Generic<T, C> {
+impl<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> Generic<T, C> {
/// Like `new()`, but sets a cookie, which can be retrieved using
/// the `cookie_ref` and `cookie_mut` methods, and set using
/// the `cookie_set` method.
@@ -206,13 +206,13 @@ impl<T: io::Read, C: fmt::Debug> Generic<T, C> {
}
}
-impl<T: io::Read, C: fmt::Debug> io::Read for Generic<T, C> {
+impl<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> io::Read for Generic<T, C> {
fn read(&mut self, buf: &mut [u8]) -> Result<usize, io::Error> {
return buffered_reader_generic_read_impl(self, buf);
}
}
-impl<T: io::Read, C: fmt::Debug> BufferedReader<C> for Generic<T, C> {
+impl<T: io::Read + Send + Sync, C: fmt::Debug + Sync + Send> BufferedReader<C> for Generic<T, C> {
fn buffer(&self) -> &[u8] {
if let Some(ref buffer) = self.buffer {
&buffer[self.cursor..]