summaryrefslogtreecommitdiffstats
path: root/tokio-util/src/codec
diff options
context:
space:
mode:
authorCarl Lerche <me@carllerche.com>2019-11-20 14:27:49 -0800
committerGitHub <noreply@github.com>2019-11-20 14:27:49 -0800
commit5cd665afd7b70b184b559e6407fdf645983e1314 (patch)
tree2197d4502d01218ca6df8c076f55d83027a18230 /tokio-util/src/codec
parent3e643c7b81736a4c2b11387a6f71aba99450270b (diff)
chore: update `bytes` dependency to git master (#1796)
Tokio will track changes to bytes until 0.5 is released.
Diffstat (limited to 'tokio-util/src/codec')
-rw-r--r--tokio-util/src/codec/framed.rs3
-rw-r--r--tokio-util/src/codec/framed_write.rs3
-rw-r--r--tokio-util/src/codec/length_delimited.rs8
-rw-r--r--tokio-util/src/codec/lines_codec.rs6
4 files changed, 11 insertions, 9 deletions
diff --git a/tokio-util/src/codec/framed.rs b/tokio-util/src/codec/framed.rs
index 62403d56..0c5ef9f6 100644
--- a/tokio-util/src/codec/framed.rs
+++ b/tokio-util/src/codec/framed.rs
@@ -11,6 +11,7 @@ use futures_sink::Sink;
use pin_project_lite::pin_project;
use std::fmt;
use std::io::{self, BufRead, Read, Write};
+use std::mem::MaybeUninit;
use std::pin::Pin;
use std::task::{Context, Poll};
@@ -261,7 +262,7 @@ impl<T: BufRead, U> BufRead for Fuse<T, U> {
}
impl<T: AsyncRead, U> AsyncRead for Fuse<T, U> {
- unsafe fn prepare_uninitialized_buffer(&self, buf: &mut [u8]) -> bool {
+ unsafe fn prepare_uninitialized_buffer(&self, buf: &mut [MaybeUninit<u8>]) -> bool {
self.io.prepare_uninitialized_buffer(buf)
}
diff --git a/tokio-util/src/codec/framed_write.rs b/tokio-util/src/codec/framed_write.rs
index 4296e993..9aed7ea3 100644
--- a/tokio-util/src/codec/framed_write.rs
+++ b/tokio-util/src/codec/framed_write.rs
@@ -11,6 +11,7 @@ use log::trace;
use pin_project_lite::pin_project;
use std::fmt;
use std::io::{self, BufRead, Read};
+use std::mem::MaybeUninit;
use std::pin::Pin;
use std::task::{Context, Poll};
@@ -284,7 +285,7 @@ impl<T: BufRead> BufRead for FramedWrite2<T> {
}
impl<T: AsyncRead> AsyncRead for FramedWrite2<T> {
- unsafe fn prepare_uninitialized_buffer(&self, buf: &mut [u8]) -> bool {
+ unsafe fn prepare_uninitialized_buffer(&self, buf: &mut [MaybeUninit<u8>]) -> bool {
self.inner.prepare_uninitialized_buffer(buf)
}
diff --git a/tokio-util/src/codec/length_delimited.rs b/tokio-util/src/codec/length_delimited.rs
index b36b6aa7..01ba2aec 100644
--- a/tokio-util/src/codec/length_delimited.rs
+++ b/tokio-util/src/codec/length_delimited.rs
@@ -345,7 +345,7 @@ use crate::codec::{Decoder, Encoder, Framed, FramedRead, FramedWrite};
use tokio::io::{AsyncRead, AsyncWrite};
-use bytes::{Buf, BufMut, Bytes, BytesMut, IntoBuf};
+use bytes::{Buf, BufMut, Bytes, BytesMut};
use std::error::Error as StdError;
use std::io::{self, Cursor};
use std::{cmp, fmt};
@@ -457,7 +457,7 @@ impl LengthDelimitedCodec {
// match endianess
let n = if self.builder.length_field_is_big_endian {
- src.get_uint_be(field_len)
+ src.get_uint(field_len)
} else {
src.get_uint_le(field_len)
};
@@ -551,7 +551,7 @@ impl Encoder for LengthDelimitedCodec {
type Error = io::Error;
fn encode(&mut self, data: Bytes, dst: &mut BytesMut) -> Result<(), io::Error> {
- let n = (&data).into_buf().remaining();
+ let n = (&data).remaining();
if n > self.builder.max_frame_len {
return Err(io::Error::new(
@@ -579,7 +579,7 @@ impl Encoder for LengthDelimitedCodec {
dst.reserve(self.builder.length_field_len + n);
if self.builder.length_field_is_big_endian {
- dst.put_uint_be(n as u64, self.builder.length_field_len);
+ dst.put_uint(n as u64, self.builder.length_field_len);
} else {
dst.put_uint_le(n as u64, self.builder.length_field_len);
}
diff --git a/tokio-util/src/codec/lines_codec.rs b/tokio-util/src/codec/lines_codec.rs
index bca69723..8029956f 100644
--- a/tokio-util/src/codec/lines_codec.rs
+++ b/tokio-util/src/codec/lines_codec.rs
@@ -1,7 +1,7 @@
use crate::codec::decoder::Decoder;
use crate::codec::encoder::Encoder;
-use bytes::{BufMut, BytesMut};
+use bytes::{Buf, BufMut, BytesMut};
use std::{cmp, fmt, io, str, usize};
/// A simple `Codec` implementation that splits up data into lines.
@@ -168,7 +168,7 @@ impl Decoder for LinesCodec {
if buf.is_empty() || buf == &b"\r"[..] {
None
} else {
- let line = buf.take();
+ let line = buf.split_to(buf.len());
let line = without_carriage_return(&line);
let line = utf8(line)?;
self.next_index = 0;
@@ -185,7 +185,7 @@ impl Encoder for LinesCodec {
fn encode(&mut self, line: String, buf: &mut BytesMut) -> Result<(), LinesCodecError> {
buf.reserve(line.len() + 1);
- buf.put(line);
+ buf.put(line.as_bytes());
buf.put_u8(b'\n');
Ok(())
}