Struct xpcom::interfaces::nsINestedURI
[−]
[src]
#[repr(C)]pub struct nsINestedURI { /* fields omitted */ }
interface nsINestedURI : nsISupports
/**
* nsINestedURI is an interface that must be implemented by any nsIURI
* implementation which has an "inner" URI that it actually gets data
* from.
*
* For example, if URIs for the scheme "sanitize" have the structure:
*
* sanitize:http://example.com
*
* and opening a channel on such a sanitize: URI gets the data from
* http://example.com, sanitizes it, and returns it, then the sanitize: URI
* should implement nsINestedURI and return the http://example.com URI as its
* inner URI.
*/
Methods
impl nsINestedURI
[src]
pub fn coerce<T: nsINestedURICoerce>(&self) -> &T
[src]
Cast this nsINestedURI
to one of its base interfaces.
impl nsINestedURI
[src]
pub unsafe fn GetInnerURI(&self, aInnerURI: *mut *const nsIURI) -> nsresult
[src]
/**
* The inner URI for this nested URI. This must not return null if the
* getter succeeds; URIs that have no inner must not QI to this interface.
* Dynamically changing whether there is an inner URI is not allowed.
*
* Modifying the returned URI must not in any way modify the nested URI; this
* means the returned URI must be either immutable or a clone.
*/
readonly attribute nsIURI innerURI;
pub unsafe fn GetInnermostURI(
&self,
aInnermostURI: *mut *const nsIURI
) -> nsresult
[src]
&self,
aInnermostURI: *mut *const nsIURI
) -> nsresult
/**
* The innermost URI for this nested URI. This must not return null if the
* getter succeeds. This is equivalent to repeatedly calling innerURI while
* the returned URI QIs to nsINestedURI.
*
* Modifying the returned URI must not in any way modify the nested URI; this
* means the returned URI must be either immutable or a clone.
*/
readonly attribute nsIURI innermostURI;
Methods from Deref<Target = nsISupports>
pub fn coerce<T: nsISupportsCoerce>(&self) -> &T
[src]
Cast this nsISupports
to one of its base interfaces.
pub unsafe fn QueryInterface(
&self,
uuid: &nsIID,
result: *mut *mut c_void
) -> nsresult
[src]
&self,
uuid: &nsIID,
result: *mut *mut c_void
) -> nsresult
void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result);
pub unsafe fn AddRef(&self) -> nsrefcnt
[src]
[noscript,notxpcom] nsrefcnt AddRef ();
pub unsafe fn Release(&self) -> nsrefcnt
[src]
[noscript,notxpcom] nsrefcnt Release ();
Trait Implementations
impl XpCom for nsINestedURI
[src]
const IID: nsIID
IID: nsIID = nsID(1843578996, 31084, 18111, [181, 127, 13, 123, 215, 214, 202, 176])
fn query_interface<T: XpCom>(&self) -> Option<RefPtr<T>>
[src]
Perform a QueryInterface call on this object, attempting to dynamically cast it to the requested interface type. Returns Some(RefPtr) if the cast succeeded, and None otherwise. Read more
impl RefCounted for nsINestedURI
[src]
unsafe fn addref(&self)
[src]
Increment the reference count.
unsafe fn release(&self)
[src]
Decrement the reference count, potentially freeing backing memory.
impl Deref for nsINestedURI
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.