Create ByteBuf with MutByteBuf::with_capacity

This commit is contained in:
Carl Lerche
2016-08-23 14:22:39 -07:00
parent be23af6bb7
commit 38abb8074b
5 changed files with 15 additions and 15 deletions
+6 -6
View File
@@ -22,16 +22,11 @@ pub struct ByteBuf {
impl ByteBuf {
/// Create a new `ByteBuf` by copying the contents of the given slice.
pub fn from_slice(bytes: &[u8]) -> ByteBuf {
let mut buf = ByteBuf::mut_with_capacity(bytes.len());
let mut buf = MutByteBuf::with_capacity(bytes.len());
buf.write_slice(bytes);
buf.flip()
}
pub fn mut_with_capacity(capacity: usize) -> MutByteBuf {
assert!(capacity <= MAX_CAPACITY);
MutByteBuf { buf: ByteBuf::new(capacity as u32) }
}
pub unsafe fn from_mem_ref(mem: alloc::MemRef, cap: u32, pos: u32, lim: u32) -> ByteBuf {
debug_assert!(pos <= lim && lim <= cap, "invalid arguments; cap={}; pos={}; lim={}", cap, pos, lim);
@@ -180,6 +175,11 @@ pub struct MutByteBuf {
}
impl MutByteBuf {
pub fn with_capacity(capacity: usize) -> MutByteBuf {
assert!(capacity <= MAX_CAPACITY);
MutByteBuf { buf: ByteBuf::new(capacity as u32) }
}
pub fn capacity(&self) -> usize {
self.buf.capacity() as usize
}
+2 -2
View File
@@ -1,4 +1,4 @@
use {Bytes, ByteBuf};
use {Bytes, MutByteBuf};
use buf::{Buf, MutBuf, Source};
use bytes::seq::Seq;
use bytes::small::{Small};
@@ -351,7 +351,7 @@ impl ops::Index<usize> for Node {
fn concat_bytes<S1, S2>(left: S1, right: S2, len: usize) -> Bytes
where S1: Source, S2: Source,
{
let mut buf = ByteBuf::mut_with_capacity(len);
let mut buf = MutByteBuf::with_capacity(len);
buf.copy_from(left);
buf.copy_from(right);
+2 -2
View File
@@ -1,6 +1,6 @@
//! Immutable set of bytes sequential in memory.
use {alloc, ByteBuf, MutBuf};
use {alloc, MutByteBuf, MutBuf};
use bytes::{Bytes};
use std::ops;
use std::io::Cursor;
@@ -13,7 +13,7 @@ pub struct Seq {
impl Seq {
pub fn from_slice(bytes: &[u8]) -> Bytes {
let mut buf = ByteBuf::mut_with_capacity(bytes.len());
let mut buf = MutByteBuf::with_capacity(bytes.len());
buf.copy_from(bytes);
buf.flip().into()