Struct aws_smithy_eventstream::str_bytes::StrBytes
source · #[non_exhaustive]pub struct StrBytes { /* private fields */ }
Expand description
UTF-8 string byte buffer representation with validation amortization.
When StrBytes
is constructed from a &str
or String
, its underlying bytes are assumed
to be valid UTF-8. Otherwise, if constructed from a byte source, the construction will
be fallible.
Example construction from a &str
:
use aws_smithy_eventstream::str_bytes::StrBytes;
let value: StrBytes = "example".into();
assert_eq!("example", value.as_str());
assert_eq!(b"example", &value.as_bytes()[..]);
Example construction from Bytes
:
use bytes::Bytes;
use aws_smithy_eventstream::str_bytes::StrBytes;
use std::convert::TryInto;
let bytes = Bytes::from_static(b"example");
let value: StrBytes = bytes.try_into().expect("valid utf-8");
assert_eq!("example", value.as_str());
assert_eq!(b"example", &value.as_bytes()[..]);
Implementations§
Trait Implementations§
source§impl<'a> Arbitrary<'a> for StrBytes
impl<'a> Arbitrary<'a> for StrBytes
source§fn arbitrary(unstruct: &mut Unstructured<'a>) -> Result<Self>
fn arbitrary(unstruct: &mut Unstructured<'a>) -> Result<Self>
Generate an arbitrary value of
Self
from the given unstructured data. Read moresource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more