Struct xpcom::interfaces::nsIAddonInterposition
[−]
[src]
#[repr(C)]pub struct nsIAddonInterposition { /* fields omitted */ }
interface nsIAddonInterposition : nsISupports
/**
* This interface allows Firefox to expose different implementations of its own
* classes to add-ons. Once an interposition is created, it must be assigned to
* an add-on using Cu.setAddonInterposition (JS) or xpc::SetAddonInterposition
* (C++). In both cases, the arguments should be the add-on ID and the
* interposition object (which must be an nsIAddonInterposition). This must
* happen before any compartments are created for the given add-on.
*
* Every time the add-on accesses a property on any object outside its own set
* of compartments, XPConnect will call the interposition's
* interpose method. If the interposition wants to replace the given
* property, it should return a replacement property descriptor for it. If not,
* it should return null.
*/
Methods
impl nsIAddonInterposition
[src]
pub fn coerce<T: nsIAddonInterpositionCoerce>(&self) -> &T
[src]
Cast this nsIAddonInterposition
to one of its base interfaces.
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 nsIAddonInterposition
[src]
const IID: nsIID
IID: nsIID = nsID(3495740925, 44424, 16806, [133, 76, 54, 253, 148, 214, 157, 219])
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 nsIAddonInterposition
[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 nsIAddonInterposition
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.