Trait bytes_utils::string::Storage[][src]

pub unsafe trait Storage: AsRef<[u8]> + Default + Sized {
    type Creator: Default + StorageMut;
    fn from_creator(creator: Self::Creator) -> Self;
fn split_at(self, at: usize) -> (Self, Self); }

The backing storage for StrInner

This is currently a technical detail of the crate, users are not expected to implement this trait. Use Str or StrMut type aliases.

Safety

The storage must act "sane". But what exactly it means is not yet analyzed and may change in future versions. Don't implement the trait (at least not yet).

Associated Types

type Creator: Default + StorageMut[src]

A type that can be used to build the storage incrementally.

For mutable storages, it may be itself. For immutable one, there needs to be a mutable counterpart that can be converted to immutable later on.

Loading content...

Required methods

fn from_creator(creator: Self::Creator) -> Self[src]

Converts the creator (mutable storage) to self.

In case of mutable storages, this should be identity.

fn split_at(self, at: usize) -> (Self, Self)[src]

Splits the storage at the given byte index and creates two non-overlapping instances.

Loading content...

Implementations on Foreign Types

impl Storage for Bytes[src]

type Creator = BytesMut

impl Storage for BytesMut[src]

type Creator = BytesMut

Loading content...

Implementors

Loading content...