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, so 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
 The same as above but accessing the offline app cache token if there
 is any.

 @throws
      NS_ERROR_NOT_AVAILABLE when there is not offline cache token
attribute nsISupports offlineCacheToken

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
 Get the owner, if any, that was associated with the channel
 that the document that was loaded to create this history entry
 came from.
attribute nsISupports owner
 Saved state of the global window object */
attribute nsISupports windowState

From nsISSLStatusProvider


          
readonly attribute nsISupports SSLStatus

From nsISecurityInfoProvider

 The security info for this provider, if any.
readonly attribute nsISupports securityInfo

From nsISocketTransport

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

 This attribute is only available once the socket is connected.
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 nsIWorkerMessageEvent


          
readonly attribute nsISupports source

From nsIXPCWrappedJSObjectGetter


          
readonly attribute nsISupports neverCalled

From nsIXPConnectWrappedNative


          
readonly attribute nsISupports Native

From nsIXTFPrivate


          
readonly attribute nsISupports inner

From nsIXULTemplateBuilder

 The opaque datasource object that is used for the template. This object
 is created by the getDataSource method of the query processor. May be
 null if the datasource has not been loaded yet. Set this attribute to
 use a different datasource and rebuild the template.

 For an RDF datasource, this will be the same as the database. For XML
 this will be the nsIDOMNode for the datasource document or node for
 an inline reference (such as #name). Other query processors may use
 other types for the datasource.
attribute nsISupports datasource

From txIFunctionEvaluationContext


          
readonly attribute nsISupports state

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 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)

From nsIXULTemplateQueryProcessor

 Compile a query from a node. The result of this function will later be
 passed to generateResults for result generation. If null is returned,
 the query will be ignored.

 The template builder will call this method once for each query within
 the template, before any results can be generated using generateResults,
 but after initializeForBuilding has been called. This method should not
 be called again for the same query unless the template is rebuilt.

 The reference variable may be used by the query processor as a
 placeholder for the reference point, or starting point in the query.

 The member variable is determined from the member attribute on the
 template, or from the uri in the first action's rule if that attribute is
 not present. A rule processor may use the member variable as a hint to
 indicate what variable is expected to contain the results.

 @param aBuilder the template builder
 @param aQuery <query> node to compile
 @param aRefVariable the reference variable
 @param aMemberVariable the member variable

 @returns a compiled query object
nsISupports compileQuery(in nsIXULTemplateBuilder aBuilder, in nsIDOMNode aQuery, in nsIAtom aRefVariable, in nsIAtom aMemberVariable)
 Retrieve the datasource to use for the query processor. The list of
 datasources in a template is specified using the datasources attribute as
 a space separated list of URIs. This list is processed by the builder and
 supplied to the query processor in the aDataSources array as a list of
 nsIURI objects or nsIDOMNode objects. This method may return an object
 corresponding to these URIs and the builder will supply this object to
 other query processor methods. For example, for an XML source, the
 datasource might be an nsIDOMNode.

 All of these URIs are checked by the builder so it is safe to use them,
 however note that a URI that redirects may still needs to be checked to
 ensure that the document containing aRootNode may access it. This is the
 responsibility of the query processor if it needs to load the content of
 the URI.

 If the query processor needs to load the datasource asynchronously, it
 may set the aShouldDelayBuilding returned parameter to true to delay
 building the template content, and call the builder's Rebuild method when
 the data is available.

 @param aDataSources  the list of nsIURI objects and/or nsIDOMNode objects
 @param aRootNode     the root node the builder is attached to
 @param aIsTrusted    true if the template is in a trusted document
 @param aBuilder      the template builder
 @param aShouldDelayBuilding [out] whether the builder should wait to
                                   build the content or not
 @returns a datasource object
nsISupports getDatasource(in nsIArray aDataSources, in nsIDOMNode aRootNode, in boolean aIsTrusted, in nsIXULTemplateBuilder aBuilder, out boolean aShouldDelayBuilding)

From nsIXULTemplateResult

 Get an object value for a variable such as ?name for this result. 

 This method may return null for a variable, even if getBindingFor returns
 a non-null value for the same variable. This method is provided as a
 convenience when sorting results.

 @param aVar the variable to look up

 @return the value for the variable or null if it has no value
nsISupports getBindingObjectFor(in nsIAtom aVar)

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.
[noscript] 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.
[noscript] 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 aChannel the channel to load the image from.  This must
                 already be opened before ths method is called, and there
                 must have been no OnDataAvailable calls for it yet.   
 @param aObserver the observer
 @param cx some random data
 @param aListener [out]
        A listener that should receive the data. Can be null, in which
        case imagelib has found a cached image and is not interested in
        the data. The caller needs not cancel the channel in this case.

 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.
[noscript] imgIRequest loadImageWithChannel(in nsIChannel aChannel, in imgIDecoderObserver aObserver, in nsISupports cx, out nsIStreamListener aListener)

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 nsIAuthPrompt2

 Asynchronously prompt the user for a username and password.
 This has largely the same semantics as promptUsernameAndPassword(),
 but must return immediately after calling and return the entered
 data in a callback.

 If the user closes the dialog using a cancel button or similar,
 the callback's nsIAuthPromptCallback::onAuthCancelled method must be
 called.
 Calling nsICancelable::cancel on the returned object SHOULD close the
 dialog and MUST call nsIAuthPromptCallback::onAuthCancelled on the provided
 callback.

 @throw NS_ERROR_NOT_IMPLEMENTED
        Asynchronous authentication prompts are not supported;
        the caller should fall back to promptUsernameAndPassword().
nsICancelable asyncPromptAuth(in nsIChannel aChannel, in nsIAuthPromptCallback aCallback, in nsISupports aContext, in PRUint32 level, in nsIAuthInformation authInfo)

From nsIAuthPromptCallback

 Authentication information is available.

 @param aContext
        The context as passed to promptPasswordAsync
 @param aAuthInfo
        Authentication information. Must be the same object that was passed
        to promptPasswordAsync.

 @note  Any exceptions thrown from this method should be ignored.
void onAuthAvailable(in nsISupports aContext, in nsIAuthInformation aAuthInfo)
 Notification that the prompt was cancelled.

 @param aContext
        The context that was passed to promptPasswordAsync.
 @param userCancel
        If false, this prompt was cancelled by calling the
        the cancel method on the nsICancelable; otherwise,
        it was cancelled by the user.
void onAuthCancelled(in nsISupports aContext, in boolean userCancel)

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.  If asyncOpen returns successfully, the
 channel promises to call at least onStartRequest and onStopRequest.

 If the nsIRequest object passed to the stream listener's methods is not
 this channel, an appropriate onChannelRedirect notification needs to be
 sent to the notification callbacks before onStartRequest is called.
 Once onStartRequest is called, all following method calls on aListener
 will get the request that was passed to onStartRequest.

 If the channel's and loadgroup's notification callbacks do not provide
 an nsIChannelEventSink when onChannelRedirect would be called, that's
 equivalent to having called onChannelRedirect.

 If asyncOpen returns successfully, the channel is responsible for
 keeping itself alive until it has called onStopRequest on aListener or
 called onChannelRedirect.

 Implementations are allowed to synchronously add themselves to the
 associated load group (if any).

 NOTE: Implementations should throw NS_ERROR_ALREADY_OPENED if the
 channel is reopened.

 @param aListener the nsIStreamListener implementation
 @param aContext an opaque parameter forwarded to aListener's methods
 @see nsIChannelEventSink for onChannelRedirect
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 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_*

 @note shouldLoad can be called while the DOM and layout of the document
 involved is in an inconsistent state.  This means that implementors of
 this method MUST NOT do any of the following:
 1)  Modify the DOM in any way (e.g. setting attributes is a no-no).
 2)  Query any DOM properties that depend on layout (e.g. offset*
     properties).
 3)  Query any DOM properties that depend on style (e.g. computed style).
 4)  Query any DOM properties that depend on the current state of the DOM
     outside the "context" node (e.g. lengths of node lists).
 5)  [JavaScript implementations only] Access properties of any sort on any
     object without using XPCNativeWrapper (either explicitly or
     implicitly).  Due to various DOM0 things, this leads to item 4.
 If you do any of these things in your shouldLoad implementation, expect
 unpredictable behavior, possibly including crashes, content not showing
 up, content showing up doubled, etc.  If you need to do any of the things
 above, do them off timeout or event.
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_*

 @note shouldProcess can be called while the DOM and layout of the document
 involved is in an inconsistent state.  See the note on shouldLoad to see
 what this means for implementors of this method.
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_*

 @note shouldLoad can be called while the DOM and layout of the document
 involved is in an inconsistent state.  This means that implementors of
 this method MUST NOT do any of the following:
 1)  Modify the DOM in any way (e.g. setting attributes is a no-no).
 2)  Query any DOM properties that depend on layout (e.g. offset*
     properties).
 3)  Query any DOM properties that depend on style (e.g. computed style).
 4)  Query any DOM properties that depend on the current state of the DOM
     outside the "context" node (e.g. lengths of node lists).
 5)  [JavaScript implementations only] Access properties of any sort on any
     object without using XPCNativeWrapper (either explicitly or
     implicitly).  Due to various DOM0 things, this leads to item 4.
 If you do any of these things in your shouldLoad implementation, expect
 unpredictable behavior, possibly including crashes, content not showing
 up, content showing up doubled, etc.  If you need to do any of the things
 above, do them off timeout or event.
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_*

 @note shouldProcess can be called while the DOM and layout of the document
 involved is in an inconsistent state.  See the note on shouldLoad to see
 what this means for implementors of this method.
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.
 @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 open(in nsISupports aState, in nsISHEntry aSHEntry)

From nsIContentViewerContainer


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

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 update 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

 This method works like open except that aExtraArgument gets
 converted into the array window.arguments in JS, if
 aExtraArgument is a nsISupportsArray then the individual items in
 the array are inserted into window.arguments, and primitive
 nsISupports (nsISupportsPrimitives) types are converted to native
 JS types when possible.
[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 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

 Invoke a save-to-file dialog instead of the full fledged helper app dialog.
 Returns the a nsILocalFile for the file name/location selected.

 @param aLauncher
        A nsIHelperAppLauncher to be invoked when a file is selected.
 @param aWindowContext
        Window associated with action.
 @param aDefaultFileName
        Default file name to provide (can be null)
 @param aSuggestedFileExtension
        Sugested file extension
 @param aForcePrompt
        Set to true to force prompting the user for thet file
        name/location, otherwise perferences may control if the user is
        prompted.
nsILocalFile promptForSaveToFile(in nsIHelperAppLauncher aLauncher, in nsISupports aWindowContext, in wstring aDefaultFileName, in wstring aSuggestedFileExtension, in boolean aForcePrompt)
 Show confirmation dialog for launching application (or "save to
 disk") for content specified by aLauncher.

 @param aLauncher
        A nsIHelperAppLauncher to be invoked when a file is selected.
 @param aWindowContext
        Window associated with action.
 @param aReason
        One of the constants from above. It indicates why the dialog is
        shown. Implementors should treat unknown reasons like
        REASON_CANTHANDLE.
void show(in nsIHelperAppLauncher aLauncher, in nsISupports aWindowContext, in unsigned long aReason)

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.

 By the time this call ends, aRequest will have been removed from the
 loadgroup, even if this function throws an exception.
void removeRequest(in nsIRequest aRequest, in nsISupports aContext, in nsresult aStatus)

From nsILoginManager

 Modify an existing login in the login manager.

 @param oldLogin
        The login to be modified.
 @param newLoginData
        The new login values (either a nsILoginInfo or nsIProperyBag)

 If newLoginData is a nsILoginInfo, all of the old login's nsILoginInfo
 properties are changed to the values from newLoginData (but the old
 login's nsILoginMetaInfo properties are unmodified).

 If newLoginData is a nsIPropertyBag, only the specified properties
 will be changed. The nsILoginMetaInfo properties of oldLogin can be
 changed in this manner.
void modifyLogin(in nsILoginInfo oldLogin, in nsISupports newLoginData)

From nsILoginManagerStorage

 Modify an existing login in the storage module.

 @param oldLogin
        The login to be modified.
 @param newLoginData
        The new login values (either a nsILoginInfo or nsIProperyBag)

 If newLoginData is a nsILoginInfo, all of the old login's nsILoginInfo
 properties are changed to the values from newLoginData (but the old
 login's nsILoginMetaInfo properties are unmodified).

 If newLoginData is a nsIPropertyBag, only the specified properties
 will be changed. The nsILoginMetaInfo properties of oldLogin can be
 changed in this manner.
void modifyLogin(in nsILoginInfo oldLogin, in nsISupports newLoginData)

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 nsINavBookmarksService

 Runs the passed callback inside of a database transaction.
 Use this when a lot of things are about to change, for example
 adding or deleting a large number of bookmark items. Calls can
 be nested. Observers are notified when batches begin and end, via 
 nsINavBookmarkObserver.onBeginUpdateBatch/onEndUpdateBatch.

 @param aCallback
        nsINavHistoryBatchCallback interface to call.
 @param aUserData
        Opaque parameter passed to nsINavBookmarksBatchCallback
void runInBatchMode(in nsINavHistoryBatchCallback aCallback, in nsISupports aUserData)

From nsINavHistoryBatchCallback

 @see runInBatchMode of nsINavHistoryService/nsINavBookmarksService
void runBatched(in nsISupports aUserData)

From nsINavHistoryService

 Runs the passed callback in batch mode. Use this when a lot of things
 are about to change. Calls can be nested, observers will only be
 notified when all batches begin/end.

 @param aCallback
        nsINavHistoryBatchCallback interface to call.
 @param aUserData
        Opaque parameter passed to nsINavBookmarksBatchCallback
void runInBatchMode(in nsINavHistoryBatchCallback aCallback, in nsISupports aClosure)

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 nsIPromptService2


          
nsICancelable asyncPromptAuth(in nsIDOMWindow aParent, in nsIChannel aChannel, in nsIAuthPromptCallback aCallback, in nsISupports aContext, in PRUint32 level, in nsIAuthInformation authInfo, in wstring checkboxLabel, inout boolean checkValue)

From nsIProperties

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

From nsIProxyObjectManager

 Create a proxy for the given object.  The proxy implements the specified
 interface, but when its methods are invoked, it causes the corresponding
 method on the actual object to be called via the designated event
 target.  Typically, the event target identifies a thread where the
 method call should occur.

 @param target
   If target is null, then the current thread is used as the target.
   Otherwise, target identifies the nsIEventTarget from which proxy
   method calls should be executed.
 @param iid
   Identifies the interface being proxied.  The given object must QI to
   this type.
 @param object
   The object being proxied.
 @param proxyType
   Specifies the type of proxy to construct.  Either INVOKE_SYNC or
   INVOKE_ASYNC must be specified.  FORCE_PROXY_CREATION may be bit-wise
   OR'd with either of those flags.
 @param result
   This param holds the resulting proxy object upon successful return.
void getProxyForObject(in nsIEventTarget target, 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 */
[noscript] void create(in nsIURI URI, in AString title, in nsIInputStream inputStream, in nsILayoutHistoryState layoutHistoryState, in nsISupports cacheKey, in ACString contentType, in nsISupports owner)
 Additional ways to create an entry */
[noscript] void create(in nsIURI URI, in AString title, in nsIInputStream inputStream, in nsILayoutHistoryState layoutHistoryState, in nsISupports cacheKey, in ACString contentType, in nsISupports owner)

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>ASYNCHRONOUS 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>SYNCHRONOUS 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 nsIStreamLoaderObserver

 Called when the entire stream has been loaded.

 @param loader the stream loader that loaded the stream.
 @param ctxt the context parameter of the underlying channel
 @param status the status of the underlying channel
 @param resultLength the length of the data loaded
 @param result the data

 This method will always be called asynchronously by the
 nsIStreamLoader involved, on the thread that called the
 loader's init() method.
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, either some variant of class in nsISupportsPrimitives.idl,
         an nsIFile, 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 nsIUnicharStreamLoaderObserver

 Called when the first full segment of data if available.

 @param aLoader the unichar stream loader
 @param aContext the context parameter of the underlying channel
 @param aFirstSegment the raw bytes of the first full data segment
 @param aLength the length of aFirstSegment

 @return charset corresponding to this stream

 @note this method will only be called if the stream loader receives an
       OnDataAvailable call.
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 context parameter of the underlying channel
 @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.

 This method will always be called asynchronously by the
 nsUnicharIStreamLoader involved, on the thread that called the
 loader's init() method.

 @note If the stream loader does not receive an OnDataAvailable call,
       aUnicharData will be null, and aStatus will be a success value.
void onStreamComplete(in nsIUnicharStreamLoader aLoader, in nsISupports aContext, in nsresult aStatus, in nsIUnicharInputStream aUnicharData)

From nsIWebBrowserChrome2

 Called when the status text in the chrome needs to be updated.  This
 method may be called instead of nsIWebBrowserChrome::SetStatus.  An
 implementor of this method, should still implement SetStatus.

 @param statusType
        Indicates what is setting the text.
 @param status
        Status string.  Null is an acceptable value meaning no status.
 @param contextNode 
        An object that provides context pertaining to the status type.
        If statusType is STATUS_LINK, then statusContext may be a DOM
        node corresponding to the source of the link.  This value can
        be null if there is no context.
void setStatusWithContext(in unsigned long statusType, in AString statusText, in nsISupports statusContext)

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>.  This can be a necko cache key,
                   an nsIWebPageDescriptor, or the currentDescriptor of an
                   nsIWebPageDescriptor.
 @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>.  This can be a necko cache key,
                   an nsIWebPageDescriptor, or the currentDescriptor of an
                   nsIWebPageDescriptor.
 @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 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 nsIWorkerMessageEvent


          
void initMessageEvent(in DOMString aTypeArg, in boolean aCanBubbleArg, in boolean aCancelableArg, in DOMString aDataArg, in DOMString aOriginArg, in nsISupports aSourceArg)

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 nsAXPCNativeCallContextPtr 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)
 Same as wrapNative, but also returns the JSObject in aVal. C++ callers
 can pass in null for the aHolder argument, but in that case they must
 ensure that aVal is rooted.
 aIID may be null, it means the same as passing in
 &NS_GET_IID(nsISupports) but when passing in null certain shortcuts
 can be taken because we know without comparing IIDs that the caller is
 asking for an nsISupports wrapper.
void wrapNativeToJSVal(in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDPtr aIID, out JSVal aVal, out nsIXPConnectJSObjectHolder aHolder)
 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 nsIXULTemplateQueryProcessor

 Generate the results of a query and return them in an enumerator. The
 enumerator must contain nsIXULTemplateResult objects. If there are no
 results, an empty enumerator must be returned.

 The datasource will be the same as the one passed to the earlier
 initializeForBuilding method. The context reference (aRef) is a reference
 point used when calculating results.

 The value of aQuery must be the result of a previous call to compileQuery
 from this query processor. This method may be called multiple times,
 typically with different values for aRef.

 @param aDatasource datasource for the data
 @param aRef context reference value used as a starting point
 @param aQuery the compiled query returned from query compilation

 @returns an enumerator of nsIXULTemplateResult objects as the results

 @throws NS_ERROR_INVALID_ARG if aQuery is invalid
nsISimpleEnumerator generateResults(in nsISupports aDatasource, in nsIXULTemplateResult aRef, in nsISupports aQuery)
 Initialize for query generation. This will be called before the rules are
 processed and whenever the template is rebuilt. This method must be
 called once before any of the other query processor methods except for
 translateRef.

 @param aDatasource datasource for the data
 @param aBuilder the template builder
 @param aRootNode the root node the builder is attached to

 @throws NS_ERROR_INVALID_ARG if the datasource is not supported or
         NS_ERROR_UNEXPECTED if generateResults has already been called.
void initializeForBuilding(in nsISupports aDatasource, in nsIXULTemplateBuilder aBuilder, in nsIDOMNode aRootNode)
 Translate a ref attribute string into a result. This is used as the
 reference point by the template builder when generating the first level
 of content. For recursive generation, the result from the parent
 generation phase will be used directly as the reference so a translation
 is not needed. This allows all levels to be generated using objects that
 all implement the nsIXULTemplateResult interface.

 This method may be called before initializeForBuilding, so the
 implementation may use the supplied datasource if it is needed to
 translate the reference.

 @param aDatasource datasource for the data
 @param aRefString the ref attribute string

 @return the translated ref
nsIXULTemplateResult translateRef(in nsISupports aDatasource, in AString aRefString)
 Generate the results of a query and return them in an enumerator. The
 enumerator must contain nsIXULTemplateResult objects. If there are no
 results, an empty enumerator must be returned.

 The datasource will be the same as the one passed to the earlier
 initializeForBuilding method. The context reference (aRef) is a reference
 point used when calculating results.

 The value of aQuery must be the result of a previous call to compileQuery
 from this query processor. This method may be called multiple times,
 typically with different values for aRef.

 @param aDatasource datasource for the data
 @param aRef context reference value used as a starting point
 @param aQuery the compiled query returned from query compilation

 @returns an enumerator of nsIXULTemplateResult objects as the results

 @throws NS_ERROR_INVALID_ARG if aQuery is invalid
nsISimpleEnumerator generateResults(in nsISupports aDatasource, in nsIXULTemplateResult aRef, in nsISupports aQuery)

From nsIXULTemplateResult

 Indicate that a particular rule of a query has matched and that output
 will be generated for it. Both the query as compiled by the query
 processor's compileQuery method and the XUL <rule> element are supplied.
 The query must always be one that was compiled by the query processor
 that created this result. The <rule> element must always be a child of
 the <query> element that was used to compile the query.

 @param aQuery the query that matched
 @param aRuleNode the rule node that matched
void ruleMatched(in nsISupports aQuery, in nsIDOMNode aRuleNode)

From nsIZipWriter

 Processes all queued items until complete or some error occurs. The
 observer will be notified when the first operation starts and when the
 last operation completes. Any failures will be passed to the observer.
 The zip writer will be busy until the queue is complete or some error
 halted processing of the queue early. In the event of an early failure,
 remaining items will stay in the queue and calling processQueue will
 continue.

 @throws NS_ERROR_NOT_INITIALIZED if no zip file has been opened
 @throws NS_ERROR_IN_PROGRESS if the queue is already in progress
void processQueue(in nsIRequestObserver aObserver, in nsISupports aContext)

From nsPICertNotification


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