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]
pub fn coerce<T: nsIClassInfoCoerce>(&self) -> &T
[src]
Cast this nsIClassInfo
to one of its base interfaces.
impl nsIClassInfo
[src]
pub const SINGLETON: i64
SINGLETON: i64 = 1
/**
* Bitflags for 'flags' attribute.
*/
pub const THREADSAFE: i64
THREADSAFE: i64 = 2
pub const MAIN_THREAD_ONLY: i64
MAIN_THREAD_ONLY: i64 = 4
pub const DOM_OBJECT: i64
DOM_OBJECT: i64 = 8
pub const PLUGIN_OBJECT: i64
PLUGIN_OBJECT: i64 = 16
pub const SINGLETON_CLASSINFO: i64
SINGLETON_CLASSINFO: i64 = 32
pub const CONTENT_NODE: i64
CONTENT_NODE: i64 = 64
/**
* 'flags' attribute bitflag: whether objects of this type implement
* nsIContent.
*/
pub const RESERVED: i64
RESERVED: i64 = 2147483648
pub unsafe fn GetInterfaces(
&self,
count: *mut uint32_t,
array: *mut *mut *mut nsIID
) -> nsresult
[src]
&self,
count: *mut uint32_t,
array: *mut *mut *mut nsIID
) -> nsresult
/**
* 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);
pub unsafe fn GetScriptableHelper(
&self,
_retval: *mut *const nsIXPCScriptable
) -> nsresult
[src]
&self,
_retval: *mut *const nsIXPCScriptable
) -> nsresult
/**
* Return an object to assist XPConnect in supplying JavaScript-specific
* behavior to callers of the instance object, or null if not needed.
*/
nsIXPCScriptable getScriptableHelper ();
pub unsafe fn GetContractID(&self, aContractID: &mut nsACString) -> nsresult
[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;
pub unsafe fn GetClassDescription(
&self,
aClassDescription: &mut nsACString
) -> nsresult
[src]
&self,
aClassDescription: &mut nsACString
) -> nsresult
/**
* A human readable string naming the class, or null/void.
*/
readonly attribute AUTF8String classDescription;
pub unsafe fn GetClassID(&self, aClassID: *mut *mut nsCID) -> nsresult
[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;
pub unsafe fn GetFlags(&self, aFlags: *mut uint32_t) -> nsresult
[src]
readonly attribute uint32_t flags;
pub unsafe fn GetClassIDNoAlloc(&self, aClassIDNoAlloc: *mut nsCID) -> nsresult
[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>
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 nsIClassInfo
[src]
const IID: nsIID
IID: nsIID = nsID(2785372631, 54273, 18039, [186, 99, 42, 165, 151, 26, 242, 93])
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 nsIClassInfo
[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 nsIClassInfo
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.