[][src]Struct dbus_tree::ObjectPath

pub struct ObjectPath<M: MethodType<D>, D: DataType> { /* fields omitted */ }

A D-Bus Object Path.

Implementations

impl<M: MethodType<D>, D: DataType> ObjectPath<M, D>[src]

pub fn get_name(&self) -> &Path<'static>[src]

Get property name

pub fn get_data(&self) -> &D::ObjectPath[src]

Get associated data

pub fn iter<'a>(&'a self) -> Iter<'a, Interface<M, D>>

Notable traits for Iter<'a, V>

impl<'a, V: 'a> Iterator for Iter<'a, V> type Item = &'a Arc<V>;
[src]

Iterates over interfaces implemented by this object path.

impl<M: MethodType<D>, D: DataType> ObjectPath<M, D> where
    <D as DataType>::Interface: Default,
    <D as DataType>::Method: Default,
    <D as DataType>::Signal: Default
[src]

pub fn introspectable(self) -> Self[src]

Adds introspection support for this object path.

pub fn add<I: Into<Arc<Interface<M, D>>>>(self, s: I) -> Self[src]

Builder function that adds a interface to the object path.

pub fn default_interface(self, i: IfaceName<'static>) -> Self[src]

Builder function that sets what interface should be dispatched on an incoming method call without interface.

pub fn object_manager(self) -> Self[src]

Adds ObjectManager support for this object path.

It is not possible to add/remove interfaces while the object path belongs to a tree, hence no InterfacesAdded / InterfacesRemoved signals are sent.

Trait Implementations

impl<M: Debug + MethodType<D>, D: Debug + DataType> Debug for ObjectPath<M, D> where
    D::ObjectPath: Debug
[src]

Auto Trait Implementations

impl<M, D> RefUnwindSafe for ObjectPath<M, D> where
    <M as MethodType<D>>::GetProp: RefUnwindSafe,
    <D as DataType>::Interface: RefUnwindSafe,
    <D as DataType>::Method: RefUnwindSafe,
    <M as MethodType<D>>::Method: RefUnwindSafe,
    <D as DataType>::ObjectPath: RefUnwindSafe,
    <D as DataType>::Property: RefUnwindSafe,
    <M as MethodType<D>>::SetProp: RefUnwindSafe,
    <D as DataType>::Signal: RefUnwindSafe

impl<M, D> Send for ObjectPath<M, D> where
    <M as MethodType<D>>::GetProp: Send + Sync,
    <D as DataType>::Interface: Send + Sync,
    <D as DataType>::Method: Send + Sync,
    <M as MethodType<D>>::Method: Send + Sync,
    <D as DataType>::ObjectPath: Send,
    <D as DataType>::Property: Send + Sync,
    <M as MethodType<D>>::SetProp: Send + Sync,
    <D as DataType>::Signal: Send + Sync

impl<M, D> Sync for ObjectPath<M, D> where
    <M as MethodType<D>>::GetProp: Send + Sync,
    <D as DataType>::Interface: Send + Sync,
    <D as DataType>::Method: Send + Sync,
    <M as MethodType<D>>::Method: Send + Sync,
    <D as DataType>::ObjectPath: Sync,
    <D as DataType>::Property: Send + Sync,
    <M as MethodType<D>>::SetProp: Send + Sync,
    <D as DataType>::Signal: Send + Sync

impl<M, D> Unpin for ObjectPath<M, D> where
    <D as DataType>::ObjectPath: Unpin

impl<M, D> UnwindSafe for ObjectPath<M, D> where
    <M as MethodType<D>>::GetProp: RefUnwindSafe,
    <D as DataType>::Interface: RefUnwindSafe,
    <D as DataType>::Method: RefUnwindSafe,
    <M as MethodType<D>>::Method: RefUnwindSafe,
    <D as DataType>::ObjectPath: UnwindSafe,
    <D as DataType>::Property: RefUnwindSafe,
    <M as MethodType<D>>::SetProp: RefUnwindSafe,
    <D as DataType>::Signal: RefUnwindSafe

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.