gstreamer::gobject

Struct GObjectBuilder

Source
pub struct GObjectBuilder<'a, O> { /* private fields */ }
Expand description

Builder for GObjects.

Implementations§

Source§

impl<'a, O: IsA<Object> + IsClass> GObjectBuilder<'a, O>

Source

pub fn type_(self, type_: Type) -> Self

Sets the concrete Type.

This should be used on an GObjectBuilder created with [GObjectBuilder::for_deferred_type].

Source

pub fn property(self, name: &'a str, value: impl Into<Value> + 'a) -> Self

Sets property name to the given value value.

Overrides any default or previously defined value for name.

Source

pub fn property_from_str(self, name: &'a str, value: &'a str) -> Self

Sets property name to the given string value value.

Source

pub fn property_if( self, name: &'a str, value: impl Into<Value> + 'a, predicate: bool, ) -> Self

Sets property name to the given inner value if the predicate evaluates to true.

This has no effect if the predicate evaluates to false, i.e. default or previous value for name is kept.

Source

pub fn property_if_some( self, name: &'a str, value: Option<impl Into<Value> + 'a>, ) -> Self

Sets property name to the given inner value if value is Some.

This has no effect if the value is None, i.e. default or previous value for name is kept.

Source

pub fn property_from_iter<V: ValueType + Into<Value> + FromIterator<SendValue>>( self, name: &'a str, iter: impl IntoIterator<Item = impl ToSendValue>, ) -> Self

Sets property name using the given ValueType V built from iter’s the Items.

Overrides any default or previously defined value for name.

Source

pub fn property_if_not_empty<V: ValueType + Into<Value> + FromIterator<SendValue>>( self, name: &'a str, iter: impl IntoIterator<Item = impl ToSendValue>, ) -> Self

Sets property name using the given ValueType V built from iter’s Items, if iter` is not empty.

This has no effect if iter is empty, i.e. previous value for name is unchanged.

Source

pub fn property_from_str_if( self, name: &'a str, value: &'a str, predicate: bool, ) -> Self

Sets property name to the given string value value if the predicate evaluates to true.

This has no effect if the predicate evaluates to false, i.e. default or previous value for name is kept.

Source

pub fn property_from_str_if_some( self, name: &'a str, value: Option<&'a str>, ) -> Self

Sets property name to the given string value value if it is Some.

This has no effect if the value is None, i.e. default or previous value for name is kept.

Source

pub fn name(self, name: impl Into<GString>) -> Self

Sets the name property to the given name.

Source

pub fn name_if(self, name: impl Into<GString>, predicate: bool) -> Self

Sets the name property to the given name if the predicate evaluates to true.

This has no effect if the predicate evaluates to false, i.e. default or previous name is kept.

Source

pub fn name_if_some(self, name: Option<impl Into<GString>>) -> Self

Sets the name property to the given name if it is Some.

This has no effect if the value is None, i.e. default or previous name is kept.

Source

pub fn build(self) -> Result<O, GObjectError>

Builds the Object with the provided properties.

This fails if there is no such element factory or the element factory can’t be loaded.

§Panics

This panics if:

  • The Object is not instantiable, doesn’t have all the given properties or property values of the wrong type are provided.
  • The GObjectBuilder was created for a deferred concrete Type but the Type was not set.

Auto Trait Implementations§

§

impl<'a, O> Freeze for GObjectBuilder<'a, O>

§

impl<'a, O> RefUnwindSafe for GObjectBuilder<'a, O>
where O: RefUnwindSafe,

§

impl<'a, O> !Send for GObjectBuilder<'a, O>

§

impl<'a, O> !Sync for GObjectBuilder<'a, O>

§

impl<'a, O> Unpin for GObjectBuilder<'a, O>
where O: Unpin,

§

impl<'a, O> UnwindSafe for GObjectBuilder<'a, O>
where O: UnwindSafe,

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> 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. 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.