Struct xpcom::interfaces::nsICycleCollectorListener
[−]
[src]
#[repr(C)]pub struct nsICycleCollectorListener { /* fields omitted */ }
interface nsICycleCollectorListener : nsISupports
/**
* This interface is used to configure some reporting options for the cycle
* collector. This interface cannot be implemented by JavaScript code, as it
* is called while the cycle collector is running.
*
* To analyze cycle collection data in JS:
*
* - Create an instance of @mozilla.org/cycle-collector-logger;1, which
* implements this interface.
*
* - Set its |disableLog| property to true. This prevents the logger from
* printing messages about each method call to a temporary log file.
*
* - Set its |wantAfterProcessing| property to true. This tells the logger
* to record calls to its methods in memory. The |processNext| method
* returns events from this record.
*
* - Perform a collection using the logger. For example, call
* |nsIDOMWindowUtils|'s |garbageCollect| method, passing the logger as
* the |aListener| argument.
*
* - When the collection is complete, loop calling the logger's
* |processNext| method, passing a JavaScript object that implements
* nsICycleCollectorHandler. This JS code is free to allocate and operate
* on objects however it pleases: the cycle collector has finished its
* work, and the JS code is simply consuming recorded data.
*/
Methods
impl nsICycleCollectorListener
[src]
pub fn coerce<T: nsICycleCollectorListenerCoerce>(&self) -> &T
[src]
Cast this nsICycleCollectorListener
to one of its base interfaces.
impl nsICycleCollectorListener
[src]
pub unsafe fn AllTraces(
&self,
_retval: *mut *const nsICycleCollectorListener
) -> nsresult
[src]
&self,
_retval: *mut *const nsICycleCollectorListener
) -> nsresult
nsICycleCollectorListener allTraces ();
pub unsafe fn GetWantAllTraces(&self, aWantAllTraces: *mut bool) -> nsresult
[src]
readonly attribute boolean wantAllTraces;
pub unsafe fn GetDisableLog(&self, aDisableLog: *mut bool) -> nsresult
[src]
attribute boolean disableLog;
pub unsafe fn SetDisableLog(&self, aDisableLog: bool) -> nsresult
[src]
attribute boolean disableLog;
pub unsafe fn GetLogSink(
&self,
aLogSink: *mut *const nsICycleCollectorLogSink
) -> nsresult
[src]
&self,
aLogSink: *mut *const nsICycleCollectorLogSink
) -> nsresult
attribute nsICycleCollectorLogSink logSink;
pub unsafe fn SetLogSink(
&self,
aLogSink: *const nsICycleCollectorLogSink
) -> nsresult
[src]
&self,
aLogSink: *const nsICycleCollectorLogSink
) -> nsresult
attribute nsICycleCollectorLogSink logSink;
pub unsafe fn GetWantAfterProcessing(
&self,
aWantAfterProcessing: *mut bool
) -> nsresult
[src]
&self,
aWantAfterProcessing: *mut bool
) -> nsresult
attribute boolean wantAfterProcessing;
pub unsafe fn SetWantAfterProcessing(
&self,
aWantAfterProcessing: bool
) -> nsresult
[src]
&self,
aWantAfterProcessing: bool
) -> nsresult
attribute boolean wantAfterProcessing;
pub unsafe fn ProcessNext(
&self,
aHandler: *const nsICycleCollectorHandler,
_retval: *mut bool
) -> nsresult
[src]
&self,
aHandler: *const nsICycleCollectorHandler,
_retval: *mut bool
) -> nsresult
boolean processNext (in nsICycleCollectorHandler aHandler);
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 nsICycleCollectorListener
[src]
const IID: nsIID
IID: nsIID = nsID(1882936246, 9462, 16582, [158, 169, 174, 178, 220, 83, 209, 112])
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 nsICycleCollectorListener
[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 nsICycleCollectorListener
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.