[][src]Enum preserves::value::value::Value

pub enum Value<N, D> where
    N: NestedValue<D>,
    D: Domain
{ Boolean(bool), Float(Float), Double(Double), SignedInteger(SignedInteger), String(String), ByteString(Vec<u8>), Symbol(String), Record(Record<N>), Sequence(Vec<N>), Set(Set<N>), Dictionary(Map<N, N>), Domain(D), }

The Values from the specification.

Variants

Boolean(bool)
Float(Float)
Double(Double)
SignedInteger(SignedInteger)
String(String)
ByteString(Vec<u8>)
Symbol(String)
Record(Record<N>)
Sequence(Vec<N>)
Set(Set<N>)
Dictionary(Map<N, N>)
Domain(D)

Implementations

impl<N: NestedValue<D>, D: Domain> Value<N, D>[src]

pub fn wrap(self) -> N[src]

pub fn is_boolean(&self) -> bool[src]

pub fn as_boolean(&self) -> Option<bool>[src]

pub fn as_boolean_mut(&mut self) -> Option<&mut bool>[src]

pub fn to_boolean(&self) -> Result<bool, Error>[src]

pub fn is_float(&self) -> bool[src]

pub fn as_float(&self) -> Option<f32>[src]

pub fn as_float_mut(&mut self) -> Option<&mut f32>[src]

pub fn to_float(&self) -> Result<f32, Error>[src]

pub fn is_double(&self) -> bool[src]

pub fn as_double(&self) -> Option<f64>[src]

pub fn as_double_mut(&mut self) -> Option<&mut f64>[src]

pub fn to_double(&self) -> Result<f64, Error>[src]

pub fn is_signedinteger(&self) -> bool[src]

pub fn as_signedinteger(&self) -> Option<&SignedInteger>[src]

pub fn as_signedinteger_mut(&mut self) -> Option<&mut SignedInteger>[src]

pub fn to_signedinteger(&self) -> Result<&SignedInteger, Error>[src]

pub fn is_i(&self) -> bool[src]

pub fn as_i(&self) -> Option<i128>[src]

pub fn to_i(&self) -> Result<i128, Error>[src]

pub fn is_u(&self) -> bool[src]

pub fn as_u(&self) -> Option<u128>[src]

pub fn to_u(&self) -> Result<u128, Error>[src]

pub fn as_u8(&self) -> Option<u8>[src]

pub fn as_i8(&self) -> Option<i8>[src]

pub fn as_u16(&self) -> Option<u16>[src]

pub fn as_i16(&self) -> Option<i16>[src]

pub fn as_u32(&self) -> Option<u32>[src]

pub fn as_i32(&self) -> Option<i32>[src]

pub fn as_u64(&self) -> Option<u64>[src]

pub fn as_i64(&self) -> Option<i64>[src]

pub fn as_u128(&self) -> Option<u128>[src]

pub fn as_i128(&self) -> Option<i128>[src]

pub fn to_i8(&self) -> Result<i8, Error>[src]

pub fn to_u8(&self) -> Result<u8, Error>[src]

pub fn to_i16(&self) -> Result<i16, Error>[src]

pub fn to_u16(&self) -> Result<u16, Error>[src]

pub fn to_i32(&self) -> Result<i32, Error>[src]

pub fn to_u32(&self) -> Result<u32, Error>[src]

pub fn to_i64(&self) -> Result<i64, Error>[src]

pub fn to_u64(&self) -> Result<u64, Error>[src]

pub fn to_i128(&self) -> Result<i128, Error>[src]

pub fn to_u128(&self) -> Result<u128, Error>[src]

pub fn to_char(&self) -> Result<char, Error>[src]

pub fn is_string(&self) -> bool[src]

pub fn as_string(&self) -> Option<&String>[src]

pub fn as_string_mut(&mut self) -> Option<&mut String>[src]

pub fn to_string(&self) -> Result<&String, Error>[src]

pub fn is_bytestring(&self) -> bool[src]

pub fn as_bytestring(&self) -> Option<&Vec<u8>>[src]

pub fn as_bytestring_mut(&mut self) -> Option<&mut Vec<u8>>[src]

pub fn to_bytestring(&self) -> Result<&Vec<u8>, Error>[src]

pub fn symbol(s: &str) -> Value<N, D>[src]

pub fn is_symbol(&self) -> bool[src]

pub fn as_symbol(&self) -> Option<&String>[src]

pub fn as_symbol_mut(&mut self) -> Option<&mut String>[src]

pub fn to_symbol(&self) -> Result<&String, Error>[src]

pub fn record(label: N, expected_arity: usize) -> Record<N>[src]

pub fn is_record(&self) -> bool[src]

pub fn as_record(&self, arity: Option<usize>) -> Option<&Record<N>>[src]

pub fn as_record_mut(&mut self, arity: Option<usize>) -> Option<&mut Record<N>>[src]

pub fn to_record(&self, arity: Option<usize>) -> Result<&Record<N>, Error>[src]

pub fn simple_record(label: &str, expected_arity: usize) -> Record<N>[src]

pub fn simple_record0(label: &str) -> Value<N, D>[src]

pub fn simple_record1(label: &str, field: N) -> Value<N, D>[src]

pub fn is_simple_record(&self, label: &str, arity: Option<usize>) -> bool[src]

pub fn as_simple_record(
    &self,
    label: &str,
    arity: Option<usize>
) -> Option<&[N]>
[src]

pub fn to_simple_record(
    &self,
    label: &str,
    arity: Option<usize>
) -> Result<&[N], Error>
[src]

pub fn to_option(&self) -> Result<Option<&N>, Error>[src]

pub fn is_sequence(&self) -> bool[src]

pub fn as_sequence(&self) -> Option<&Vec<N>>[src]

pub fn as_sequence_mut(&mut self) -> Option<&mut Vec<N>>[src]

pub fn to_sequence(&self) -> Result<&Vec<N>, Error>[src]

pub fn is_set(&self) -> bool[src]

pub fn as_set(&self) -> Option<&Set<N>>[src]

pub fn as_set_mut(&mut self) -> Option<&mut Set<N>>[src]

pub fn to_set(&self) -> Result<&Set<N>, Error>[src]

pub fn is_dictionary(&self) -> bool[src]

pub fn as_dictionary(&self) -> Option<&Map<N, N>>[src]

pub fn as_dictionary_mut(&mut self) -> Option<&mut Map<N, N>>[src]

pub fn to_dictionary(&self) -> Result<&Map<N, N>, Error>[src]

pub fn copy_via<M: NestedValue<E>, E: Domain, F>(&self, f: &F) -> Value<M, E> where
    F: Fn(&D) -> Value<M, E>, 
[src]

Trait Implementations

impl<N: Clone, D: Clone> Clone for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<N: NestedValue<D>, D: Domain> Debug for Value<N, D>[src]

impl<N: Eq, D: Eq> Eq for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<'_, N: NestedValue<D>, D: Domain> From<&'_ [u8]> for Value<N, D>[src]

impl<'_, N: NestedValue<D>, D: Domain> From<&'_ BigInt> for Value<N, D>[src]

impl<'_, N: NestedValue<D>, D: Domain> From<&'_ str> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<BTreeMap<N, N>> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<BTreeSet<N>> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<String> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<Vec<N>> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<bool> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<f32> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<f64> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<i128> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<i16> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<i32> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<i64> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<i8> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<u128> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<u16> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<u32> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<u64> for Value<N, D>[src]

impl<N: NestedValue<D>, D: Domain> From<u8> for Value<N, D>[src]

impl<N: Hash, D: Hash> Hash for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<'_, N: NestedValue<D>, D: Domain> Index<&'_ N> for Value<N, D>[src]

type Output = N

The returned type after indexing.

impl<N: NestedValue<D>, D: Domain> Index<usize> for Value<N, D>[src]

type Output = N

The returned type after indexing.

impl<N: NestedValue<D>, D: Domain> IndexMut<usize> for Value<N, D>[src]

impl<N: Ord, D: Ord> Ord for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<N: PartialEq, D: PartialEq> PartialEq<Value<N, D>> for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<N: PartialOrd, D: PartialOrd> PartialOrd<Value<N, D>> for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<N, D> StructuralEq for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

impl<N, D> StructuralPartialEq for Value<N, D> where
    N: NestedValue<D>,
    D: Domain
[src]

Auto Trait Implementations

impl<N, D> RefUnwindSafe for Value<N, D> where
    D: RefUnwindSafe,
    N: RefUnwindSafe

impl<N, D> Send for Value<N, D> where
    D: Send,
    N: Send

impl<N, D> Sync for Value<N, D> where
    D: Sync,
    N: Sync

impl<N, D> Unpin for Value<N, D> where
    D: Unpin,
    N: Unpin

impl<N, D> UnwindSafe for Value<N, D> where
    D: UnwindSafe,
    N: RefUnwindSafe + UnwindSafe

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> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

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

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

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.