Struct gstreamer::format::Buffers[][src]

pub struct Buffers(pub Option<u64>);

Methods from Deref<Target = Option<u64>>

Returns true if the option is a Some value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_some(), true);

let x: Option<u32> = None;
assert_eq!(x.is_some(), false);

Returns true if the option is a None value.

Examples

let x: Option<u32> = Some(2);
assert_eq!(x.is_none(), false);

let x: Option<u32> = None;
assert_eq!(x.is_none(), true);

Converts from Option<T> to Option<&T>.

Examples

Convert an Option<String> into an Option<usize>, preserving the original. The map method takes the self argument by value, consuming the original, so this technique uses as_ref to first take an Option to a reference to the value inside the original.

let text: Option<String> = Some("Hello, world!".to_string());
// First, cast `Option<String>` to `Option<&String>` with `as_ref`,
// then consume *that* with `map`, leaving `text` on the stack.
let text_length: Option<usize> = text.as_ref().map(|s| s.len());
println!("still can print text: {:?}", text);

Converts from Option<T> to Option<&mut T>.

Examples

let mut x = Some(2);
match x.as_mut() {
    Some(v) => *v = 42,
    None => {},
}
assert_eq!(x, Some(42));

🔬 This is a nightly-only experimental API. (pin)

Converts from Option<T> to Option<PinMut<'_, T>>

Important traits for Iter<'a, A>

Returns an iterator over the possibly contained value.

Examples

let x = Some(4);
assert_eq!(x.iter().next(), Some(&4));

let x: Option<u32> = None;
assert_eq!(x.iter().next(), None);

Important traits for IterMut<'a, A>

Returns a mutable iterator over the possibly contained value.

Examples

let mut x = Some(4);
match x.iter_mut().next() {
    Some(v) => *v = 42,
    None => {},
}
assert_eq!(x, Some(42));

let mut x: Option<u32> = None;
assert_eq!(x.iter_mut().next(), None);

Important traits for &'a mut R

Inserts v into the option if it is None, then returns a mutable reference to the contained value.

Examples

let mut x = None;

{
    let y: &mut u32 = x.get_or_insert(5);
    assert_eq!(y, &5);

    *y = 7;
}

assert_eq!(x, Some(7));

Important traits for &'a mut R

Inserts a value computed from f into the option if it is None, then returns a mutable reference to the contained value.

Examples

let mut x = None;

{
    let y: &mut u32 = x.get_or_insert_with(|| 5);
    assert_eq!(y, &5);

    *y = 7;
}

assert_eq!(x, Some(7));

Takes the value out of the option, leaving a None in its place.

Examples

let mut x = Some(2);
x.take();
assert_eq!(x, None);

let mut x: Option<u32> = None;
x.take();
assert_eq!(x, None);

Trait Implementations

impl PartialEq for Buffers
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Eq for Buffers
[src]

impl PartialOrd for Buffers
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Ord for Buffers
[src]

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

impl Hash for Buffers
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl Clone for Buffers
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Copy for Buffers
[src]

impl Debug for Buffers
[src]

Formats the value using the given formatter. Read more

impl Default for Buffers
[src]

Returns the "default value" for a type. Read more

impl From<Buffers> for GenericFormattedValue
[src]

Performs the conversion.

impl FormattedValue for Buffers
[src]

impl SpecificFormattedValue for Buffers
[src]

impl From<u64> for Buffers
[src]

Performs the conversion.

impl From<Option<u64>> for Buffers
[src]

Performs the conversion.

impl Into<Option<u64>> for Buffers
[src]

Performs the conversion.

impl Deref for Buffers
[src]

The resulting type after dereferencing.

Dereferences the value.

impl DerefMut for Buffers
[src]

Mutably dereferences the value.

impl AsRef<Option<u64>> for Buffers
[src]

Performs the conversion.

impl AsMut<Option<u64>> for Buffers
[src]

Performs the conversion.

impl Add<Buffers> for Buffers
[src]

The resulting type after applying the + operator.

Performs the + operation.

impl<'a> Add<&'a Buffers> for Buffers
[src]

The resulting type after applying the + operator.

Performs the + operation.

impl AddAssign<Buffers> for Buffers
[src]

Performs the += operation.

impl<'a> AddAssign<&'a Buffers> for Buffers
[src]

Performs the += operation.

impl Sub<Buffers> for Buffers
[src]

The resulting type after applying the - operator.

Performs the - operation.

impl<'a> Sub<&'a Buffers> for Buffers
[src]

The resulting type after applying the - operator.

Performs the - operation.

impl SubAssign<Buffers> for Buffers
[src]

Performs the -= operation.

impl<'a> SubAssign<&'a Buffers> for Buffers
[src]

Performs the -= operation.

impl Mul<Buffers> for Buffers
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl<'a> Mul<&'a Buffers> for Buffers
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<Buffers> for Buffers
[src]

Performs the *= operation.

impl<'a> MulAssign<&'a Buffers> for Buffers
[src]

Performs the *= operation.

impl Div<Buffers> for Buffers
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl<'a> Div<&'a Buffers> for Buffers
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<Buffers> for Buffers
[src]

Performs the /= operation.

impl<'a> DivAssign<&'a Buffers> for Buffers
[src]

Performs the /= operation.

impl Rem<Buffers> for Buffers
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl<'a> Rem<&'a Buffers> for Buffers
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<Buffers> for Buffers
[src]

Performs the %= operation.

impl<'a> RemAssign<&'a Buffers> for Buffers
[src]

Performs the %= operation.

impl Mul<u64> for Buffers
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl<'a> Mul<&'a u64> for Buffers
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<u64> for Buffers
[src]

Performs the *= operation.

impl<'a> MulAssign<&'a u64> for Buffers
[src]

Performs the *= operation.

impl Div<u64> for Buffers
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl<'a> Div<&'a u64> for Buffers
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<u64> for Buffers
[src]

Performs the /= operation.

impl<'a> DivAssign<&'a u64> for Buffers
[src]

Performs the /= operation.

impl Rem<u64> for Buffers
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl<'a> Rem<&'a u64> for Buffers
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<u64> for Buffers
[src]

Performs the %= operation.

impl<'a> RemAssign<&'a u64> for Buffers
[src]

Performs the %= operation.

impl Mul<Buffers> for u64
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl<'a> Mul<&'a Buffers> for u64
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl MulDiv<Buffers> for Buffers
[src]

Calculates floor(val * num / denom), i.e. the next integer to the result of the division with the smaller absolute value. Read more

Calculates round(val * num / denom), i.e. the closest integer to the result of the division. If both surrounding integers are the same distance, the one with the bigger absolute value is returned. Read more

Calculates ceil(val * num / denom), i.e. the next integer to the result of the division with the bigger absolute value. Read more

impl<'a> MulDiv<&'a Buffers> for Buffers
[src]

Calculates floor(val * num / denom), i.e. the next integer to the result of the division with the smaller absolute value. Read more

Calculates round(val * num / denom), i.e. the closest integer to the result of the division. If both surrounding integers are the same distance, the one with the bigger absolute value is returned. Read more

Calculates ceil(val * num / denom), i.e. the next integer to the result of the division with the bigger absolute value. Read more

impl<'a> MulDiv<u64> for Buffers
[src]

Calculates floor(val * num / denom), i.e. the next integer to the result of the division with the smaller absolute value. Read more

Calculates round(val * num / denom), i.e. the closest integer to the result of the division. If both surrounding integers are the same distance, the one with the bigger absolute value is returned. Read more

Calculates ceil(val * num / denom), i.e. the next integer to the result of the division with the bigger absolute value. Read more

impl<'a> MulDiv<&'a u64> for Buffers
[src]

Calculates floor(val * num / denom), i.e. the next integer to the result of the division with the smaller absolute value. Read more

Calculates round(val * num / denom), i.e. the closest integer to the result of the division. If both surrounding integers are the same distance, the one with the bigger absolute value is returned. Read more

Calculates ceil(val * num / denom), i.e. the next integer to the result of the division with the bigger absolute value. Read more

Auto Trait Implementations

impl Send for Buffers

impl Sync for Buffers