Struct gstreamer::format::Bytes[][src]

pub struct Bytes(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 Bytes
[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 Bytes
[src]

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

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Copy for Bytes
[src]

impl Debug for Bytes
[src]

Formats the value using the given formatter. Read more

impl Default for Bytes
[src]

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

impl From<Bytes> for GenericFormattedValue
[src]

Performs the conversion.

impl FormattedValue for Bytes
[src]

impl SpecificFormattedValue for Bytes
[src]

impl From<u64> for Bytes
[src]

Performs the conversion.

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

Performs the conversion.

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

Performs the conversion.

impl Deref for Bytes
[src]

The resulting type after dereferencing.

Dereferences the value.

impl DerefMut for Bytes
[src]

Mutably dereferences the value.

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

Performs the conversion.

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

Performs the conversion.

impl Add<Bytes> for Bytes
[src]

The resulting type after applying the + operator.

Performs the + operation.

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

The resulting type after applying the + operator.

Performs the + operation.

impl AddAssign<Bytes> for Bytes
[src]

Performs the += operation.

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

Performs the += operation.

impl Sub<Bytes> for Bytes
[src]

The resulting type after applying the - operator.

Performs the - operation.

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

The resulting type after applying the - operator.

Performs the - operation.

impl SubAssign<Bytes> for Bytes
[src]

Performs the -= operation.

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

Performs the -= operation.

impl Mul<Bytes> for Bytes
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<Bytes> for Bytes
[src]

Performs the *= operation.

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

Performs the *= operation.

impl Div<Bytes> for Bytes
[src]

The resulting type after applying the / operator.

Performs the / operation.

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

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<Bytes> for Bytes
[src]

Performs the /= operation.

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

Performs the /= operation.

impl Rem<Bytes> for Bytes
[src]

The resulting type after applying the % operator.

Performs the % operation.

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

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<Bytes> for Bytes
[src]

Performs the %= operation.

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

Performs the %= operation.

impl Mul<u64> for Bytes
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulAssign<u64> for Bytes
[src]

Performs the *= operation.

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

Performs the *= operation.

impl Div<u64> for Bytes
[src]

The resulting type after applying the / operator.

Performs the / operation.

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

The resulting type after applying the / operator.

Performs the / operation.

impl DivAssign<u64> for Bytes
[src]

Performs the /= operation.

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

Performs the /= operation.

impl Rem<u64> for Bytes
[src]

The resulting type after applying the % operator.

Performs the % operation.

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

The resulting type after applying the % operator.

Performs the % operation.

impl RemAssign<u64> for Bytes
[src]

Performs the %= operation.

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

Performs the %= operation.

impl Mul<Bytes> for u64
[src]

The resulting type after applying the * operator.

Performs the * operation.

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

The resulting type after applying the * operator.

Performs the * operation.

impl MulDiv<Bytes> for Bytes
[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 Bytes> for Bytes
[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 Bytes
[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 Bytes
[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 Serialize for Bytes
[src]

Serialize this value into the given Serde serializer. Read more

impl<'de> Deserialize<'de> for Bytes
[src]

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations

impl Send for Bytes

impl Sync for Bytes