[uuid(215dbe04-94a7-11d2-ba58-00805f8a5dd7)]
interface nsIInterfaceInfo : nsISupports

Attributes


          
readonly attribute nsIIDPtr InterfaceIID

          
readonly attribute PRUint16 constantCount
 These include counts for parent (and all ancestors).
readonly attribute PRUint16 methodCount

          
readonly attribute string name

          
readonly attribute nsIInterfaceInfo parent

Methods


          
void getConstant(in PRUint16 index, [retval, shared] out nsXPTConstantPtr constant)

          
nsIIDPtr getIIDForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param)

          
[notxpcom] nsresult getIIDForParamNoAlloc(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param, out nsIID iid)

          
void getIIDShared([retval, shared] out nsIIDPtrShared iid)
 Get the interface information or iid associated with a param of some
 method in this interface.
nsIInterfaceInfo getInfoForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param)

          
PRUint8 getInterfaceIsArgNumberForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param)

          
PRUint8 getLengthIsArgNumberForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param, in PRUint16 dimension)
 These include methods and constants for parent (and all ancestors).
 
 These do *not* make copies ***explicit bending of XPCOM rules***.
void getMethodInfo(in PRUint16 index, [retval, shared] out nsXPTMethodInfoPtr info)

          
void getMethodInfoForName(in string methodName, out PRUint16 index, [retval, shared] out nsXPTMethodInfoPtr info)

          
void getNameShared([retval, shared] out string name)

          
PRUint8 getSizeIsArgNumberForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param, in PRUint16 dimension)
 These do *not* make copies ***explicit bending of XPCOM rules***.
nsXPTType getTypeForParam(in PRUint16 methodIndex, [const] in nsXPTParamInfoPtr param, in PRUint16 dimension)

          
PRBool hasAncestor(in nsIIDPtr iid)

          
PRBool isFunction()

          
PRBool isIID(in nsIIDPtr IID)

          
PRBool isScriptable()