Struct gstreamer::ClockTime[][src]

pub struct ClockTime(pub Option<u64>);

Methods

impl ClockTime
[src]

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 ClockTime
[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 ClockTime
[src]

impl PartialOrd for ClockTime
[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 ClockTime
[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 ClockTime
[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 ClockTime
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Copy for ClockTime
[src]

impl Debug for ClockTime
[src]

Formats the value using the given formatter. Read more

impl Default for ClockTime
[src]

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

impl Display for ClockTime
[src]

Formats the value using the given formatter. Read more

impl From<ClockTime> for GenericFormattedValue
[src]

Performs the conversion.

impl FormattedValue for ClockTime
[src]

impl SpecificFormattedValue for ClockTime
[src]

impl From<u64> for ClockTime
[src]

Performs the conversion.

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

Performs the conversion.

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

Performs the conversion.

impl Deref for ClockTime
[src]

The resulting type after dereferencing.

Dereferences the value.

impl DerefMut for ClockTime
[src]

Mutably dereferences the value.

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

Performs the conversion.

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

Performs the conversion.

impl Add<ClockTime> for ClockTime
[src]

The resulting type after applying the + operator.

Performs the + operation.

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

The resulting type after applying the + operator.

Performs the + operation.

impl AddAssign<ClockTime> for ClockTime
[src]

Performs the += operation.

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

Performs the += operation.

impl Sub<ClockTime> for ClockTime
[src]

The resulting type after applying the - operator.

Performs the - operation.

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

The resulting type after applying the - operator.

Performs the - operation.

impl SubAssign<ClockTime> for ClockTime
[src]

Performs the -= operation.

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

Performs the -= operation.

impl Mul<ClockTime> for ClockTime
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<ClockTime> for ClockTime
[src]

Performs the *= operation.

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

Performs the *= operation.

impl Div<ClockTime> for ClockTime
[src]

The resulting type after applying the / operator.

Performs the / operation.

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

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<ClockTime> for ClockTime
[src]

Performs the /= operation.

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

Performs the /= operation.

impl Rem<ClockTime> for ClockTime
[src]

The resulting type after applying the % operator.

Performs the % operation.

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

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<ClockTime> for ClockTime
[src]

Performs the %= operation.

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

Performs the %= operation.

impl Mul<u64> for ClockTime
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<u64> for ClockTime
[src]

Performs the *= operation.

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

Performs the *= operation.

impl Div<u64> for ClockTime
[src]

The resulting type after applying the / operator.

Performs the / operation.

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

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<u64> for ClockTime
[src]

Performs the /= operation.

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

Performs the /= operation.

impl Rem<u64> for ClockTime
[src]

The resulting type after applying the % operator.

Performs the % operation.

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

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<u64> for ClockTime
[src]

Performs the %= operation.

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

Performs the %= operation.

impl Mul<ClockTime> for u64
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulDiv<ClockTime> for ClockTime
[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 ClockTime> for ClockTime
[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 ClockTime
[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 ClockTime
[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 ClockTime

impl Sync for ClockTime