[][src]Struct libpulse_binding::proplist::Proplist

pub struct Proplist(_);

A property list object. Basically a dictionary with ASCII strings as keys and arbitrary data as values.

Methods

impl Proplist[src]

pub fn new() -> Option<Self>[src]

Allocate a property list.

pub fn new_from_string(s: &str) -> Option<Self>[src]

Allocate a new property list and assign key/value from a human readable string.

pub fn key_is_valid(key: &str) -> bool[src]

Returns true if the key is valid.

pub fn sets(&mut self, key: &str, value: &str) -> Result<(), ()>[src]

Append a new string entry to the property list, possibly overwriting an already existing entry with the same key. An internal copy is made of the provided string.

pub fn setp(&mut self, pair: &str) -> Result<(), ()>[src]

Append a new string entry to the property list, possibly overwriting an already existing entry with the same key.

This is similar to sets, however here the provided key and value are combined into a single string, separated by an =. An internal copy is made of the provided string.

pub fn set(&mut self, key: &str, data: &[u8]) -> Result<(), ()>[src]

Append a new arbitrary data entry to the property list, possibly overwriting an already existing entry with the same key. An internal copy of the provided data is made.

pub fn gets(&self, key: &str) -> Option<String>[src]

Return a string entry for the specified key. Will return None if the key does not exist or if data is not valid UTF-8.

pub fn get(&self, key: &str) -> Option<&[u8]>[src]

Get the value for the specified key.

For string entries, the value store will be NUL-terminated. The caller should make a copy of the data before the property list is accessed again.

Returns a slice formed from the data pointer and the length of the data. Returns None if key does not exist.

pub fn merge(&mut self, other: &Self, mode: UpdateMode)[src]

Merge property list “other” into self, adhering to the merge mode specified.

pub fn unset(&mut self, key: &str) -> Result<(), PAErr>[src]

Removes a single entry from the property list, identified by the specified key name.

pub fn unset_many(&mut self, keys: &[&str]) -> Option<u32>[src]

Similar to unset but takes an array of keys to remove.

Returns None on failure, otherwise the number of entries actually removed (which might even be 0, if there were no matching entries to remove).

Important traits for Iterator<'a>
pub fn iter(&self) -> Iterator[src]

Get an immutable iterator over the list’s keys.

The property list should not be modified during iteration through the list, with the exception of deleting the current entry. The keys in the property list do not have any particular order.

for key in my_props.iter() {
    //do something with it
    println!("key: {}", key);
}

pub fn to_string(&self) -> Option<String>[src]

Format the property list nicely as a human readable string.

This works very much like to_string_sep and uses a newline as separator and appends one final one.

pub fn to_string_sep(&self, sep: &str) -> Option<String>[src]

Format the property list nicely as a human readable string, choosing the separator used.

pub fn contains(&self, key: &str) -> Option<bool>[src]

Returns true if an entry for the specified key exists in the property list. Returns None on error.

pub fn clear(&mut self)[src]

Remove all entries from the property list object.

pub fn len(&self) -> u32[src]

Returns the number of entries in the property list.

pub fn is_empty(&self) -> bool[src]

Returns true when the proplist is empty, false otherwise

pub fn equal_to(&self, to: &Self) -> bool[src]

Returns true when self and to have the same keys and values.

Trait Implementations

impl Clone for Proplist[src]

fn clone(&self) -> Self[src]

Allocate a new property list and copy over every single entry from the specified list. If this is called on a ‘weak’ instance, a non-weak object is returned.

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl IntoIterator for Proplist[src]

type Item = String

The type of the elements being iterated over.

type IntoIter = Iterator<'static>

Which kind of iterator are we turning this into?

impl Send for Proplist[src]

impl Sync for Proplist[src]

impl Debug for Proplist[src]

Blanket Implementations

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.