ByteString

Struct ByteString 

Source
pub struct ByteString {
    pub value: Option<Vec<u8>>,
}
Expand description

A sequence of octets.

Fields§

§value: Option<Vec<u8>>

Implementations§

Source§

impl ByteString

Source

pub fn null() -> ByteString

Create a null string (not the same as an empty string)

Source

pub fn is_null(&self) -> bool

Test if the string is null

Source

pub fn is_empty(&self) -> bool

Source

pub fn is_null_or_empty(&self) -> bool

Test if the string is null or empty

Source

pub fn from_base64(data: &str) -> Option<ByteString>

Creates a byte string from a Base64 encoded string

Source

pub fn as_base64(&self) -> String

Encodes the bytestring as a Base64 encoded string

Source

pub fn substring(&self, min: usize, max: usize) -> Result<ByteString, ()>

This function is meant for use with NumericRange. It creates a substring from this string from min up to and inclusive of max. Note that min must have an index within the string but max is allowed to be beyond the end in which case the remainder of the string is returned (see docs for NumericRange).

Trait Implementations§

Source§

impl AsRef<[u8]> for ByteString

Source§

fn as_ref(&self) -> &[u8]

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl BinaryEncoder<ByteString> for ByteString

Source§

fn byte_len(&self) -> usize

Returns the exact byte length of the structure as it would be if encode were called. This may be called prior to writing to ensure the correct amount of space is available.
Source§

fn encode<S>(&self, stream: &mut S) -> Result<usize, StatusCode>
where S: Write,

Encodes the instance to the write stream.
Source§

fn decode<S>( stream: &mut S, decoding_options: &DecodingOptions, ) -> Result<ByteString, StatusCode>
where S: Read,

Decodes an instance from the read stream. The decoding options contains restrictions set by the server / client on the length of strings, arrays etc. If these limits are exceeded the implementation should return with a BadDecodingError as soon as possible.
Source§

fn encode_to_vec(&self) -> Vec<u8>

Source§

impl Clone for ByteString

Source§

fn clone(&self) -> ByteString

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ByteString

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for ByteString

Source§

fn default() -> ByteString

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for ByteString

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<ByteString, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'a, T> From<&'a T> for ByteString
where T: AsRef<[u8]> + ?Sized,

Source§

fn from(value: &'a T) -> ByteString

Converts to this type from the input type.
Source§

impl From<ByteString> for DataValue

Source§

fn from(v: ByteString) -> DataValue

Converts to this type from the input type.
Source§

impl From<ByteString> for Identifier

Source§

fn from(v: ByteString) -> Identifier

Converts to this type from the input type.
Source§

impl From<ByteString> for Variant

Source§

fn from(v: ByteString) -> Variant

Converts to this type from the input type.
Source§

impl From<Guid> for ByteString

Source§

fn from(value: Guid) -> ByteString

Converts to this type from the input type.
Source§

impl From<Vec<u8>> for ByteString

Source§

fn from(value: Vec<u8>) -> ByteString

Converts to this type from the input type.
Source§

impl Hash for ByteString

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Into<ByteString> for Thumbprint

Source§

fn into(self) -> ByteString

Converts this type into the (usually inferred) input type.
Source§

impl Into<String> for ByteString

Source§

fn into(self) -> String

Converts this type into the (usually inferred) input type.
Source§

impl PartialEq for ByteString

Source§

fn eq(&self, other: &ByteString) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for ByteString

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl TryFrom<&ByteString> for Guid

Source§

type Error = ()

The type returned in the event of a conversion error.
Source§

fn try_from( value: &ByteString, ) -> Result<Guid, <Guid as TryFrom<&ByteString>>::Error>

Performs the conversion.
Source§

impl Eq for ByteString

Source§

impl StructuralPartialEq for ByteString

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,