Struct xpcom::interfaces::nsIAsyncShutdownClient
[−]
[src]
#[repr(C)]pub struct nsIAsyncShutdownClient { /* fields omitted */ }
interface nsIAsyncShutdownClient : nsISupports
Methods
impl nsIAsyncShutdownClient
[src]
pub fn coerce<T: nsIAsyncShutdownClientCoerce>(&self) -> &T
[src]
Cast this nsIAsyncShutdownClient
to one of its base interfaces.
impl nsIAsyncShutdownClient
[src]
pub unsafe fn GetName(&self, aName: &mut nsAString) -> nsresult
[src]
/**
* A client for a nsIAsyncShutdownBarrier.
*/
/**
* The name of the barrier.
*/
readonly attribute AString name;
pub unsafe fn AddBlocker(
&self,
aBlocker: *const nsIAsyncShutdownBlocker,
aFileName: &nsAString,
aLineNumber: int32_t,
aStack: &nsAString
) -> nsresult
[src]
&self,
aBlocker: *const nsIAsyncShutdownBlocker,
aFileName: &nsAString,
aLineNumber: int32_t,
aStack: &nsAString
) -> nsresult
/**
* Add a blocker.
*
* After a `blocker` has been added with `addBlocker`, if it is not
* removed with `removeBlocker`, this will, by design, eventually
* CAUSE A CRASH.
*
* Calling `addBlocker` once nsIAsyncShutdownBarrier::wait() has been
* called on the owning barrier returns an error.
*
* @param aBlocker The blocker to add. Once
* nsIAsyncShutdownBarrier::wait() has been called, it will not
* call its `aOnReady` callback until all blockers have been
* removed, each by a call to `removeBlocker`.
* @param aFileName The filename of the callsite, as given by `__FILE__`.
* @param aLineNumber The linenumber of the callsite, as given by `__LINE__`.
* @param aStack Information on the stack that lead to this call. Generally
* empty when called from C++.
*/
void addBlocker (in nsIAsyncShutdownBlocker aBlocker, in AString aFileName, in long aLineNumber, in AString aStack);
pub unsafe fn RemoveBlocker(
&self,
aBlocker: *const nsIAsyncShutdownBlocker
) -> nsresult
[src]
&self,
aBlocker: *const nsIAsyncShutdownBlocker
) -> nsresult
/**
* Remove a blocker.
*
* @param aBlocker A blocker previously added to this client through
* `addBlocker`. Noop if the blocker has never been added or has been
* removed already.
*/
void removeBlocker (in nsIAsyncShutdownBlocker aBlocker);
Methods from Deref<Target = nsISupports>
pub fn coerce<T: nsISupportsCoerce>(&self) -> &T
[src]
Cast this nsISupports
to one of its base interfaces.
pub unsafe fn QueryInterface(
&self,
uuid: &nsIID,
result: *mut *mut c_void
) -> nsresult
[src]
&self,
uuid: &nsIID,
result: *mut *mut c_void
) -> nsresult
void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result);
pub unsafe fn AddRef(&self) -> nsrefcnt
[src]
[noscript,notxpcom] nsrefcnt AddRef ();
pub unsafe fn Release(&self) -> nsrefcnt
[src]
[noscript,notxpcom] nsrefcnt Release ();
Trait Implementations
impl XpCom for nsIAsyncShutdownClient
[src]
const IID: nsIID
IID: nsIID = nsID(3523416137, 47504, 17314, [149, 190, 89, 248, 163, 202, 89, 84])
fn query_interface<T: XpCom>(&self) -> Option<RefPtr<T>>
[src]
Perform a QueryInterface call on this object, attempting to dynamically cast it to the requested interface type. Returns Some(RefPtr) if the cast succeeded, and None otherwise. Read more
impl RefCounted for nsIAsyncShutdownClient
[src]
unsafe fn addref(&self)
[src]
Increment the reference count.
unsafe fn release(&self)
[src]
Decrement the reference count, potentially freeing backing memory.
impl Deref for nsIAsyncShutdownClient
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.