Struct qmetaobject::connections::Signal [−][src]
pub struct Signal<Args> { /* fields omitted */ }
High-level typed wrapper for a pointer to a C++/Qt signal.
While low-level SignalInner
operated on pointers to ‘erased’
member functions types, this struct adds type-safe behavior on top of that.
Args
is a type that matches the argument of the signal.
For example, a C++ signal with signature void (MyType::*)(int, QString)
will be represented
by the Signal<fn(int, QString)>
type.
Implementations
impl<Args> Signal<Args>
[src]
pub unsafe fn new(inner: SignalInner) -> Self
[src]
Wraps low-level type-erased signal representation in a high-level types wrapper.
Safety
Caller must ensure that number, types and order of arguments strictly
matches between signal represented by inner
and Args
. Passing
incorrect information may result in Undefined Behavior.
Example
fn object_name_changed() -> Signal<fn(QString)> { unsafe { Signal::new(cpp!([] -> SignalInner as "SignalInner" { return &QObject::objectNameChanged; })) } }
Trait Implementations
impl<Args> Clone for Signal<Args>
[src]
fn clone(&self) -> Self
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<Args> Copy for Signal<Args>
[src]
Auto Trait Implementations
impl<Args> RefUnwindSafe for Signal<Args> where
Args: RefUnwindSafe,
Args: RefUnwindSafe,
impl<Args> Send for Signal<Args> where
Args: Send,
Args: Send,
impl<Args> Sync for Signal<Args> where
Args: Sync,
Args: Sync,
impl<Args> Unpin for Signal<Args> where
Args: Unpin,
Args: Unpin,
impl<Args> UnwindSafe for Signal<Args> where
Args: UnwindSafe,
Args: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,