Subclasses

Attributes

From jsdIContext

 Private data for this context, if it is an nsISupports, |null| otherwise.
readonly attribute nsISupports privateData
 Retrieve the underlying context wrapped by this jsdIContext.
readonly attribute nsISupports wrappedContext

From jsdIFilter

 An nsISupports version of the global object to be filtered.  A null glob
 matches all hooks.  This attribute must be QI'able to the
 (non-scriptable) nsIScriptGlobalObject interface.

 The jsdIService caches this value internally, to if it changes you must
 swap the filter with itself using jsdIService::swapFilters.
attribute nsISupports globalObject

From nsICacheEntryDescriptor

 Get/set the cache data element.  This will fail if the cache entry
 IS stream based.  The cache entry holds a strong reference to this
 object.  The object will be released when the cache entry is destroyed.
attribute nsISupports cacheElement
 Get/set security info on the cache entry for this descriptor.  This fails
 if the storage policy is not STORE_IN_MEMORY.
attribute nsISupports securityInfo

From nsICachingChannel

 Set/get the cache key... uniquely identifies the data in the cache
 for this channel.  Holding a reference to this key does NOT prevent
 the cached data from being removed.
 
 A cache key retrieved from a particular instance of nsICachingChannel
 could be set on another instance of nsICachingChannel provided the
 underlying implementations are compatible and provided the new 
 channel instance was created with the same URI.  The implementation of
 nsICachingChannel would be expected to use the cache entry identified
 by the cache token.  Depending on the value of nsIRequest::loadFlags,
 the cache entry may be validated, overwritten, or simply read.

 The cache key may be NULL indicating that the URI of the channel is
 sufficient to locate the same cache entry.  Setting a NULL cache key
 is likewise valid.
attribute nsISupports cacheKey
 Set/get the cache token... uniquely identifies the data in the cache.
 Holding a reference to this token prevents the cached data from being
 removed.
 
 A cache token retrieved from a particular instance of nsICachingChannel
 could be set on another instance of nsICachingChannel provided the
 underlying implementations are compatible.  The implementation of
 nsICachingChannel would be expected to only read from the cache entry
 identified by the cache token and not try to validate it.

 The cache token can be QI'd to a nsICacheEntryInfo if more detail
 about the cache entry is needed (e.g., expiration time).
attribute nsISupports cacheToken

From nsIChannel

 The owner, corresponding to the entity that is responsible for this
 channel.  Used by the security manager to grant or deny privileges to
 mobile code loaded from this channel.

 NOTE: this is a strong reference to the owner, so if the owner is also
 holding a strong reference to the channel, care must be taken to 
 explicitly drop its reference to the channel.
attribute nsISupports owner
 Transport-level security information (if any) corresponding to the channel.
readonly attribute nsISupports securityInfo

From nsIContentViewer


          
attribute nsISupports container

From nsIDOMLSInput


          
attribute nsISupports characterStream

From nsIDOMLSOutput


          
attribute nsISupports characterStream

From nsIDocShellLoadInfo

 The owner of the load, that is, the entity responsible for 
  causing the load to occur. This should be a nsIPrincipal typically.
attribute nsISupports owner

From nsIDocumentLoader


          
readonly attribute nsISupports container

From nsIException


          
readonly attribute nsISupports data

From nsIPrincipal

 The certificate associated with this principal, if any.  If there isn't
 one, this will return null.  Getting this attribute never throws.
readonly attribute nsISupports certificate

From nsISHEntry

 attribute to set and get the cache key for the entry */
attribute nsISupports cacheKey
 Saved state of the global window object */
attribute nsISupports windowState

From nsISOAPService

 Configuration object that may contain more info on the service
attribute nsISupports configuration

From nsISSLStatusProvider


          
readonly attribute nsISupports SSLStatus

From nsISocketTransport

 Security info object returned from the secure socket provider.  This
 object supports nsISSLSocketControl, nsITransportSecurityInfo, and
 possibly other interfaces.
readonly attribute nsISupports securityInfo

From nsIStreamBufferAccess

 The underlying, unbuffered input or output stream.
readonly attribute nsISupports unbufferedStream

From nsISupportsInterfacePointer


          
attribute nsISupports data

From nsIURIContentListener

 The load context associated with a particular content listener.
 The URI Loader stores and accesses this value as needed.
attribute nsISupports loadCookie

From nsIWebPageDescriptor

 Retrieves the page descriptor for the curent document.
readonly attribute nsISupports currentDescriptor

From nsIXPCNativeCallContext


          
readonly attribute nsISupports Callee

From nsIXPCWrappedJSObjectGetter


          
readonly attribute nsISupports neverCalled

From nsIXPConnectWrappedNative


          
readonly attribute nsISupports Native

From nsIXTFPrivate


          
readonly attribute nsISupports inner

From nsIXmlRpcClient

 The most recent XML-RPC call result returned from this server.
 null if the last call didn't return a valid result
readonly attribute nsISupports result

Returns

From nsIBidirectionalIterator

 Create a new iterator pointing to the same position in the underlying container or sequence to which this iterator currently points.
 The returned iterator is suitable for use in a subsequent call to |isEqualTo()| against this iterator.

 @result a new iterator pointing at the same position in the same underlying container or sequence as this iterator
nsISupports clone()
 Retrieve (and |AddRef()|) the element this iterator currently points to.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @result a new reference to the element this iterator currently points to (if any)
nsISupports getElement()

From nsIBoxObject


          
nsISupports getPropertyAsSupports(in wstring propertyName)

From nsIClassInfo

 Get a language mapping specific helper object that may assist in using
 objects of this class in a specific lanaguage. For instance, if asked
 for the helper for nsIProgrammingLanguage::JAVASCRIPT this might return 
 an object that can be QI'd into the nsIXPCScriptable interface to assist 
 XPConnect in supplying JavaScript specific behavior to callers of the 
 instance object.

 see: nsIProgrammingLanguage.idl

 Should return null if no helper available for given language.
nsISupports getHelperForLanguage(in PRUint32 language)

From nsICollection


          
nsISupports GetElementAt(in PRUint32 index)

From nsICommandParams


          
nsISupports getISupportsValue(in string name)

From nsIDOM3Node


          
nsISupports getFeature(in DOMString feature, in DOMString version)

From nsIDOMHTMLCanvasElement


          
nsISupports getContext(in DOMString contextId)

From nsIDOMNSFeatureFactory

 @param object: usually either nsIDOMNode or nsIDOMDOMImplementation
 @param feature: the name of the feature
 @param version: the version of the feature
nsISupports getFeature(in nsISupports object, in DOMString feature, in DOMString version)

From nsIDOMNSHTMLFormControlList


          
nsISupports namedItem(in DOMString name)

From nsIDOMNSXPathExpression

 Evaluate the expression with the given context. Similar to
 nsIDOMXPathExpression::evaluate(), except that this takes the context
 position and size too.

 @param contextNode       The context node
 @param contextPosition   The context position
 @param contextSize       The context size
 @param type              The needed result type
 @param result            The result
nsISupports evaluateWithContext(in nsIDOMNode contextNode, in unsigned long contextPosition, in unsigned long contextSize, in unsigned short type, in nsISupports result)

From nsIDOMXPathEvaluator


          
nsISupports evaluate(in DOMString expression, in nsIDOMNode contextNode, in nsIDOMXPathNSResolver resolver, in unsigned short type, in nsISupports result)

From nsIDOMXPathExpression


          
nsISupports evaluate(in nsIDOMNode contextNode, in unsigned short type, in nsISupports result)

From nsIDictionary

 Delete the indicated key-value pair.

 @param key       The key indicating the pair to be removed.
 @return          The removed value. If the key doesn't exist,
                  NS_ERROR_FAILURE will be returned.
nsISupports deleteValue(in string key)
 Find the value indicated by the key.

 @param key       The lookup key indicating the value.
 @return          Value indicated by key. If the key doesn't exist,
                  NS_ERROR_FAILURE will be returned.
nsISupports getValue(in string key)

From nsIEnumerator

 CurrentItem will return the CurrentItem item it will fail if the 
  list is empty
nsISupports currentItem()

From nsIFastLoadFileControl


          
nsISupports selectMuxedDocument(in nsISupports aURI)

From nsIFastLoadService


          
nsISupports selectMuxedDocument(in nsISupports aURI)

From nsIForwardIterator

 Create a new iterator pointing to the same position in the underlying container or sequence to which this iterator currently points.
 The returned iterator is suitable for use in a subsequent call to |isEqualTo()| against this iterator.

 @result a new iterator pointing at the same position in the same underlying container or sequence as this iterator
nsISupports clone()
 Retrieve (and |AddRef()|) the element this iterator currently points to.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @result a new reference to the element this iterator currently points to (if any)
nsISupports getElement()

From nsIInputIterator

 Create a new iterator pointing to the same position in the underlying container or sequence to which this iterator currently points.
 The returned iterator is suitable for use in a subsequent call to |isEqualTo()| against this iterator.

 @result a new iterator pointing at the same position in the same underlying container or sequence as this iterator
nsISupports clone()
 Retrieve (and |AddRef()|) the element this iterator currently points to.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @result a new reference to the element this iterator currently points to (if any)
nsISupports getElement()

From nsIJSCID


          
nsISupports createInstance()

          
nsISupports getService()

From nsIObjectInputStream

 Read an object from this stream to satisfy a strong or weak reference
 to one of its interfaces.  If the interface was not along the primary
 inheritance chain ending in the "root" or XPCOM-identity nsISupports,
 readObject will QueryInterface from the deserialized object root to the
 correct interface, which was specified when the object was serialized.

 @see nsIObjectOutputStream
nsISupports readObject(in PRBool aIsStrongRef)

From nsIPKIParamBlock


          
nsISupports getISupportAtIndex(in long index)

From nsIRandomAccessIterator

 Create a new iterator pointing to the same position in the underlying container or sequence to which this iterator currently points.
 The returned iterator is suitable for use in a subsequent call to |isEqualTo()| against this iterator.

 @result a new iterator pointing at the same position in the same underlying container or sequence as this iterator
nsISupports clone()
 Retrieve (and |AddRef()|) the element this iterator currently points to.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @result a new reference to the element this iterator currently points to (if any)
nsISupports getElement()
 Retrieve (and |AddRef()|) an element at some offset from where this iterator currently points.
 The offset may be negative.  |getElementAt(0)| is equivalent to |getElement()|.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anOffset a |0|-based offset from the position to which this iterator currently points
 @result a new reference to the indicated element (if any)
nsISupports getElementAt(in PRInt32 anOffset)

From nsIScriptEventManager


          
nsISupports FindEventHandler(in AString aObjectName, in AString aEventName, in unsigned long aArgCount)

From nsISimpleEnumerator

 Called to retrieve the next element in the enumerator. The "next"
 element is the first element upon the first call. Must be
 pre-ceeded by a call to hasMoreElements() which returns PR_TRUE.
 This method is generally called within a loop to iterate over
 the elements in the enumerator.

 @see hasMoreElements()
 @return NS_OK if the call succeeded in returning a non-null
               value through the out parameter.
         NS_ERROR_FAILURE if there are no more elements
                          to enumerate.
 @return the next element in the enumeration.
nsISupports getNext()

From nsISupportsArray


          
[notxpcom] nsISupports ElementAt(in unsigned long aIndex)

From nsIVariant


          
[noscript] nsISupports getAsISupports()

From nsIXPCFunctionThisTranslator


          
nsISupports TranslateThis(in nsISupports aInitialThis, in nsIInterfaceInfo aInterfaceInfo, in PRUint16 aMethodIndex, out PRBool aHideFirstParamFromJS, out nsIIDPtr aIIDOfResult)

Parameters

From imgILoader

 Start the load and decode of an image.
 @param aURI the URI to load
 @param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
 @param aReferrerURI the 'referring' URI
 @param aLoadGroup Loadgroup to put the image load into
 @param aObserver the observer
 @param aCX some random data
 @param aLoadFlags Load flags for the request
 @param aCacheKey cache key to use for a load if the original
                  image came from a request that had post data
 @param aRequest A newly created, unused imgIRequest object or NULL for one to
                     be created for you.


 libpr0n does NOT keep a strong ref to the observer; this prevents
 reference cycles.  This means that callers of loadImage should
 make sure to Cancel() the resulting request before the observer
 goes away.
imgIRequest loadImage(in nsIURI aURI, in nsIURI aInitialDocumentURL, in nsIURI aReferrerURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest)
 Start the load and decode of an image.
 @param aURI the URI to load
 @param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
 @param aReferrerURI the 'referring' URI
 @param aLoadGroup Loadgroup to put the image load into
 @param aObserver the observer
 @param aCX some random data
 @param aLoadFlags Load flags for the request
 @param aCacheKey cache key to use for a load if the original
                  image came from a request that had post data
 @param aRequest A newly created, unused imgIRequest object or NULL for one to
                     be created for you.


 libpr0n does NOT keep a strong ref to the observer; this prevents
 reference cycles.  This means that callers of loadImage should
 make sure to Cancel() the resulting request before the observer
 goes away.
imgIRequest loadImage(in nsIURI aURI, in nsIURI aInitialDocumentURL, in nsIURI aReferrerURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest)
 Start the load and decode of an image.
 @param uri the URI to load
 @param aObserver the observer
 @param cx some random data

 libpr0n does NOT keep a strong ref to the observer; this prevents
 reference cycles.  This means that callers of loadImageWithChannel should
 make sure to Cancel() the resulting request before the observer goes away.
imgIRequest loadImageWithChannel(in nsIChannel aChannel, in imgIDecoderObserver aObserver, in nsISupports cx, out nsIStreamListener aListener)

From nsIAccessibilityService


          
nsIAccessible createHTMLLIAccessible(in nsISupports aFrame, in nsISupports aBulletFrame, in AString aBulletText)

          
nsIAccessible createHTML4ButtonAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLAccessibleByMarkup(in nsISupports aFrame, in nsIWeakReference aWeakShell, in nsIDOMNode aDOMNode, in AString aRole)

          
nsIAccessible createHTMLBlockAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLButtonAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLCheckboxAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLGenericAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLGroupboxAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLHRAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLImageAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLLIAccessible(in nsISupports aFrame, in nsISupports aBulletFrame, in AString aBulletText)

          
nsIAccessible createHTMLLabelAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLRadioButtonAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLTableAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLTableCellAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLTextAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLTextFieldAccessible(in nsISupports aFrame)

          
nsIAccessible createHTMLComboboxAccessible(in nsIDOMNode aNode, in nsISupports aPresShell)

          
nsIAccessible createHTMLListboxAccessible(in nsIDOMNode aNode, in nsISupports aPresShell)

          
nsIAccessible createHTMLSelectOptionAccessible(in nsIDOMNode aNode, in nsIAccessible aAccParent, in nsISupports aPresShell)

From nsIArray

 indexOf()
 
 Get the position of a specific element. Note that since null is
 a valid input, exceptions are used to indicate that an element
 is not found.
 
 @param startIndex The initial element to search in the array
                   To start at the beginning, use 0 as the
                   startIndex
 @param element    The element you are looking for
 @returns a number >= startIndex which is the position of the
          element in the array.
 @throws NS_ERROR_NOT_FOUND if the element was not in the array.
unsigned long indexOf(in unsigned long startIndex, in nsISupports element)

From nsIAsyncStreamCopier

 asyncCopy triggers the start of the copy.  The observer will be notified
 when the copy completes.

 @param aObserver
        receives notifications.
 @param aObserverContext
        passed to observer methods.
void asyncCopy(in nsIRequestObserver aObserver, in nsISupports aObserverContext)

From nsIBidirectionalIterator

 Put |anElementToPut| into the underlying container or sequence at the position currently pointed to by this iterator.
 The iterator and the underlying container or sequence cooperate to |Release()|
 the replaced element, if any and if necessary, and to |AddRef()| the new element.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anElementToPut the element to place into the underlying container or sequence
void putElement(in nsISupports anElementToPut)
 Test if |anotherIterator| points to the same position in the underlying container or sequence.

 The result is undefined if |anotherIterator| was not created by or for the same underlying container or sequence.

 @param anotherIterator another iterator to compare against, created by or for the same underlying container or sequence
 @result true if |anotherIterator| points to the same position in the underlying container or sequence
boolean isEqualTo(in nsISupports anotherIterator)

From nsIBoxObject


          
void setPropertyAsSupports(in wstring propertyName, in nsISupports value)

From nsIChannel

 Asynchronously open this channel.  Data is fed to the specified stream
 listener as it becomes available.  The stream listener's methods are
 called on the thread that calls asyncOpen and are not called until
 after asyncOpen returns.

 @param aListener the nsIStreamListener implementation
 @param aContext an opaque parameter forwarded to aListener's methods
void asyncOpen(in nsIStreamListener aListener, in nsISupports aContext)

From nsICharsetResolver

 Called to resolve the charset that should be used for parsing the
 document being loaded from aChannel.

 If the charset cannot be resolved, but the implementation of
 nsICharsetResolver wants to be notified of the final resolved charset
 when one is available, it can set wantCharset to true.  If this is done,
 the caller of requestCharset is responsible for calling
 notifyResovedCharset and passing it the final resolved charset and the
 closure that requestCharset set.
 
 @param aWebNavigation the nsIWebNavigation the document is being loaded
                       in.  May be null.
 @param aChannel the channel the document is coming in from.
 @param aWantCharset gets set to true if notifyResolvedCharset should be
                     called with the given closure object.
 @param aClosure a resulting object which should be passed
                 to notifyResolvedCharset if wantCharset is set to
                 true.
 @returns the resolved charset, or the empty string if no
          charset could be determined.
ACString requestCharset(in nsIWebNavigation aWebNavigation, in nsIChannel aChannel, out boolean aWantCharset, out nsISupports aClosure)
 notifyResolvedCharset

 some implementations may request that they be notified when the
 charset is actually detected. 

 @param charset the detected charset
 @param closure the closre returned by detectCharset() above
void notifyResolvedCharset(in ACString charset, in nsISupports closure)

From nsICollection


          
void AppendElement(in nsISupports item)

          
void RemoveElement(in nsISupports item)

          
void SetElementAt(in PRUint32 index, in nsISupports item)

From nsICommandParams


          
void setISupportsValue(in string name, in nsISupports value)

From nsIComponentLoader

 Initialize the loader.

 We use nsISupports here because nsIRegistry isn't IDLized yet.
void init(in nsIComponentManager aCompMgr, in nsISupports aRegistry)

From nsIComponentManager

 createInstance

 Create an instance of the CID aClass and return the interface aIID.

 @param aClass : ClassID of object instance requested
 @param aDelegate : Used for aggregation
 @param aIID : IID of interface requested
void createInstance(in nsCIDRef aClass, in nsISupports aDelegate, in nsIIDRef aIID, [retval, iid_is(aIID)] out nsQIResult result)
 createInstanceByContractID

 Create an instance of the CID that implements aContractID and return the
 interface aIID. 

 @param aContractID : aContractID of object instance requested
 @param aDelegate : Used for aggregation
 @param aIID : IID of interface requested
void createInstanceByContractID(in string aContractID, in nsISupports aDelegate, in nsIIDRef aIID, [retval, iid_is(aIID)] out nsQIResult result)

From nsIComponentManagerObsolete

 createInstance

 Create an instance of the CID aClass and return the interface aIID.

 @param aClass : ClassID of object instance requested
 @param aDelegate : Used for aggregation
 @param aIID : IID of interface requested
[noscript] voidPtr createInstance(in nsCIDRef aClass, in nsISupports aDelegate, in nsIIDRef aIID)
 createInstanceByContractID

 Create an instance of the CID that implements aContractID and return the
 interface aIID. This is a convenience function that effectively does
 ContractIDToClassID() followed by CreateInstance().

 @param aContractID : aContractID of object instance requested
 @param aDelegate : Used for aggregation
 @param aIID : IID of interface requested
[noscript] voidPtr createInstanceByContractID(in string aContractID, in nsISupports aDelegate, in nsIIDRef IID)

From nsIContentPolicy

 Should the resource at this location be loaded?
 ShouldLoad will be called before loading the resource at aContentLocation
 to determine whether to start the load at all.

 @param aContentType      the type of content being tested. This will be one
                          one of the TYPE_* constants.

 @param aContentLocation  the location of the content being checked; must
                          not be null

 @param aRequestOrigin    OPTIONAL. the location of the resource that
                          initiated this load request; can be null if
                          inapplicable

 @param aContext          OPTIONAL. the nsIDOMNode or nsIDOMWindow that
                          initiated the request, or something that can QI
                          to one of those; can be null if inapplicable.

 @param aMimeTypeGuess    OPTIONAL. a guess for the requested content's
                          MIME type, based on information available to
                          the request initiator (e.g., an OBJECT's type
                          attribute); does not reliably reflect the
                          actual MIME type of the requested content

 @param aExtra            an OPTIONAL argument, pass-through for non-Gecko
                          callers to pass extra data to callees.

 @return ACCEPT or REJECT_*
short shouldLoad(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra)
 Should the resource be processed?
 ShouldProcess will be called once all the information passed to it has
 been determined about the resource, typically after part of the resource
 has been loaded.

 @param aContentType      the type of content being tested. This will be one
                          one of the TYPE_* constants.

 @param aContentLocation  OPTIONAL; the location of the resource being
                          requested: MAY be, e.g., a post-redirection URI
                          for the resource.

 @param aRequestOrigin    OPTIONAL. the location of the resource that
                          initiated this load request; can be null if
                          inapplicable

 @param aContext          OPTIONAL. the nsIDOMNode or nsIDOMWindow that
                          initiated the request, or something that can QI
                          to one of those; can be null if inapplicable.

 @param aMimeType         the MIME type of the requested resource (e.g.,
                          image/png), as reported by the networking library,
                          if available (may be empty if inappropriate for
                          the type, e.g., TYPE_REFRESH).

 @param aExtra            an OPTIONAL argument, pass-through for non-Gecko
                          callers to pass extra data to callees.

 @return ACCEPT or REJECT_*
short shouldProcess(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeType, in nsISupports aExtra)
 Should the resource at this location be loaded?
 ShouldLoad will be called before loading the resource at aContentLocation
 to determine whether to start the load at all.

 @param aContentType      the type of content being tested. This will be one
                          one of the TYPE_* constants.

 @param aContentLocation  the location of the content being checked; must
                          not be null

 @param aRequestOrigin    OPTIONAL. the location of the resource that
                          initiated this load request; can be null if
                          inapplicable

 @param aContext          OPTIONAL. the nsIDOMNode or nsIDOMWindow that
                          initiated the request, or something that can QI
                          to one of those; can be null if inapplicable.

 @param aMimeTypeGuess    OPTIONAL. a guess for the requested content's
                          MIME type, based on information available to
                          the request initiator (e.g., an OBJECT's type
                          attribute); does not reliably reflect the
                          actual MIME type of the requested content

 @param aExtra            an OPTIONAL argument, pass-through for non-Gecko
                          callers to pass extra data to callees.

 @return ACCEPT or REJECT_*
short shouldLoad(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra)
 Should the resource be processed?
 ShouldProcess will be called once all the information passed to it has
 been determined about the resource, typically after part of the resource
 has been loaded.

 @param aContentType      the type of content being tested. This will be one
                          one of the TYPE_* constants.

 @param aContentLocation  OPTIONAL; the location of the resource being
                          requested: MAY be, e.g., a post-redirection URI
                          for the resource.

 @param aRequestOrigin    OPTIONAL. the location of the resource that
                          initiated this load request; can be null if
                          inapplicable

 @param aContext          OPTIONAL. the nsIDOMNode or nsIDOMWindow that
                          initiated the request, or something that can QI
                          to one of those; can be null if inapplicable.

 @param aMimeType         the MIME type of the requested resource (e.g.,
                          image/png), as reported by the networking library,
                          if available (may be empty if inappropriate for
                          the type, e.g., TYPE_REFRESH).

 @param aExtra            an OPTIONAL argument, pass-through for non-Gecko
                          callers to pass extra data to callees.

 @return ACCEPT or REJECT_*
short shouldProcess(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeType, in nsISupports aExtra)

From nsIContentViewer


          
void loadStart(in nsISupports aDoc)
 Attach the content viewer to its DOM window and docshell.
 @param aState A state object that might be useful in attaching the DOM
               window.
void open(in nsISupports aState)

From nsIContentViewerContainer


          
void embed(in nsIContentViewer aDocViewer, in string aCommand, in nsISupports aExtraInfo)

From nsIContentViewer_MOZILLA_1_8_BRANCH

 Attach the content viewer to its DOM window and docshell.
 @param aState A state object that might be useful in attaching the DOM
               window.
 @param aSHEntry The history entry that the content viewer was stored in.
                 The entry must have the docshells for all of the child
                 documents stored in its child shell list.
void openWithEntry(in nsISupports aState, in nsISHEntry aSHEntry)

From nsIControllerCommand

 Execute the name command.

 @param aCommandName  the name of the command to execute.
 
 @param aCommandContext    a cookie held by the nsIControllerCommandTable,
                  allowing the command to get some context information.
                  The contents of this cookie are implementation-defined.
void doCommand(in string aCommandName, in nsISupports aCommandContext)

          
void doCommandParams(in string aCommandName, in nsICommandParams aParams, in nsISupports aCommandContext)

          
void getCommandStateParams(in string aCommandName, in nsICommandParams aParams, in nsISupports aCommandContext)
 Returns true if the command is currently enabled. An nsIControllerCommand
 can implement more than one commands; say, a group of related commands
 (e.g. delete left/delete right). Because of this, the command name is
 passed to each method.

 @param aCommandName  the name of the command for which we want the enabled
                      state.
 @param aCommandContext    a cookie held by the nsIControllerCommandTable,
                  allowing the command to get some context information.
                  The contents of this cookie are implementation-defined.
boolean isCommandEnabled(in string aCommandName, in nsISupports aCommandContext)

From nsIControllerCommandTable

 Execute the named command.

 @param aCommandName    the name of the command to execute
 @param aCommandRefCon  the command context data
void doCommand(in string aCommandName, in nsISupports aCommandRefCon)

          
void doCommandParams(in string aCommandName, in nsICommandParams aParam, in nsISupports aCommandRefCon)

          
void getCommandState(in string aCommandName, in nsICommandParams aParam, in nsISupports aCommandRefCon)
 Get whether the named command is enabled.

 @param aCommandName    the name of the command to test
 @param aCommandRefCon  the command context data
boolean isCommandEnabled(in string aCommandName, in nsISupports aCommandRefCon)
 Get whether the named command is supported.

 @param aCommandName    the name of the command to test
 @param aCommandRefCon  the command context data
boolean supportsCommand(in string aCommandName, in nsISupports aCommandRefCon)
 Tell the command to udpate its state (if it is a state updating command)

 @param aCommandName    the name of the command to update
 @param aCommandRefCon  the command context data
void updateCommandState(in string aCommandName, in nsISupports aCommandRefCon)

From nsIControllerContext

 
  Set a context on this controller, which is passed
  to commands to give them some context when they execute.

 @param aCommandContext  the context passed to commands.
                        Note that this is *not* addreffed by the
                        controller, and so needs to outlive it,
                        or be nulled out.
void setCommandContext(in nsISupports aCommandContext)

From nsIDOMNSFeatureFactory

 @param object: usually either nsIDOMNode or nsIDOMDOMImplementation
 @param feature: the name of the feature
 @param version: the version of the feature
nsISupports getFeature(in nsISupports object, in DOMString feature, in DOMString version)
 @param object: usually either nsIDOMNode or nsIDOMDOMImplementation
 @param feature: the name of the feature
 @param version: the version of the feature
boolean hasFeature(in nsISupports object, in DOMString feature, in DOMString version)

From nsIDOMNSXPathExpression

 Evaluate the expression with the given context. Similar to
 nsIDOMXPathExpression::evaluate(), except that this takes the context
 position and size too.

 @param contextNode       The context node
 @param contextPosition   The context position
 @param contextSize       The context size
 @param type              The needed result type
 @param result            The result
nsISupports evaluateWithContext(in nsIDOMNode contextNode, in unsigned long contextPosition, in unsigned long contextSize, in unsigned short type, in nsISupports result)

From nsIDOMWindowInternal


          
[noscript] nsIDOMWindow openDialog(in DOMString url, in DOMString name, in DOMString options, in nsISupports aExtraArgument)

From nsIDOMXPathEvaluator


          
nsISupports evaluate(in DOMString expression, in nsIDOMNode contextNode, in nsIDOMXPathNSResolver resolver, in unsigned short type, in nsISupports result)

From nsIDOMXPathExpression


          
nsISupports evaluate(in nsIDOMNode contextNode, in unsigned short type, in nsISupports result)

From nsIDictionary

 Add the key-value pair to the dictionary.
 If the key is already present, replace the old value
 with the new.

 @param key       The key by which the value can be accessed
 @param value     The value to be stored.
void setValue(in string key, in nsISupports value)

From nsIDirIndexListener

 Called for each directory entry

 @param request - the request
 @param ctxt - opaque parameter
 @param index - new index to add
void onIndexAvailable(in nsIRequest aRequest, in nsISupports aCtxt, in nsIDirIndex aIndex)
 Called for each information line

 @param request - the request
 @param ctxt - opaque parameter
 @param info - new info to add
void onInformationAvailable(in nsIRequest aRequest, in nsISupports aCtxt, in AString aInfo)

From nsIDocShell

 Loads the given URI.  This method is identical to loadURI(...) except
 that its parameter list is broken out instead of being packaged inside
 of an nsIDocShellLoadInfo object...

 @param aURI            - The URI to load.
 @param aReferrer       - Referring URI
 @param aOwner          - Owner (security principal) 
 @param aInheritOwner   - Flag indicating whether the owner of the current
                          document should be inherited if aOwner is null.
 @param aStopActiveDoc  - Flag indicating whether loading the current
                          document should be stopped.
 @param aWindowTarget   - Window target for the load.
 @param aTypeHint       - A hint as to the content-type of the resulting
                          data.  May be null or empty if no hint.
 @param aPostDataStream - Post data stream (if POSTing)
 @param aHeadersStream  - Stream containing "extra" request headers...
 @param aLoadFlags      - Flags to modify load behaviour. Flags are defined
                          in nsIWebNavigation.
 @param aSHEntry        - Active Session History entry (if loading from SH)
[noscript] void internalLoad(in nsIURI aURI, in nsIURI aReferrer, in nsISupports aOwner, in PRUint32 aFlags, in wstring aWindowTarget, in string aTypeHint, in nsIInputStream aPostDataStream, in nsIInputStream aHeadersStream, in unsigned long aLoadFlags, in nsISHEntry aSHEntry, in boolean firstParty, out nsIDocShell aDocShell, out nsIRequest aRequest)

From nsIDocShellTreeItem


          
nsIDocShellTreeItem findItemWithName(in wstring name, in nsISupports aRequestor, in nsIDocShellTreeItem aOriginalRequestor)

From nsIDocumentLoaderFactory


          
nsIContentViewer createInstance(in string aCommand, in nsIChannel aChannel, in nsILoadGroup aLoadGroup, in string aContentType, in nsISupports aContainer, in nsISupports aExtraInfo, out nsIStreamListener aDocListenerResult)

          
nsIContentViewer createInstanceForDocument(in nsISupports aContainer, in nsIDocument aDocument, in string aCommand)

          
nsIContentViewer createInstance(in string aCommand, in nsIChannel aChannel, in nsILoadGroup aLoadGroup, in string aContentType, in nsISupports aContainer, in nsISupports aExtraInfo, out nsIStreamListener aDocListenerResult)

From nsIDownloadObserver

 Called to signal a download that has completed.
void onDownloadComplete(in nsIDownloader downloader, in nsIRequest request, in nsISupports ctxt, in nsresult status, in nsIFile result)

From nsIExpatSink

 Called to handle the doctype declaration
void HandleDoctypeDecl(in AString aSubset, in AString aName, in AString aSystemId, in AString aPublicId, in nsISupports aCatalogData)

From nsIFactory

 Creates an instance of a component.

 @param aOuter Pointer to a component that wishes to be aggregated
               in the resulting instance. This will be nsnull if no
               aggregation is requested.
 @param iid    The IID of the interface being requested in
               the component which is being currently created.
 @param result [out] Pointer to the newly created instance, if successful.
 @return NS_OK - Component successfully created and the interface 
                 being requested was successfully returned in result.
         NS_NOINTERFACE - Interface not accessible.
         NS_ERROR_NO_AGGREGATION - if an 'outer' object is supplied, but the
                                   component is not aggregatable.
         NS_ERROR* - Method failure.
void createInstance(in nsISupports aOuter, in nsIIDRef iid, [retval, iid_is(iid)] out nsQIResult result)

From nsIFastLoadFileControl


          
void endMuxedDocument(in nsISupports aURI)

          
nsISupports selectMuxedDocument(in nsISupports aURI)
 Multiplexed document control methods.  A FastLoad file may contain
 multiple interleaved documents identified by a URI specifier string,
 and indexed for fast multiplexor select by an opaque URI object key.
 You StartMuxedDocument when initiating a document load, then Select
 before every batch of calls to (de)serialize document data, and End
 when the load completes.

 Document multiplexing is necessary to support incremental FastLoad
 development in a non-blocking i/o architecture such as Mozilla, where
 some (but not all, at first, or for a while during development) of the
 results of parsing and compiling various inputs can be multiplexed to
 or from a FastLoad file.

 Note: Select returns the previously selected URI object in case the
 caller is synchronously selecting and writing data to the FastLoad
 file, so the caller can reselect the previous URI and return to code
 the continues to write FastLoad data for the previous URI, unaware of
 the nested select/write/reselect.
void startMuxedDocument(in nsISupports aURI, in string aURISpec)

From nsIFastLoadService


          
[noscript] void getFastLoadReferent(inout nsISupports aPtr)

          
[noscript] void readFastLoadPtr(in nsIObjectInputStream aInputStream, inout nsISupports aPtr)

          
[noscript] void writeFastLoadPtr(in nsIObjectOutputStream aOutputStream, in nsISupports aPtr)

          
void endMuxedDocument(in nsISupports aURI)

          
nsISupports selectMuxedDocument(in nsISupports aURI)
 These methods associate a URI object with its spec, for faster select
 using the object pointer as a key, rather than the spec string.  The
 selectMuxedDocument method returns the previously selected URI object,
 in case a caller needs to reselect the previous after muxing data for
 a given URI synchronously.  For the non-blocking or "asynchronous" i/o
 case, the caller must select the source URI from the FastLoad multiplex
 before writing a new burst of data parsed from the slow-loaded source.

 Clients of inputStream and outputStream should try to demultiplex data
 from the input stream only if fastLoadService->StartMuxedDocument(uri,
 urispec, NS_FASTLOAD_READ) succeeds.  If StartMuxedDocument fails with
 NS_ERROR_NOT_AVAILABLE, callers should slow-load the documents, muxing
 their data to the current output stream.
void startMuxedDocument(in nsISupports aURI, in string aURISpec, in PRInt32 aDirectionFlags)

From nsIFlavorDataProvider

 Retrieve the data from this data provider.

 @param  aTransferable (in parameter) the transferable we're being called for.
 @param  aFlavor (in parameter) the flavor of data to retrieve
 @param  aData the data. Some variant of class in nsISupportsPrimitives.idl
 @param  aDataLen the length of the data
void getFlavorData(in nsITransferable aTransferable, in string aFlavor, out nsISupports aData, out unsigned long aDataLen)

From nsIFormatConverter

 Converts from one flavor to another.

 @param  aFromFormatConverter flavor to convert from
 @param  aFromFormatConverter flavor to convert to (destination own the memory)
 @returns returns NS_OK if it was converted
void convert(in string aFromDataFlavor, in nsISupports aFromData, in unsigned long aDataLen, in string aToDataFlavor, out nsISupports aToData, out unsigned long aDataToLen)
 Converts from one flavor to another.

 @param  aFromFormatConverter flavor to convert from
 @param  aFromFormatConverter flavor to convert to (destination own the memory)
 @returns returns NS_OK if it was converted
void convert(in string aFromDataFlavor, in nsISupports aFromData, in unsigned long aDataLen, in string aToDataFlavor, out nsISupports aToData, out unsigned long aDataToLen)

From nsIForwardIterator

 Put |anElementToPut| into the underlying container or sequence at the position currently pointed to by this iterator.
 The iterator and the underlying container or sequence cooperate to |Release()|
 the replaced element, if any and if necessary, and to |AddRef()| the new element.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anElementToPut the element to place into the underlying container or sequence
void putElement(in nsISupports anElementToPut)
 Test if |anotherIterator| points to the same position in the underlying container or sequence.

 The result is undefined if |anotherIterator| was not created by or for the same underlying container or sequence.

 @param anotherIterator another iterator to compare against, created by or for the same underlying container or sequence
 @result true if |anotherIterator| points to the same position in the underlying container or sequence
boolean isEqualTo(in nsISupports anotherIterator)

From nsIHelperAppLauncherDialog


          
void show(in nsIHelperAppLauncher aLauncher, in nsISupports aContext, in unsigned long aReason)

          
nsILocalFile promptForSaveToFile(in nsIHelperAppLauncher aLauncher, in nsISupports aWindowContext, in wstring aDefaultFile, in wstring aSuggestedFileExtension)

From nsIHttpActivityObserver

 observe activity from the http transport

 @param aHttpChannel
        nsISupports interface for the the http channel that
        generated this activity
 @param aActivityType
        The value of this aActivityType will be one of
          ACTIVITY_TYPE_SOCKET_TRANSPORT or
          ACTIVITY_TYPE_HTTP_TRANSACTION
 @param aActivitySubtype
        The value of this aActivitySubtype, will be depend
        on the value of aActivityType. When aActivityType
        is ACTIVITY_TYPE_SOCKET_TRANSPORT
          aActivitySubtype will be one of the
          nsISocketTransport::STATUS_???? values defined in
          nsISocketTransport.idl
        OR when aActivityType
        is ACTIVITY_TYPE_HTTP_TRANSACTION
          aActivitySubtype will be one of the
          nsIHttpActivityObserver::ACTIVITY_SUBTYPE_???? values
          defined below
 @param aTimestamp
        microseconds past the epoch of Jan 1, 1970
 @param aExtraSizeData
        Any extra size data optionally available with
        this activity
 @param aExtraStringData
        Any extra string data optionally available with
        this activity
void observeActivity(in nsISupports aHttpChannel, in PRUint32 aActivityType, in PRUint32 aActivitySubtype, in PRTime aTimestamp, in PRUint64 aExtraSizeData, in ACString aExtraStringData)

From nsIHttpAuthenticator

 Upon receipt of a server challenge, this function is called to determine
 whether or not the current user identity has been rejected.  If true,
 then the user will be prompted by the channel to enter (or revise) their
 identity.  Following this, generateCredentials will be called.

 If the IDENTITY_IGNORED auth flag is set, then the aInvalidateIdentity
 return value will be ignored, and user prompting will be suppressed.

 @param aChannel
        the http channel that received the challenge.
 @param aChallenge
        the challenge from the WWW-Authenticate/Proxy-Authenticate
        server response header.  (possibly from the auth cache.)
 @param aProxyAuth
        flag indicating whether or not aChallenge is from a proxy.
 @param aSessionState
        see description below for generateCredentials.
 @param aContinuationState
        see description below for generateCredentials.
 @param aInvalidateIdentity
        return value indicating whether or not to prompt the user for a
        revised identity.
void challengeReceived(in nsIHttpChannel aChannel, in string aChallenge, in boolean aProxyAuth, inout nsISupports aSessionState, inout nsISupports aContinuationState, out boolean aInvalidatesIdentity)
 Called to generate the authentication credentials for a particular
 server/proxy challenge.  This is the value that will be sent back
 to the server via an Authorization/Proxy-Authorization header.

 This function may be called using a cached challenge provided the
 authenticator sets the REUSABLE_CHALLENGE flag.

 @param aChannel
        the http channel requesting credentials
 @param aChallenge
        the challenge from the WWW-Authenticate/Proxy-Authenticate
        server response header.  (possibly from the auth cache.)
 @param aProxyAuth
        flag indicating whether or not aChallenge is from a proxy.
 @param aDomain
        string containing the domain name (if appropriate)
 @param aUser
        string containing the user name
 @param aPassword
        string containing the password
 @param aSessionState
        state stored along side the user's identity in the auth cache
        for the lifetime of the browser session.  if a new auth cache
        entry is created for this challenge, then this parameter will
        be null.  on return, the result will be stored in the new auth
        cache entry.  this parameter is non-null when an auth cache entry
        is being reused.
 @param aContinuationState
        state held by the channel between consecutive calls to
        generateCredentials, assuming multiple calls are required
        to authenticate.  this state is held for at most the lifetime of
        the channel.
string generateCredentials(in nsIHttpChannel aChannel, in string aChallenge, in boolean aProxyAuth, in wstring aDomain, in wstring aUser, in wstring aPassword, inout nsISupports aSessionState, inout nsISupports aContinuationState)
 Upon receipt of a server challenge, this function is called to determine
 whether or not the current user identity has been rejected.  If true,
 then the user will be prompted by the channel to enter (or revise) their
 identity.  Following this, generateCredentials will be called.

 If the IDENTITY_IGNORED auth flag is set, then the aInvalidateIdentity
 return value will be ignored, and user prompting will be suppressed.

 @param aChannel
        the http channel that received the challenge.
 @param aChallenge
        the challenge from the WWW-Authenticate/Proxy-Authenticate
        server response header.  (possibly from the auth cache.)
 @param aProxyAuth
        flag indicating whether or not aChallenge is from a proxy.
 @param aSessionState
        see description below for generateCredentials.
 @param aContinuationState
        see description below for generateCredentials.
 @param aInvalidateIdentity
        return value indicating whether or not to prompt the user for a
        revised identity.
void challengeReceived(in nsIHttpChannel aChannel, in string aChallenge, in boolean aProxyAuth, inout nsISupports aSessionState, inout nsISupports aContinuationState, out boolean aInvalidatesIdentity)
 Called to generate the authentication credentials for a particular
 server/proxy challenge.  This is the value that will be sent back
 to the server via an Authorization/Proxy-Authorization header.

 This function may be called using a cached challenge provided the
 authenticator sets the REUSABLE_CHALLENGE flag.

 @param aChannel
        the http channel requesting credentials
 @param aChallenge
        the challenge from the WWW-Authenticate/Proxy-Authenticate
        server response header.  (possibly from the auth cache.)
 @param aProxyAuth
        flag indicating whether or not aChallenge is from a proxy.
 @param aDomain
        string containing the domain name (if appropriate)
 @param aUser
        string containing the user name
 @param aPassword
        string containing the password
 @param aSessionState
        state stored along side the user's identity in the auth cache
        for the lifetime of the browser session.  if a new auth cache
        entry is created for this challenge, then this parameter will
        be null.  on return, the result will be stored in the new auth
        cache entry.  this parameter is non-null when an auth cache entry
        is being reused.
 @param aContinuationState
        state held by the channel between consecutive calls to
        generateCredentials, assuming multiple calls are required
        to authenticate.  this state is held for at most the lifetime of
        the channel.
string generateCredentials(in nsIHttpChannel aChannel, in string aChallenge, in boolean aProxyAuth, in wstring aDomain, in wstring aUser, in wstring aPassword, inout nsISupports aSessionState, inout nsISupports aContinuationState)

From nsIIncrementalDownload

 Start the incremental download.

 @param observer
        An observer to be notified of various events.  OnStartRequest is
        called when finalURI and totalSize have been determined or when an
        error occurs.  OnStopRequest is called when the file is completely
        downloaded or when an error occurs.  If this object implements
        nsIProgressEventSink, then its OnProgress method will be called as
        data is written to the destination file.  If this object implements
        nsIInterfaceRequestor, then it will be assigned as the underlying
        channel's notification callbacks, which allows it to provide a
        nsIAuthPrompt implementation if needed by the channel, for example.
 @param ctxt
        User defined object forwarded to the observer's methods.
void start(in nsIRequestObserver observer, in nsISupports ctxt)

From nsIInputIterator

 Test if |anotherIterator| points to the same position in the underlying container or sequence.

 The result is undefined if |anotherIterator| was not created by or for the same underlying container or sequence.

 @param anotherIterator another iterator to compare against, created by or for the same underlying container or sequence
 @result true if |anotherIterator| points to the same position in the underlying container or sequence
boolean isEqualTo(in nsISupports anotherIterator)

From nsIInputStreamPump

 asyncRead causes the input stream to be read in chunks and delivered
 asynchronously to the listener via OnDataAvailable.

 @param aListener
        receives notifications.
 @param aListenerContext
        passed to listener methods.
void asyncRead(in nsIStreamListener aListener, in nsISupports aListenerContext)

From nsILoadGroup

 Adds a new request to the group.  This will cause the default load
 flags to be applied to the request.  If this is a foreground
 request then the groupObserver's onStartRequest will be called.

 If the request is the default load request or if the default load
 request is null, then the load group will inherit its load flags from
 the request.
void addRequest(in nsIRequest aRequest, in nsISupports aContext)
 Removes a request from the group.  If this is a foreground request
 then the groupObserver's onStopRequest will be called.
void removeRequest(in nsIRequest aRequest, in nsISupports aContext, in nsresult aStatus)

From nsIMicrosummaryService

 Get the set of microsummaries available for a given page.  The set
 might change after this method returns, since this method will trigger
 an asynchronous load of the page in question (if it isn't already loaded)
 to see if it references any page-specific microsummaries.

 If the caller passes a bookmark ID, and one of the microsummaries
 is the current one for the bookmark, this method will retrieve content
 from the datastore for that microsummary, which is useful when callers
 want to display a list of microsummaries for a page that isn't loaded,
 and they want to display the actual content of the selected microsummary
 immediately (rather than after the content is asynchronously loaded).

 @param   pageURI
          the URI of the page for which to retrieve available microsummaries

 @param   bookmarkID (optional)
          the ID of the bookmark for which this method is being called

 @returns an nsIMicrosummarySet of nsIMicrosummaries for the given page

nsIMicrosummarySet getMicrosummaries(in nsIURI pageURI, in nsISupports bookmarkID)
 Get the current microsummary for the given bookmark.

 @param   bookmarkID
          the bookmark for which to get the current microsummary

 @returns the current microsummary for the bookmark, or null
          if the bookmark does not have a current microsummary

nsIMicrosummary getMicrosummary(in nsISupports bookmarkID)
 Whether or not the given bookmark has a current microsummary.

 @param   bookmarkID
          the bookmark for which to set the current microsummary

 @returns a boolean representing whether or not the given bookmark
          has a current microsummary

boolean hasMicrosummary(in nsISupports bookmarkID)
 Whether or not the given microsummary is the current microsummary
 for the given bookmark.

 @param   bookmarkID
          the bookmark to check

 @param   microsummary
          the microsummary to check

 @returns whether or not the microsummary is the current one
          for the bookmark

boolean isMicrosummary(in nsISupports bookmarkID, in nsIMicrosummary microsummary)
 Refresh a microsummary, updating its value in the datastore and UI.
 If this method can refresh the microsummary instantly, it will.
 Otherwise, it'll asynchronously download the necessary information
 (the generator and/or page) before refreshing the microsummary.

 Callers should check the "content" property of the returned microsummary
 object to distinguish between sync and async refreshes.  If its value
 is "null", then it's an async refresh, and the caller should register
 itself as an nsIMicrosummaryObserver via nsIMicrosummary.addObserver()
 to find out when the refresh completes.

 @param   bookmarkID
          the bookmark whose microsummary is being refreshed

 @returns the microsummary being refreshed

nsIMicrosummary refreshMicrosummary(in nsISupports bookmarkID)
 Remove the current microsummary for the given bookmark.

 @param   bookmarkID
          the bookmark for which to remove the current microsummary

void removeMicrosummary(in nsISupports bookmarkID)
 Set the current microsummary for the given bookmark.

 @param   bookmarkID
          the bookmark for which to set the current microsummary

 @param   microsummary
          the microsummary to set as the current one

void setMicrosummary(in nsISupports bookmarkID, in nsIMicrosummary microsummary)

From nsIMutableArray

 appendElement()
 
 Append an element at the end of the array.

 @param element The element to append.
 @param weak    Whether or not to store the element using a weak
                reference.
 @throws NS_ERROR_FAILURE when a weak reference is requested,
                          but the element does not support
                          nsIWeakReference.
void appendElement(in nsISupports element, in boolean weak)
 insertElementAt()

 Insert an element at the given position, moving the element 
 currently located in that position, and all elements in higher
 position, up by one.

 @param element The element to insert
 @param index   The position in the array:
                If the position is lower than the current length
                of the array, the elements at that position and
                onwards are bumped one position up.
                If the position is equal to the current length
                of the array, the new element is appended.
                An index lower than 0 or higher than the current
                length of the array is invalid and will be ignored.

 @throws NS_ERROR_FAILURE when a weak reference is requested,
                          but the element does not support
                          nsIWeakReference.
void insertElementAt(in nsISupports element, in unsigned long index, in boolean weak)
 replaceElementAt()

 Replace the element at the given position.

 @param element The new element to insert
 @param index   The position in the array
                If the position is lower than the current length
                of the array, an existing element will be replaced.
                If the position is equal to the current length
                of the array, the new element is appended.
                If the position is higher than the current length
                of the array, empty elements are appended followed
                by the new element at the specified position.
                An index lower than 0 is invalid and will be ignored.

 @param weak    Whether or not to store the new element using a weak
                reference.

 @throws NS_ERROR_FAILURE when a weak reference is requested,
                          but the element does not support
                          nsIWeakReference.
void replaceElementAt(in nsISupports element, in unsigned long index, in boolean weak)

From nsINativeScrollbar


          
void setContent(in nsIContent content, in nsISupports scrollbar, in nsIScrollbarMediator mediator)

From nsIObjectOutputStream

 Write the object referenced by an interface pointer at aObject that
 inherits from a non-primary nsISupports, i.e., a reference to one of
 the multiply inherited interfaces derived from an nsISupports other
 than the root or XPCOM-identity nsISupports; or a reference to an
 inner object in the case of true XPCOM aggregation.  aIID identifies
 this interface.
void writeCompoundObject(in nsISupports aObject, in nsIIDRef aIID, in PRBool aIsStrongRef)
 Write the object whose "root" or XPCOM-identity nsISupports is aObject.
 The cause for writing this object is a strong or weak reference, so the
 aIsStrongRef argument must tell which kind of pointer is being followed
 here during serialization.

 If the object has only one strong reference in the serialization and no
 weak refs, use writeSingleRefObject.  This is a valuable optimization:
 it saves space in the stream, and cycles on both ends of the process.

 If the reference being serialized is a pointer to an interface not on
 the primary inheritance chain ending in the root nsISupports, you must
 call writeCompoundObject instead of this method.
void writeObject(in nsISupports aObject, in PRBool aIsStrongRef)
 Write an object referenced singly and strongly via its root nsISupports
 or a subclass of its root nsISupports.  There must not be other refs to
 aObject in memory, or in the serialization.
void writeSingleRefObject(in nsISupports aObject)

From nsIObserver

 Observe will be called when there is a notification for the
 topic |aTopic|.  This assumes that the object implementing
 this interface has been registered with an observer service
 such as the nsIObserverService. 

 If you expect multiple topics/subjects, the impl is 
 responsible for filtering.

 You should not modify, add, remove, or enumerate 
 notifications in the implemention of observe. 

 @param aSubject : Notification specific interface pointer.
 @param aTopic   : The notification topic or subject.
 @param aData    : Notification specific wide string.
                    subject event.
void observe(in nsISupports aSubject, in string aTopic, in wstring aData)

From nsIObserverService

 notifyObservers

 Notifies all registered listeners of the given topic.

 @param aSubject : Notification specific interface pointer.
 @param aTopic   : The notification topic or subject.
 @param someData : Notification specific wide string.
void notifyObservers(in nsISupports aSubject, in string aTopic, in wstring someData)

From nsIOutputIterator

 Put |anElementToPut| into the underlying container or sequence at the position currently pointed to by this iterator.
 The iterator and the underlying container or sequence cooperate to |Release()|
 the replaced element, if any and if necessary, and to |AddRef()| the new element.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anElementToPut the element to place into the underlying container or sequence
void putElement(in nsISupports anElementToPut)

From nsIPKIParamBlock


          
void setISupportAtIndex(in long index, in nsISupports object)

From nsIPlugin

 Creates a new plugin instance, based on a MIME type. This
 allows different impelementations to be created depending on
 the specified MIME type.
void createPluginInstance(in nsISupports aOuter, in nsIIDRef aIID, in string aPluginMIMEType, [retval, iid_is(aIID)] out nsQIResult aResult)

From nsIPref


          
void setComplexValue(in string aPrefName, in nsIIDRef aType, in nsISupports aValue)

From nsIPrefBranch

 Called to set the state of an individual complex preference. A complex
 preference is a preference which represents an XPCOM object that can not
 be easily represented using a standard boolean, integer or string value.

 @param aPrefName The complex preference to set the value of.
 @param aType     The XPCOM interface that this complex preference
                  represents. Interfaces currently supported are:
                    - nsILocalFile
                    - nsISupportsString (UniChar)
                    - nsIPrefLocalizedString (Localized UniChar)
                    - nsIFileSpec (deprecated - to be removed eventually)
 @param aValue    The XPCOM object from which to set the complex preference 
                  value.

 @return NS_OK The value was successfully set.
 @return Other The value was not set or is the wrong type.

 @see getComplexValue
void setComplexValue(in string aPrefName, in nsIIDRef aType, in nsISupports aValue)

From nsIPrintProgress


          
void openProgressDialog(in nsIDOMWindowInternal parent, in string dialogURL, in nsISupports parameters, in nsIObserver openDialogObserver, out boolean notifyOnOpen)

From nsIProgressEventSink

 Called to notify the event sink that progress has occurred for the
 given request.

 @param aRequest
        the request being observed (may QI to nsIChannel).
 @param aContext
        if aRequest is a channel, then this parameter is the listener
        context passed to nsIChannel::asyncOpen.
 @param aProgress
        numeric value in the range 0 to aProgressMax indicating the
        number of bytes transfered thus far.
 @param aProgressMax
        numeric value indicating maximum number of bytes that will be
        transfered (or 0xFFFFFFFFFFFFFFFF if total is unknown).
void onProgress(in nsIRequest aRequest, in nsISupports aContext, in unsigned long long aProgress, in unsigned long long aProgressMax)
 Called to notify the event sink with a status message for the given
 request.

 @param aRequest
        the request being observed (may QI to nsIChannel).
 @param aContext
        if aRequest is a channel, then this parameter is the listener
        context passed to nsIChannel::asyncOpen.
 @param aStatus
        status code (not necessarily an error code) indicating the
        state of the channel (usually the state of the underlying
        transport).  see nsISocketTransport for socket specific status
        codes.
 @param aStatusArg
        status code argument to be used with the string bundle service
        to convert the status message into localized, human readable
        text.  the meaning of this parameter is specific to the value
        of the status code.  for socket status codes, this parameter
        indicates the host:port associated with the status code.
void onStatus(in nsIRequest aRequest, in nsISupports aContext, in nsresult aStatus, in wstring aStatusArg)

From nsIProperties

 Sets a property with a given name to a given value. 
void set(in string prop, in nsISupports value)

From nsIProxyCreateInstance


          
[noscript] void CreateInstanceByContractID(in string aContractID, in nsISupports aOuter, in nsIIDRef iid, out voidPtr result)

          
[noscript] void CreateInstanceByIID(in nsIIDRef cid, in nsISupports aOuter, in nsIIDRef iid, out voidPtr result)

From nsIProxyObjectManager


          
void getProxy(in nsIEventQueue destQueue, in nsIIDRef cid, in nsISupports aOuter, in nsIIDRef iid, in PRInt32 proxyType, [retval, iid_is(iid)] out nsQIResult result)

          
void getProxyForObject(in nsIEventQueue destQueue, in nsIIDRef iid, in nsISupports object, in PRInt32 proxyType, [retval, iid_is(iid)] out nsQIResult result)

From nsIRandomAccessIterator

 Put |anElementToPut| into the underlying container or sequence at the position currently pointed to by this iterator.
 The iterator and the underlying container or sequence cooperate to |Release()|
 the replaced element, if any and if necessary, and to |AddRef()| the new element.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anElementToPut the element to place into the underlying container or sequence
void putElement(in nsISupports anElementToPut)
 Put |anElementToPut| into the underlying container or sequence at the position |anOffset| away from that currently pointed to by this iterator.
 The iterator and the underlying container or sequence cooperate to |Release()|
 the replaced element, if any and if necessary, and to |AddRef()| the new element.
 |putElementAt(0, obj)| is equivalent to |putElement(obj)|.

 The result is undefined if this iterator currently points outside the
 useful range of the underlying container or sequence.

 @param anOffset a |0|-based offset from the position to which this iterator currently points
 @param anElementToPut the element to place into the underlying container or sequence
void putElementAt(in PRInt32 anOffset, in nsISupports anElementToPut)
 Test if |anotherIterator| points to the same position in the underlying container or sequence.

 The result is undefined if |anotherIterator| was not created by or for the same underlying container or sequence.

 @param anotherIterator another iterator to compare against, created by or for the same underlying container or sequence
 @result true if |anotherIterator| points to the same position in the underlying container or sequence
boolean isEqualTo(in nsISupports anotherIterator)

From nsIRequestObserver

 Called to signify the beginning of an asynchronous request.

 @param aRequest request being observed
 @param aContext user defined context

 An exception thrown from onStartRequest has the side-effect of
 causing the request to be canceled.
void onStartRequest(in nsIRequest aRequest, in nsISupports aContext)
 Called to signify the end of an asynchronous request.  This
 call is always preceded by a call to onStartRequest.

 @param aRequest request being observed
 @param aContext user defined context
 @param aStatusCode reason for stopping (NS_OK if completed successfully)

 An exception thrown from onStopRequest is generally ignored.
void onStopRequest(in nsIRequest aRequest, in nsISupports aContext, in nsresult aStatusCode)

From nsISAXXMLReader

 Set the value of a property. NOT CURRENTLY IMPLEMENTED.

 The property name is any fully-qualified URI.  It is possible
 for an XMLReader to recognize a property name but to be unable to
 change the current value.  Some property values may be immutable
 or mutable only in specific contexts, such as before, during, or
 after a parse.

 XMLReaders are not required to recognize setting any specific
 property names, though a core set is defined by SAX2.

 This method is also the standard mechanism for setting
 extended handlers.

 @param name String flag for a parser feature
 @param value Turn the feature on/off.
void setProperty(in AString name, in nsISupports value)

From nsISHEntry

 Additional ways to create an entry */
void create(in nsIURI URI, in AString title, in nsIInputStream inputStream, in nsILayoutHistoryState layoutHistoryState, in nsISupports cacheKey, in ACString contentType)

From nsIScriptEventHandler

 Invoke:

 Executes this script handler.

 @param aTargetObject  Object to which the script handler is bound.

 @param aArgs          Array of arguments passed to the script handler.
                       This is an array of jsvals.

 @param aArgCount      Number of elements in the aArgs array.

void Invoke(in nsISupports aTargetObject, in voidPtr aArgs, in unsigned long aArgCount)

From nsIScriptEventManager


          
void InvokeEventHandler(in nsISupports aHandler, in nsISupports aTargetObject, in voidPtr aArgs, in unsigned long aArgCount)

          
void InvokeEventHandler(in nsISupports aHandler, in nsISupports aTargetObject, in voidPtr aArgs, in unsigned long aArgCount)

From nsIScriptSecurityManager

 Return a principal with the specified certificate fingerprint, subject
 name (the full name or concatenated set of names of the entity
 represented by the certificate), pretty name, certificate, and
 codebase URI.  The certificate fingerprint and subject name MUST be
 nonempty; otherwise an error will be thrown.  Similarly, aCert must
 not be null.
[noscript] nsIPrincipal getCertificatePrincipal(in AUTF8String aCertFingerprint, in AUTF8String aSubjectName, in AUTF8String aPrettyName, in nsISupports aCert, in nsIURI aURI)

From nsISecretDecoderRingConfig


          
void setWindow(in nsISupports w)

From nsISecurityEventSink

 Fired when a security change occurs due to page transitions,
 or end document load. This interface should be called by
 a security package (eg Netscape Personal Security Manager)
 to notify nsIWebProgressListeners that security state has
 changed. State flags are in nsIWebProgressListener.idl
void onSecurityChange(in nsISupports i_Context, in unsigned long state)

From nsISocketProvider

 addToSocket

 This function is called to allow the socket provider to layer a
 PRFileDesc on top of another PRFileDesc.  For example, SSL via a SOCKS
 proxy.

 Parameters are the same as newSocket with the exception of aFileDesc,
 which is an in-param instead.
[noscript] void addToSocket(in long aFamily, in string aHost, in long aPort, in string aProxyHost, in long aProxyPort, in unsigned long aFlags, in PRFileDescStar aFileDesc, out nsISupports aSecurityInfo)
 newSocket

 @param aFamily
        The address family for this socket (PR_AF_INET or PR_AF_INET6).
 @param aHost
        The hostname for this connection.
 @param aPort
        The port for this connection.
 @param aProxyHost
        If non-null, the proxy hostname for this connection.
 @param aProxyPort
        The proxy port for this connection.
 @param aFlags
        Control flags that govern this connection (see below.)
 @param aFileDesc
        The resulting PRFileDesc.
 @param aSecurityInfo
        Any security info that should be associated with aFileDesc.  This
        object typically implements nsITransportSecurityInfo.
[noscript] void newSocket(in long aFamily, in string aHost, in long aPort, in string aProxyHost, in long aProxyPort, in unsigned long aFlags, out PRFileDescStar aFileDesc, out nsISupports aSecurityInfo)

From nsIStreamConverter

 <b>ASYNCRONOUS VERSION</b>
 Converts data arriving via the converter's nsIStreamListener::OnDataAvailable() 
 method from one type to another, pushing the converted data out to the caller 
 via aListener::OnDataAvailable().

 Use this method when you want to proxy (and convert) nsIStreamListener callbacks
 asynchronously.

 @param aFromType     The MIME type of the original/raw data.
 @param aToType       The MIME type of the converted data.
 @param aListener     The listener who receives the converted data.
 @param aCtxt         Either an opaque context, or a converter specific context
                      (implementation specific).
void asyncConvertData(in string aFromType, in string aToType, in nsIStreamListener aListener, in nsISupports aCtxt)
 <b>SYNCRONOUS VERSION</b>
 Converts a stream of one type, to a stream of another type.

 Use this method when you have a stream you want to convert.

 @param aFromStream   The stream representing the original/raw data.
 @param aFromType     The MIME type of aFromStream.
 @param aToType       The MIME type of the returned stream.
 @param aCtxt         Either an opaque context, or a converter specific context
                      (implementation specific).
 @return              The converted stream. NOTE: The returned stream may not
                      already be converted. An efficient stream converter
                      implementation will converter data on demand rather than
                      buffering the converted data until it is used.
nsIInputStream convert(in nsIInputStream aFromStream, in string aFromType, in string aToType, in nsISupports aCtxt)

From nsIStreamConverterService

 <b>ASYNCRONOUS VERSION</b>
 Retrieves a nsIStreamListener that receives the original/raw data via its
 nsIStreamListener::OnDataAvailable() callback, then converts and pushes 
 the data to aListener.

 Use this method when you want to proxy (and convert) nsIStreamListener
 callbacks asynchronously.

 @param aFromType     The MIME type of the original/raw data.
 @param aToType       The MIME type of the converted data.
 @param aListener     The listener that receives the converted data.
 @param aCtxt         Either an opaque context, or a converter specific
                      context (implementation specific).
 @return              A nsIStreamListener that receives data via its
                      OnDataAvailable() method.
nsIStreamListener asyncConvertData(in string aFromType, in string aToType, in nsIStreamListener aListener, in nsISupports aContext)
 <b>SYNCRONOUS VERSION</b>
 Converts a stream of one type, to a stream of another type.

 Use this method when you have a stream you want to convert.

 @param aFromStream   The stream representing the original/raw data.
 @param aFromType     The MIME type of aFromStream.
 @param aToType       The MIME type of the returned stream.
 @param aContext      Either an opaque context, or a converter specific
                      context (implementation specific).
 @return              The converted stream. NOTE: The returned stream
                      may not already be converted. An efficient stream
                      converter implementation will convert data on
                      demand rather than buffering the converted data
                      until it is used.
nsIInputStream convert(in nsIInputStream aFromStream, in string aFromType, in string aToType, in nsISupports aContext)

From nsIStreamListener

 Called when the next chunk of data (corresponding to the request) may
 be read without blocking the calling thread.  The onDataAvailable impl
 must read exactly |aCount| bytes of data before returning.

 @param aRequest request corresponding to the source of the data
 @param aContext user defined context
 @param aInputStream input stream containing the data chunk
 @param aOffset
        Number of bytes that were sent in previous onDataAvailable calls
        for this request. In other words, the sum of all previous count
        parameters.
        If that number is greater than or equal to 2^32, this parameter
        will be PR_UINT32_MAX (2^32 - 1).
 @param aCount number of bytes available in the stream

 NOTE: The aInputStream parameter must implement readSegments.

 An exception thrown from onDataAvailable has the side-effect of
 causing the request to be canceled.
void onDataAvailable(in nsIRequest aRequest, in nsISupports aContext, in nsIInputStream aInputStream, in unsigned long aOffset, in unsigned long aCount)

From nsIStreamLoader

 Asynchronously loads a channel into a memory buffer.

 XXX define behaviour for sizes >4 GB


 Initialize this stream loader, and start loading the data.

 @param aChannel
        A Channel to load data from. This must not be asyncOpen'd yet!
 @param aObserver
        An observer that will be notified when the data is complete.
 @param aContext
        May be null. Will be passed to the observer.

 @note Failure to open the channel will be indicated by an async callback
       to the observer.
void init(in nsIChannel aChannel, in nsIStreamLoaderObserver aObserver, in nsISupports aContext)

From nsIStreamLoaderObserver


          
void onStreamComplete(in nsIStreamLoader loader, in nsISupports ctxt, in nsresult status, in unsigned long resultLength, [const, array, size_is(resultLength)] in octet result)

From nsISupportsArray


          
void DeleteLastElement(in nsISupports aElement)

          
[notxpcom] boolean InsertElementAt(in nsISupports aElement, in unsigned long aIndex)

          
[notxpcom] boolean RemoveLastElement([const] in nsISupports aElement)

          
[notxpcom] boolean ReplaceElementAt(in nsISupports aElement, in unsigned long aIndex)

          
long GetIndexOf(in nsISupports aPossibleElement)

          
long GetIndexOfStartingAt(in nsISupports aPossibleElement, in unsigned long aStartIndex)

          
long GetLastIndexOf(in nsISupports aPossibleElement)

          
[notxpcom] long IndexOf([const] in nsISupports aPossibleElement)

          
[notxpcom] long IndexOfStartingAt([const] in nsISupports aPossibleElement, in unsigned long aStartIndex)

          
[notxpcom] long LastIndexOf([const] in nsISupports aPossibleElement)

From nsITraceRefcnt


          
void logAddCOMPtr(in voidPtr aPtr, in nsISupports aObject)

          
void logReleaseCOMPtr(in voidPtr aPtr, in nsISupports aObject)

From nsITransferable

 Returns the best flavor in the transferable, given those that have
 been added to it with |AddFlavor()|

 @param  aFlavor (out parameter) the flavor of data that was retrieved
 @param  aData the data. Some variant of class in nsISupportsPrimitives.idl
 @param  aDataLen the length of the data
void getAnyTransferData(out string aFlavor, out nsISupports aData, out unsigned long aDataLen)
 Given a flavor retrieve the data. 

 @param  aFlavor (in parameter) the flavor of data to retrieve
 @param  aData the data. Some variant of class in nsISupportsPrimitives.idl
 @param  aDataLen the length of the data
void getTransferData(in string aFlavor, out nsISupports aData, out unsigned long aDataLen)
 Sets the data in the transferable with the specified flavor. The transferable
 will maintain its own copy the data, so it is not necessary to do that beforehand.

 @param  aFlavor the flavor of data that is being set
 @param  aData the data, some variant of class in nsISupportsPrimitives.idl,
         or an nsIFlavorDataProvider (see above)
 @param  aDataLen the length of the data, or 0 if passing a nsIFlavorDataProvider
void setTransferData(in string aFlavor, in nsISupports aData, in unsigned long aDataLen)

From nsIURIChecker

 Begin asynchronous checking URI for validity.  Notification will be
 asynchronous through the nsIRequestObserver callback interface.  When
 OnStartRequest is fired, the baseChannel attribute will have been
 updated to reflect the final channel used (corresponding to any redirects
 that may have been followed).

 Our interpretations of the nsIRequestObserver status codes:
   NS_BINDING_SUCCEEDED:   link is valid
   NS_BINDING_FAILED:      link is invalid (gave an error)
   NS_BINDING_ABORTED:     timed out, or cancelled

 @param aObserver
        The object to notify when the link is verified.  We will
        call aObserver.OnStartRequest followed immediately by
        aObserver.OnStopRequest.  It is recommended that the caller use
        OnStopRequest to act on the link's status.  The underlying request
        will not be cancelled until after OnStopRequest has been called.
 @param aContext
        A closure that will be passed back to the nsIRequestObserver
        methods.
void asyncCheck(in nsIRequestObserver aObserver, in nsISupports aContext)

From nsIURILoader

 Stops an in progress load
void stop(in nsISupports aLoadCookie)

From nsIUnicharStreamListener

 Called when the next chunk of data (corresponding to the
 request) is available.

 @param aRequest request corresponding to the source of the data
 @param aContext user defined context
 @param aData the data chunk

 An exception thrown from onUnicharDataAvailable has the
 side-effect of causing the request to be canceled.
void onUnicharDataAvailable(in nsIRequest aRequest, in nsISupports aContext, in AString aData)

From nsIUnicharStreamLoader

 Initializes the unichar stream loader

 @param aChannel the channel to read data from.  This should _not_ be
        opened; the loader will open the channel itself.
 @param aObserver the observer to notify when a charset is needed and when
        the load is complete
 @param aContext an opaque context pointer
 @param aSegmentSize the size of the segments to use for the data, in bytes
void init(in nsIChannel aChannel, in nsIUnicharStreamLoaderObserver aObserver, in nsISupports aContext, in unsigned long aSegmentSize)

From nsIUnicharStreamLoaderObserver

 Called when the first full segment of data if available.

 @param aLoader the unichar stream loader
 @param aContext the aContext parameter passed to the loader's init method
 @param aFirstSegment the raw bytes of the first full data segment
 @param aLength the length of aFirstSegment

 @return charset corresponding to this stream
ACString onDetermineCharset(in nsIUnicharStreamLoader aLoader, in nsISupports aContext, [size_is(aLength)] in string aFirstSegment, in unsigned long aLength)
 Called when the entire stream has been loaded.

 @param aLoader the unichar stream loader
 @param aContext the aContext parameter passed to the loader's init method
 @param aStatus the status of the underlying channel
 @param aUnicharData the unichar input stream containing the data.  This
        can be null in some failure conditions.
void onStreamComplete(in nsIUnicharStreamLoader aLoader, in nsISupports aContext, in nsresult aStatus, in nsIUnicharInputStream aUnicharData)

From nsIWebBrowserPersist

 Save the specified URI to file.

 @param aURI       URI to save to file. Some implementations of this interface
                   may also support <CODE>nsnull</CODE> to imply the currently
                   loaded URI.
 @param aCacheKey  An object representing the URI in the cache or
                   <CODE>nsnull</CODE>.
 @param aReferrer  The referrer URI to pass with an HTTP request or
                   <CODE>nsnull</CODE>.
 @param aPostData  Post data to pass with an HTTP request or
                   <CODE>nsnull</CODE>.
 @param aExtraHeaders Additional headers to supply with an HTTP request
                   or <CODE>nsnull</CODE>.
 @param aFile      Target file. This may be a nsILocalFile object or an
                   nsIURI object with a file scheme or a scheme that
                   supports uploading (e.g. ftp).

 @see nsILocalFile
 @see nsIURI
 @see nsIInputStream

 @return NS_OK Operation has been started.
 @return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void saveURI(in nsIURI aURI, in nsISupports aCacheKey, in nsIURI aReferrer, in nsIInputStream aPostData, in string aExtraHeaders, in nsISupports aFile)
 Save the specified DOM document to file and optionally all linked files
 (e.g. images, CSS, JS & subframes). Do not call this method until the
 document has finished loading!

 @param aDocument          Document to save to file. Some implementations of
                           this interface may also support <CODE>nsnull</CODE>
                           to imply the currently loaded document.
 @param aFile              Target local file. This may be a nsILocalFile object or an
                           nsIURI object with a file scheme or a scheme that
                           supports uploading (e.g. ftp).
 @param aDataPath          Path to directory where URIs linked to the document
                           are saved or nsnull if no linked URIs should be saved.
                           This may be a nsILocalFile object or an nsIURI object
                           with a file scheme.
 @param aOutputContentType The desired MIME type format to save the 
                           document and all subdocuments into or nsnull to use
                           the default behaviour.
 @param aEncodingFlags     Flags to pass to the encoder.
 @param aWrapColumn        For text documents, indicates the desired width to
                           wrap text at. Parameter is ignored if wrapping is not
                           specified by the encoding flags.

 @see nsILocalFile
 @see nsIURI

 @return NS_OK Operation has been started.
 @return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void saveDocument(in nsIDOMDocument aDocument, in nsISupports aFile, in nsISupports aDataPath, in string aOutputContentType, in unsigned long aEncodingFlags, in unsigned long aWrapColumn)
 Save a channel to a file. It must not be opened yet.
 @see saveURI
void saveChannel(in nsIChannel aChannel, in nsISupports aFile)
 Save the specified DOM document to file and optionally all linked files
 (e.g. images, CSS, JS & subframes). Do not call this method until the
 document has finished loading!

 @param aDocument          Document to save to file. Some implementations of
                           this interface may also support <CODE>nsnull</CODE>
                           to imply the currently loaded document.
 @param aFile              Target local file. This may be a nsILocalFile object or an
                           nsIURI object with a file scheme or a scheme that
                           supports uploading (e.g. ftp).
 @param aDataPath          Path to directory where URIs linked to the document
                           are saved or nsnull if no linked URIs should be saved.
                           This may be a nsILocalFile object or an nsIURI object
                           with a file scheme.
 @param aOutputContentType The desired MIME type format to save the 
                           document and all subdocuments into or nsnull to use
                           the default behaviour.
 @param aEncodingFlags     Flags to pass to the encoder.
 @param aWrapColumn        For text documents, indicates the desired width to
                           wrap text at. Parameter is ignored if wrapping is not
                           specified by the encoding flags.

 @see nsILocalFile
 @see nsIURI

 @return NS_OK Operation has been started.
 @return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void saveDocument(in nsIDOMDocument aDocument, in nsISupports aFile, in nsISupports aDataPath, in string aOutputContentType, in unsigned long aEncodingFlags, in unsigned long aWrapColumn)
 Save the specified URI to file.

 @param aURI       URI to save to file. Some implementations of this interface
                   may also support <CODE>nsnull</CODE> to imply the currently
                   loaded URI.
 @param aCacheKey  An object representing the URI in the cache or
                   <CODE>nsnull</CODE>.
 @param aReferrer  The referrer URI to pass with an HTTP request or
                   <CODE>nsnull</CODE>.
 @param aPostData  Post data to pass with an HTTP request or
                   <CODE>nsnull</CODE>.
 @param aExtraHeaders Additional headers to supply with an HTTP request
                   or <CODE>nsnull</CODE>.
 @param aFile      Target file. This may be a nsILocalFile object or an
                   nsIURI object with a file scheme or a scheme that
                   supports uploading (e.g. ftp).

 @see nsILocalFile
 @see nsIURI
 @see nsIInputStream

 @return NS_OK Operation has been started.
 @return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void saveURI(in nsIURI aURI, in nsISupports aCacheKey, in nsIURI aReferrer, in nsIInputStream aPostData, in string aExtraHeaders, in nsISupports aFile)

From nsIWebPageDescriptor

 Tells the object to load the page specified by the page descriptor

 @return NS_OK            - 
         NS_ERROR_FAILURE - 
void loadPage(in nsISupports aPageDescriptor, in unsigned long aDisplayType)

From nsIWebServiceComplexTypeWrapper


          
void Init(in nsISupports aComplexTypeInstance, in nsIInterfaceInfo aInterfaceInfo)

From nsIWindowWatcher

 Create a new window. It will automatically be added to our list
      (via addWindow()).
      @param aParent parent window, if any. Null if no parent.  If it is
             impossible to get to an nsIWebBrowserChrome from aParent, this
             method will effectively act as if aParent were null.
      @param aURL url to which to open the new window. Must already be
             escaped, if applicable. can be null.
      @param aName window name from JS window.open. can be null.  If a window
             with this name already exists, the openWindow call may just load
             aUrl in it (if aUrl is not null) and return it.
      @param aFeatures window features from JS window.open. can be null.
      @param aArguments extra argument(s) to the new window, to be attached
             as the |arguments| property. An nsISupportsArray will be
             unwound into multiple arguments (but not recursively!).
             can be null.
      @return the new window

      @note This method may examine the JS context stack for purposes of
            determining the security context to use for the search for a given
            window named aName.
      @note This method should try to set the default charset for the new
            window to the default charset of aParent.  This is not guaranteed,
            however.
      @note This method may dispatch a "toplevel-window-ready" notification
            via nsIObserverService if the window did not already exist.
nsIDOMWindow openWindow(in nsIDOMWindow aParent, in string aUrl, in string aName, in string aFeatures, in nsISupports aArguments)

From nsIWritablePropertyBag2


          
void setPropertyAsInterface(in AString prop, in nsISupports value)

From nsIWritableVariant


          
void setAsISupports(in nsISupports aValue)

From nsIWyciwygChannel

 Set the wyciwyg channels security info
void setSecurityInfo(in nsISupports aSecurityInfo)

From nsIX509CertDB

  Export a set of certs and keys from the database to a PKCS#12 file.

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aFile Identifies a file that will be filled with the data
               to be exported.
  @param count The number of certificates to be exported.
  @param aCerts The array of all certificates to be exported.
void exportPKCS12File(in nsISupports aToken, in nsILocalFile aFile, in unsigned long count, [array, size_is(count)] in nsIX509Cert aCerts)
  Will find a certificate based on its dbkey
  retrieved by getting the dbKey attribute of
  the certificate.

  @param aDBkey Database internal key, as obtained using
                attribute dbkey in nsIX509Cert.
  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
nsIX509Cert findCertByDBKey(in string aDBkey, in nsISupports aToken)
  Find a certificate by email address.

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aEmailAddress The email address to be used as the key
                       to find the certificate.
                
  @return The matching certificate if found.
nsIX509Cert findCertByEmailAddress(in nsISupports aToken, in string aEmailAddress)
  Given a nickname and optionally a token,
  locate the matching certificate.

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aNickname The nickname to be used as the key
                   to find a certificate.
                
  @return The matching certificate if found.
nsIX509Cert findCertByNickname(in nsISupports aToken, in AString aNickname)
  Obtain a list of certificate nicknames from the database.
  What the name is depends on type:
    user, ca, or server cert - the nickname
    email cert - the email address

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aType Type of certificate to obtain
               See certificate type constants in nsIX509Cert.
  @param count The number of nicknames in the returned array
  @param certNameList The returned array of certificate nicknames.
void findCertNicknames(in nsISupports aToken, in unsigned long aType, out unsigned long count, [array, size_is(count)] out wstring certNameList)
  Import certificate(s) from file

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aFile Identifies a file that contains the certificate
               to be imported.
  @param aType Describes the type of certificate that is going to
               be imported. See type constants in nsIX509Cert.
void importCertsFromFile(in nsISupports aToken, in nsILocalFile aFile, in unsigned long aType)
  Import a PKCS#12 file containing cert(s) and key(s) into the database.

  @param aToken Optionally limits the scope of 
                this function to a token device.
                Can be null to mean any token.
  @param aFile Identifies a file that contains the data
               to be imported.
void importPKCS12File(in nsISupports aToken, in nsILocalFile aFile)

From nsIXPCException


          
void initialize(in string aMessage, in nsresult aResult, in string aName, in nsIStackFrame aLocation, in nsISupports aData, in nsIException aInner)

From nsIXPCFunctionThisTranslator


          
nsISupports TranslateThis(in nsISupports aInitialThis, in nsIInterfaceInfo aInterfaceInfo, in PRUint16 aMethodIndex, out PRBool aHideFirstParamFromJS, out nsIIDPtr aIIDOfResult)

From nsIXPCScriptable


          
void preCreate(in nsISupports nativeObj, in JSContextPtr cx, in JSObjectPtr globalObj, out JSObjectPtr parentObj)

From nsIXPCSecurityManager


          
void CanAccess(in PRUint32 aAction, in nsIXPCNativeCallContext aCallContext, in JSContextPtr aJSContext, in JSObjectPtr aJSObject, in nsISupports aObj, in nsIClassInfo aClassInfo, in JSVal aName, inout voidPtr aPolicy)
 For each of these hooks returning NS_OK means 'let the action continue'.
 Returning an error code means 'veto the action'. XPConnect will return
 JS_FALSE to the js engine if the action is vetoed. The implementor of this
 interface is responsible for setting a JS exception into the JSContext
 if that is appropriate.
void CanCreateWrapper(in JSContextPtr aJSContext, in nsIIDRef aIID, in nsISupports aObj, in nsIClassInfo aClassInfo, inout voidPtr aPolicy)

From nsIXPConnect


          
void debugDumpObject(in nsISupports aCOMObj, in short depth)
 This only succeeds if the native object is already wrapped by xpconnect.
 A new wrapper is *never* constructed.
nsIXPConnectWrappedNative getWrappedNativeOfNativeObject(in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDRef aIID)

          
nsIXPConnectJSObjectHolder initClassesWithNewWrappedGlobal(in JSContextPtr aJSContext, in nsISupports aCOMObj, in nsIIDRef aIID, in PRUint32 aFlags)

          
nsIXPConnectJSObjectHolder reparentWrappedNativeIfFound(in JSContextPtr aJSContext, in JSObjectPtr aScope, in JSObjectPtr aNewParent, in nsISupports aCOMObj)
 wrapNative will create a new JSObject or return an existing one.

 The JSObject is returned inside a refcounted nsIXPConnectJSObjectHolder.
 As long as this holder is held the JSObject will be protected from
 collection by JavaScript's garbage collector. It is a good idea to
 transfer the JSObject to some equally protected place before releasing
 the holder (i.e. use JS_SetProperty to make this object a property of
 some other JSObject).

 This method now correctly deals with cases where the passed in xpcom
 object already has an associated JSObject for the cases:
  1) The xpcom object has already been wrapped for use in the same scope
     as an nsIXPConnectWrappedNative.
  2) The xpcom object is in fact a nsIXPConnectWrappedJS and thus already
     has an underlying JSObject.
  3) The xpcom object implements nsIScriptObjectOwner; i.e. is an idlc
     style DOM object for which we can call GetScriptObject to get the
     JSObject it uses to represent itself into JavaScript.

 It *might* be possible to QueryInterface the nsIXPConnectJSObjectHolder
 returned by the method into a nsIXPConnectWrappedNative or a
 nsIXPConnectWrappedJS.

 This method will never wrap the JSObject involved in an
 XPCNativeWrapper before returning.

 Returns:
    success:
       NS_OK
    failure:
       NS_ERROR_XPC_BAD_CONVERT_NATIVE
       NS_ERROR_XPC_CANT_GET_JSOBJECT_OF_DOM_OBJECT
       NS_ERROR_FAILURE
nsIXPConnectJSObjectHolder wrapNative(in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDRef aIID)
 wrapJSAggregatedToNative is just like wrapJS except it is used in cases
 where the JSObject is also aggregated to some native xpcom Object.
 At present XBL is the only system that might want to do this.

 XXX write more!

 Returns:
   success:
     NS_OK
    failure:
       NS_ERROR_XPC_BAD_CONVERT_JS
       NS_ERROR_FAILURE
void wrapJSAggregatedToNative(in nsISupports aOuter, in JSContextPtr aJSContext, in JSObjectPtr aJSObj, in nsIIDRef aIID, [retval, iid_is(aIID)] out nsQIResult result)

From nsIXSLTProcessorObsolete


          
void transformDocument(in nsIDOMNode aSourceDOM, in nsIDOMNode aStyleDOM, in nsIDOMDocument aOutputDOC, in nsISupports aObserver)

From nsIXmlRpcClient

 Call remote method methodName asynchronously with given arguments.
 
 Supported arguments are:
 nsISupportsPRUint8, nsISupportsPRUint16,
 nsISupportsPRInt16, nsISupportsPRInt32: <i4>
 nsISupportsPRBool: <boolean>
 nsISupportsChar, nsISupportsCString: <string>
 nsISupportsFloat, nsISupportsDouble: <double>
 nsISupportsPRTime: <dateTime.iso8601>
 nsIInputStream: <base64>
 nsISupportsArray: <array>
 nsIDictionary: <struct>

 Note that both nsISupportsArray and nsIDictionary can only hold any of
 the supported input types.

 Return value will be converted as follows:
 <i4> or <int>: nsISupportsPRInt32
 <boolean>: nsISupportsPRBool
 <string>: nsISupportsCString
 <double>: nsISupportsDouble
 <dateTime.iso8601>: nsISupportsPRTime
 <base64>: nsISupportsCString
 <array>: nsISupportsArray
 <struct>: nsIDictionary

 <fault>s (server side errors) are indicated by returning
 NS_ERROR_FAILURE. Via nsIXPConnect::GetPendingException()->data a
 nsIXmlRpcFault object can be retreieved with more information on the
 fault.

 @param listener          A nsIXmlRpcClientListener that will get notified
                          of XML-RPC events.
 @param context           A context to be passed on to the listener.
 @param methodName        Remote method to call.
 @param arguments         Array of arguments to pass to remote method.
 @return                  Return value of remote method.
void asyncCall(in nsIXmlRpcClientListener listener, in nsISupports ctxt, in string methodName, [array, size_is(count)] in nsISupports arguments, in PRUint32 count)
 Call remote method methodName asynchronously with given arguments.
 
 Supported arguments are:
 nsISupportsPRUint8, nsISupportsPRUint16,
 nsISupportsPRInt16, nsISupportsPRInt32: <i4>
 nsISupportsPRBool: <boolean>
 nsISupportsChar, nsISupportsCString: <string>
 nsISupportsFloat, nsISupportsDouble: <double>
 nsISupportsPRTime: <dateTime.iso8601>
 nsIInputStream: <base64>
 nsISupportsArray: <array>
 nsIDictionary: <struct>

 Note that both nsISupportsArray and nsIDictionary can only hold any of
 the supported input types.

 Return value will be converted as follows:
 <i4> or <int>: nsISupportsPRInt32
 <boolean>: nsISupportsPRBool
 <string>: nsISupportsCString
 <double>: nsISupportsDouble
 <dateTime.iso8601>: nsISupportsPRTime
 <base64>: nsISupportsCString
 <array>: nsISupportsArray
 <struct>: nsIDictionary

 <fault>s (server side errors) are indicated by returning
 NS_ERROR_FAILURE. Via nsIXPConnect::GetPendingException()->data a
 nsIXmlRpcFault object can be retreieved with more information on the
 fault.

 @param listener          A nsIXmlRpcClientListener that will get notified
                          of XML-RPC events.
 @param context           A context to be passed on to the listener.
 @param methodName        Remote method to call.
 @param arguments         Array of arguments to pass to remote method.
 @return                  Return value of remote method.
void asyncCall(in nsIXmlRpcClientListener listener, in nsISupports ctxt, in string methodName, [array, size_is(count)] in nsISupports arguments, in PRUint32 count)

From nsIXmlRpcClientListener

 Called when a transport or other error occurs.

 @param client    The originating XML-RPC client.
 @param context   The context passed in to the asyncCall method.
 @param status    The status code of the error.
 @param errorMsg  A human readable error message.
void onError(in nsIXmlRpcClient client, in nsISupports ctxt, in nsresult status, in wstring errorMsg)
 Called when the XML-RPC server returned a Fault

 @param client    The originating XML-RPC client.
 @param context   The context passed in to the asyncCall method.
 @param fault     The XML-RPC fault as returned by the server.
void onFault(in nsIXmlRpcClient client, in nsISupports ctxt, in nsIXmlRpcFault fault)
 Called when XML-RPC call has succeeded.

 @param client    The originating XML-RPC client.
 @param context   The context passed in to the asyncCall method.
 @param result    The result of the XML-RPC call.
void onResult(in nsIXmlRpcClient client, in nsISupports ctxt, in nsISupports result)
 Called when XML-RPC call has succeeded.

 @param client    The originating XML-RPC client.
 @param context   The context passed in to the asyncCall method.
 @param result    The result of the XML-RPC call.
void onResult(in nsIXmlRpcClient client, in nsISupports ctxt, in nsISupports result)

From nsPICertNotification


          
void onCertAvailable(in nsIURI aURI, in nsISupports aContext, in PRUint32 aStatus, in nsIPrincipal aPrincipal)