Enum zenoh::Value[][src]

pub enum Value {
    Raw(ZIntRBuf),
    Custom {
        encoding_descr: String,
        data: RBuf,
    },
    StringUtf8(String),
    Properties(Properties),
    Json(String),
    Integer(i64),
    Float(f64),
}

A user value that is associated with a Path in zenoh.

Variants

Raw(ZIntRBuf)

A value as a bytes buffer (RBuf) and an encoding flag.
See zenoh::net::enocding for available flags.

Custom

A value as a bytes buffer and an encoding description (free String).
Note: this is equivalent to Raw(APP_CUSTOM, buf) where buf contains the encoding description and the data.

Fields of Custom

encoding_descr: Stringdata: RBuf
StringUtf8(String)

A String value.
Note: this is equivalent to Raw(STRING, buf) where buf contains the String

Properties(Properties)

A Properties value.
Note: this is equivalent to Raw(APP_PROPERTIES, buf) where buf contains the Properties encoded as a String

Json(String)

A Json value (string format).
Note: this is equivalent to Raw(APP_JSON, buf) where buf contains the Json string

Integer(i64)

An Integer value.
Note: this is equivalent to Raw(APP_INTEGER, buf) where buf contains the integer encoded as a String

Float(f64)

An Float value.
Note: this is equivalent to Raw(APP_FLOAT, buf) where buf contains the float encoded as a String

Implementations

impl Value[src]

pub fn encoding(&self) -> ZInt[src]

Returns the encoding flag of the Value.

pub fn encoding_descr(&self) -> String[src]

Returns the encoding description of the Value.

pub fn encode(self) -> (ZInt, RBuf)[src]

Encodes the Value and return the resulting buffer and its encoding flag.

pub fn decode(encoding: ZInt, payload: RBuf) -> ZResult<Value>[src]

Decodes the payload according to the encoding flag.

pub fn encode_to_string(self) -> (ZInt, bool, String)[src]

Encodes the Value as an UTF-8 String, possibly converting it to base64 its content is not UTF-8 compatible. Returns a tuple containing the encoding flag, a boolean indicating if the content has been encoded to base64 and the resulting UTF-8 String.

Note: for Custom Value, the resulting String will have the format: encoding_descr + ':' + data_as_a_string (Therefore, the encoding_descr must not contain the ‘:’ character)

pub fn decode_from_string(
    encoding: ZInt,
    base64: bool,
    s: String
) -> ZResult<Value>
[src]

Decodes the payload from a string according to the encoding flag, converting the string from base64 if the boolean is true (for UTF-8 compatible Values).

pub fn from_sample(
    sample: &Sample,
    decode_value: bool
) -> ZResult<Option<Value>>
[src]

Convert the payload from a Sample into a Value. If the Sample’s kind is DELETE, Ok(None) is returned. Otherwise, if decode_value is true the payload is decoded as a typed Value. If decode_value is false, the payload is converted into a Value::Raw.

Trait Implementations

impl Clone for Value[src]

impl Debug for Value[src]

impl From<&'_ [u8]> for Value[src]

impl From<&'_ Value> for Value[src]

impl From<&'_ str> for Value[src]

impl From<Properties> for Value[src]

impl From<RBuf> for Value[src]

impl From<String> for Value[src]

impl From<Value> for Value[src]

impl From<Vec<u8, Global>> for Value[src]

impl From<f64> for Value[src]

impl From<i64> for Value[src]

Auto Trait Implementations

impl !RefUnwindSafe for Value

impl Send for Value

impl Sync for Value

impl Unpin for Value

impl !UnwindSafe for Value

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,