Struct xpcom::interfaces::nsIClassInfo [] [src]

#[repr(C)]
pub struct nsIClassInfo { /* fields omitted */ }

interface nsIClassInfo : nsISupports

/**
 * Provides information about a specific implementation class.  If you want
 * your class to implement nsIClassInfo, see nsIClassInfoImpl.h for
 * instructions--you most likely do not want to inherit from nsIClassInfo.
 */

Methods

impl nsIClassInfo
[src]

[src]

Cast this nsIClassInfo to one of its base interfaces.

impl nsIClassInfo
[src]

SINGLETON: i64 = 1
/**
     * Bitflags for 'flags' attribute.
     */

THREADSAFE: i64 = 2

MAIN_THREAD_ONLY: i64 = 4

DOM_OBJECT: i64 = 8

PLUGIN_OBJECT: i64 = 16

SINGLETON_CLASSINFO: i64 = 32

CONTENT_NODE: i64 = 64
/**
     * 'flags' attribute bitflag: whether objects of this type implement
     * nsIContent.
     */

RESERVED: i64 = 2147483648

[src]

/**
     * Get an ordered list of the interface ids that instances of the class
     * promise to implement. Note that nsISupports is an implicit member
     * of any such list and need not be included.
     *
     * Should set *count = 0 and *array = null and return NS_OK if getting the
     * list is not supported.
     */

void getInterfaces (out uint32_t count, [array, size_is (count), retval] out nsIIDPtr array);

[src]

/**
     * Return an object to assist XPConnect in supplying JavaScript-specific
     * behavior to callers of the instance object, or null if not needed.
     */

nsIXPCScriptable getScriptableHelper ();

[src]

/**
     * A contract ID through which an instance of this class can be created
     * (or accessed as a service, if |flags & SINGLETON|), or null/void.
     */

readonly attribute AUTF8String contractID;

[src]

/**
     * A human readable string naming the class, or null/void.
     */

readonly attribute AUTF8String classDescription;

[src]

/**
     * A class ID through which an instance of this class can be created
     * (or accessed as a service, if |flags & SINGLETON|), or null.
     */

readonly attribute nsCIDPtr classID;

[src]

readonly attribute uint32_t flags;

[src]

/**
     * Also a class ID through which an instance of this class can be created
     * (or accessed as a service, if |flags & SINGLETON|).  If the class does
     * not have a CID, it should return NS_ERROR_NOT_AVAILABLE.  This attribute
     * exists so C++ callers can avoid allocating and freeing a CID, as would
     * happen if they used classID.
     */

[noscript] readonly attribute nsCID classIDNoAlloc;

Methods from Deref<Target = nsISupports>

[src]

Cast this nsISupports to one of its base interfaces.

[src]

void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result);

[src]

[noscript,notxpcom] nsrefcnt AddRef ();

[src]

[noscript,notxpcom] nsrefcnt Release ();

Trait Implementations

impl XpCom for nsIClassInfo
[src]

IID: nsIID = nsID(2785372631, 54273, 18039, [186, 99, 42, 165, 151, 26, 242, 93])

[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 nsIClassInfo
[src]

[src]

Increment the reference count.

[src]

Decrement the reference count, potentially freeing backing memory.

impl Deref for nsIClassInfo
[src]

The resulting type after dereferencing.

[src]

Dereferences the value.