From f87ffa6016fc35ba7bfbaa287e4de6933c2edab6 Mon Sep 17 00:00:00 2001 From: Bernardo Date: Sat, 1 Dec 2018 16:00:45 +0100 Subject: [PATCH] impl `From` for `Cow<'static, [u8]>` for `Binary` --- src/body.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/body.rs b/src/body.rs index a93db1e92..2cfe3f93a 100644 --- a/src/body.rs +++ b/src/body.rs @@ -1,5 +1,6 @@ use bytes::{Bytes, BytesMut}; use futures::Stream; +use std::borrow::Cow; use std::sync::Arc; use std::{fmt, mem}; @@ -194,6 +195,15 @@ impl From> for Binary { } } +impl From> for Binary { + fn from(b: Cow<'static, [u8]>) -> Binary { + match b { + Cow::Borrowed(s) => Binary::Slice(s), + Cow::Owned(vec) => Binary::Bytes(Bytes::from(vec)), + } + } +} + impl From for Binary { fn from(s: String) -> Binary { Binary::Bytes(Bytes::from(s))