[][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
) -> Result<Option<T>, GetError>
[src]

Tries to get a possibly optional value of type T.

Returns Ok if the type is correct.

pub fn get_some<'a, T: FromValue<'a>>(&'a self) -> Result<T, GetError>[src]

Tries to get a value of type T.

This method is only available for types that don't support a None value.

Returns Ok if the type is correct.

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 transform<T: StaticType + SetValue>(&self) -> Option<Value>[src]

Tries to transform the value into a value of the target type

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

Trait Implementations

impl Clone for Value[src]

impl Debug for Value[src]

impl Drop for Value[src]

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

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

impl From<SendValue> for Value[src]

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

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

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

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

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

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

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

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

impl ToValue for Value[src]

impl Uninitialized 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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToValue for T where
    T: SetValue + ?Sized
[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.