Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Private Member Functions | Private Attributes
XPCWrappedNativeTearOff Class Reference

#include <xpcprivate.h>

Collaboration diagram for XPCWrappedNativeTearOff:
Collaboration graph
[legend]

List of all members.

Public Member Functions

JSBool IsAvailable () const
JSBool IsReserved () const
JSBool IsValid () const
void SetReserved ()
XPCNativeInterfaceGetInterface () const
nsISupports * GetNative () const
JSObjectGetJSObject () const
void SetInterface (XPCNativeInterface *Interface)
void SetNative (nsISupports *Native)
void SetJSObject (JSObject *JSObj)
void JSObjectFinalized ()
 XPCWrappedNativeTearOff ()
 ~XPCWrappedNativeTearOff ()
void MarkBeforeJSFinalize (JSContext *)
void AutoMark (JSContext *)
void Mark ()
void Unmark ()
JSBool IsMarked () const

Private Member Functions

 XPCWrappedNativeTearOff (const XPCWrappedNativeTearOff &r)
XPCWrappedNativeTearOffoperator= (const XPCWrappedNativeTearOff &r)

Private Attributes

XPCNativeInterfacemInterface
nsISupports * mNative
JSObjectmJSObject

Detailed Description

Definition at line 1745 of file xpcprivate.h.


Constructor & Destructor Documentation

Definition at line 1762 of file xpcprivate.h.

Definition at line 641 of file xpcinlines.h.

{
    NS_ASSERTION(!(GetInterface()||GetNative()||GetJSObject()), "tearoff not empty in dtor");
#ifdef XPC_IDISPATCH_SUPPORT
    if(IsIDispatch())
        delete GetIDispatchInfo();
#endif
}

Here is the call graph for this function:


Member Function Documentation

Definition at line 1768 of file xpcprivate.h.

{}

Definition at line 1753 of file xpcprivate.h.

{return mInterface;}

Here is the caller graph for this function:

Definition at line 587 of file xpcinlines.h.

{
#ifdef XPC_IDISPATCH_SUPPORT
    if(IsIDispatch())
    {
        XPCDispInterface * iface = GetIDispatchInfo();
        return iface ? iface->GetJSObject() : nsnull;
    }
#endif
    return mJSObject;
}

Here is the call graph for this function:

Here is the caller graph for this function:

nsISupports* XPCWrappedNativeTearOff::GetNative ( ) const [inline]

Definition at line 1754 of file xpcprivate.h.

{return mNative;}

Here is the caller graph for this function:

Definition at line 1748 of file xpcprivate.h.

{return mInterface == nsnull;}

Here is the caller graph for this function:

Definition at line 1772 of file xpcprivate.h.

{return (JSBool)(((jsword)mJSObject) & 1);}

Here is the caller graph for this function:

Definition at line 1749 of file xpcprivate.h.

{return mInterface == (XPCNativeInterface*)1;}

Definition at line 1750 of file xpcprivate.h.

{return !IsAvailable() && !IsReserved();}

Definition at line 1760 of file xpcprivate.h.

Here is the caller graph for this function:

Definition at line 1770 of file xpcprivate.h.

Here is the caller graph for this function:

Definition at line 1767 of file xpcprivate.h.

{}
XPCWrappedNativeTearOff& XPCWrappedNativeTearOff::operator= ( const XPCWrappedNativeTearOff r) [private]

Definition at line 1756 of file xpcprivate.h.

{mInterface = Interface;}

Here is the caller graph for this function:

Definition at line 600 of file xpcinlines.h.

{
#ifdef XPC_IDISPATCH_SUPPORT
    if(IsIDispatch())
    {
        XPCDispInterface* iface = GetIDispatchInfo();
        if(iface)
            iface->SetJSObject(JSObj);
    }
    else
#endif
        mJSObject = JSObj;
}

Here is the call graph for this function:

Here is the caller graph for this function:

void XPCWrappedNativeTearOff::SetNative ( nsISupports *  Native) [inline]

Definition at line 1757 of file xpcprivate.h.

{mNative = Native;}

Here is the caller graph for this function:

Definition at line 1751 of file xpcprivate.h.

Here is the caller graph for this function:

Definition at line 1771 of file xpcprivate.h.

Here is the caller graph for this function:


Member Data Documentation

Definition at line 1789 of file xpcprivate.h.

Definition at line 1791 of file xpcprivate.h.

nsISupports* XPCWrappedNativeTearOff::mNative [private]

Definition at line 1790 of file xpcprivate.h.


The documentation for this class was generated from the following files: