[][src]Struct glib::value::Value

#[repr(C)]
pub struct Value(_, _);

A generic value capable of carrying various types.

Once created the type of the value can't be changed.

Some types (e.g. String and objects) support None values while others (e.g. numeric types) don't.

Value does not implement the Send trait, but SendValue can be used instead.

See the module documentation for more details.

Methods

impl Value[src]

pub fn from_type(type_: Type) -> Self[src]

Creates a new Value that is initialized with type_

pub fn downcast<'a, T: FromValueOptional<'a> + SetValue>(
    self
) -> Result<TypedValue<T>, Self>
[src]

Tries to downcast to a TypedValue.

Returns Ok(TypedValue<T>) if the value carries a type corresponding to T and Err(self) otherwise.

pub fn downcast_ref<'a, T: FromValueOptional<'a> + SetValue>(
    &self
) -> Option<&TypedValue<T>>
[src]

Tries to downcast to a &TypedValue.

Returns Some(&TypedValue<T>) if the value carries a type corresponding to T and None otherwise.

pub fn get<'a, T: FromValueOptional<'a>>(&'a self) -> Option<T>[src]

Tries to get a value of type T.

Returns Some if the type is correct and the value is not None.

This function doesn't distinguish between type mismatches and correctly typed None values. Use downcast or is for that.

pub fn is<'a, T: FromValueOptional<'a> + SetValue>(&self) -> bool[src]

Returns true if the type of the value corresponds to T or is a sub-type of T.

pub fn type_(&self) -> Type[src]

Returns the type of the value.

pub fn type_transformable(src: Type, dst: Type) -> bool[src]

Returns whether Values of type src can be transformed to type dst.

pub fn try_into_send_value<'a, T: Send + FromValueOptional<'a> + SetValue>(
    self
) -> Result<SendValue, Self>
[src]

Trait Implementations

impl Uninitialized for Value[src]

impl FromGlibPtrNone<*const GValue> for Value[src]

impl FromGlibPtrNone<*mut GValue> for Value[src]

impl FromGlibPtrFull<*mut GValue> for Value[src]

impl FromGlibContainerAsVec<*mut GValue, *mut *mut GValue> for Value[src]

impl FromGlibContainerAsVec<*mut GValue, *const *mut GValue> for Value[src]

impl FromGlibPtrArrayContainerAsVec<*mut GValue, *mut *mut GValue> for Value[src]

impl FromGlibPtrArrayContainerAsVec<*mut GValue, *const *mut GValue> for Value[src]

impl ToValue for Value[src]

impl Drop for Value[src]

impl<'a, T: ?Sized + SetValueOptional> From<Option<&'a T>> for Value[src]

impl<'a, T: ?Sized + SetValue> From<&'a T> for Value[src]

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

impl From<SendValue> for Value[src]

impl Clone for Value[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Value[src]

Auto Trait Implementations

impl !Send for Value

impl !Sync for Value

Blanket Implementations

impl<T> ToValue for T where
    T: SetValue + ?Sized
[src]

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

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

type Owned = T

The resulting type after obtaining ownership.

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

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<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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