Enum gstreamer::TagMergeMode [−][src]
#[non_exhaustive] pub enum TagMergeMode { Undefined, ReplaceAll, Replace, Append, Prepend, Keep, KeepAll, Count, // some variants omitted }
The different tag merging modes are basically replace, overwrite and append,
but they can be seen from two directions. Given two taglists: (A) the tags
already in the element and (B) the ones that are supplied to the element (
e.g. via [crate::TagSetter::merge_tags()
] / [crate::TagSetter::add_tags()
] or a
crate::EventType::Tag
), how are these tags merged?
In the table below this is shown for the cases that a tag exists in the list
(A) or does not exists (!A) and combinations thereof.
merge mode | A + B | A + !B | !A + B | !A + !B |
---|---|---|---|---|
REPLACE_ALL | B | ø | B | ø |
REPLACE | B | A | B | ø |
APPEND | A, B | A | B | ø |
PREPEND | B, A | A | B | ø |
KEEP | A | A | B | ø |
KEEP_ALL | A | A | ø | ø |
Variants (Non-exhaustive)
undefined merge mode
replace all tags (clear list and append)
replace tags
append tags
prepend tags
keep existing tags
keep all existing tags
the number of merge modes
Trait Implementations
impl Clone for TagMergeMode
[src]
impl Clone for TagMergeMode
[src]fn clone(&self) -> TagMergeMode
[src]
fn clone(&self) -> TagMergeMode
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for TagMergeMode
[src]
impl Debug for TagMergeMode
[src]impl<'a> FromValue<'a> for TagMergeMode
[src]
impl<'a> FromValue<'a> for TagMergeMode
[src]type Checker = GenericValueTypeChecker<Self>
type Checker = GenericValueTypeChecker<Self>
Value type checker.
unsafe fn from_value(value: &'a Value) -> Self
[src]
unsafe fn from_value(value: &'a Value) -> Self
[src]Get the contained value from a Value
. Read more
impl Hash for TagMergeMode
[src]
impl Hash for TagMergeMode
[src]impl Ord for TagMergeMode
[src]
impl Ord for TagMergeMode
[src]impl PartialEq<TagMergeMode> for TagMergeMode
[src]
impl PartialEq<TagMergeMode> for TagMergeMode
[src]fn eq(&self, other: &TagMergeMode) -> bool
[src]
fn eq(&self, other: &TagMergeMode) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &TagMergeMode) -> bool
[src]
fn ne(&self, other: &TagMergeMode) -> bool
[src]This method tests for !=
.
impl PartialOrd<TagMergeMode> for TagMergeMode
[src]
impl PartialOrd<TagMergeMode> for TagMergeMode
[src]fn partial_cmp(&self, other: &TagMergeMode) -> Option<Ordering>
[src]
fn partial_cmp(&self, other: &TagMergeMode) -> Option<Ordering>
[src]This method returns an ordering between self
and other
values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than (for self
and other
) and is used by the <
operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl StaticType for TagMergeMode
[src]
impl StaticType for TagMergeMode
[src]fn static_type() -> Type
[src]
fn static_type() -> Type
[src]Returns the type identifier of Self
.
impl ToValue for TagMergeMode
[src]
impl ToValue for TagMergeMode
[src]impl ValueType for TagMergeMode
[src]
impl ValueType for TagMergeMode
[src]impl Copy for TagMergeMode
[src]
impl Eq for TagMergeMode
[src]
impl StructuralEq for TagMergeMode
[src]
impl StructuralPartialEq for TagMergeMode
[src]
Auto Trait Implementations
impl RefUnwindSafe for TagMergeMode
impl Send for TagMergeMode
impl Sync for TagMergeMode
impl Unpin for TagMergeMode
impl UnwindSafe for TagMergeMode
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> ToSendValue for T where
T: Send + ToValue + ?Sized,
[src]
impl<T> ToSendValue for T where
T: Send + ToValue + ?Sized,
[src]pub fn to_send_value(&self) -> SendValue
[src]
pub fn to_send_value(&self) -> SendValue
[src]Returns a SendValue
clone of self
.