Struct xpcom::interfaces::nsIScriptChannel
[−]
[src]
#[repr(C)]pub struct nsIScriptChannel { /* fields omitted */ }
interface nsIScriptChannel : nsISupports
/**
* An interface representing a channel which will have to execute some sort of
* program provided via its URI to compute the data it should return.
*
* If a channel implements this interface, the execution of the program in
* question will be restricted in the following ways:
*
* - If the channel does not have an owner principal, the program will not be
* executed at all, no matter what. This is necessary because in this
* circumstance we have no way to tell whether script execution is allowed at
* all for the originating security context of this channel.
* - If the channel has an owner principal, how it is executed is controlled by
* this interface. However if the owner principal does not subsume the
* principal of the environment in which the program is to be executed the
* execution will be forced to happen in a sandbox.
*/
Methods
impl nsIScriptChannel
[src]
pub fn coerce<T: nsIScriptChannelCoerce>(&self) -> &T
[src]
Cast this nsIScriptChannel
to one of its base interfaces.
impl nsIScriptChannel
[src]
pub const NO_EXECUTION: i64
NO_EXECUTION: i64 = 0
/**
* Possible ways of executing the program.
*/
/**
* Don't execute at all.
*/
pub const EXECUTE_NORMAL: i64
EXECUTE_NORMAL: i64 = 2
/**
* There used to be an EXECUTE_IN_SANDBOX = 1 value. It has been removed, but
* we're not changing the value of EXECUTE_NORMAL to avoid breaking compat.
*/
/**
* Execute against the target environment if the principals allow it.
*/
pub unsafe fn GetExecutionPolicy(
&self,
aExecutionPolicy: *mut uint32_t
) -> nsresult
[src]
&self,
aExecutionPolicy: *mut uint32_t
) -> nsresult
/**
* Whether and how the program represented by this channel is to be executed.
* The default value if this property has never been set on this channel MUST
* be either EXECUTE_IN_SANDBOX or NO_EXECUTION.
*
* @throws NS_ERROR_INVALID_ARG when set to an unrecognized value.
*/
attribute unsigned long executionPolicy;
pub unsafe fn SetExecutionPolicy(&self, aExecutionPolicy: uint32_t) -> nsresult
[src]
/**
* Whether and how the program represented by this channel is to be executed.
* The default value if this property has never been set on this channel MUST
* be either EXECUTE_IN_SANDBOX or NO_EXECUTION.
*
* @throws NS_ERROR_INVALID_ARG when set to an unrecognized value.
*/
attribute unsigned long executionPolicy;
pub unsafe fn GetExecuteAsync(&self, aExecuteAsync: *mut bool) -> nsresult
[src]
/**
* Control whether the program should be executed synchronosly when
* the channel's AsyncOpen method is called or whether it should be
* executed asynchronously. In both cases, any data that the
* channel returns will be returned asynchronously; the only thing
* this property affects is when the program executes.
*
* The default value of this property is TRUE.
*
* Setting this property after asyncOpen has been called on the
* channel has no effect.
*/
attribute boolean executeAsync;
pub unsafe fn SetExecuteAsync(&self, aExecuteAsync: bool) -> nsresult
[src]
/**
* Control whether the program should be executed synchronosly when
* the channel's AsyncOpen method is called or whether it should be
* executed asynchronously. In both cases, any data that the
* channel returns will be returned asynchronously; the only thing
* this property affects is when the program executes.
*
* The default value of this property is TRUE.
*
* Setting this property after asyncOpen has been called on the
* channel has no effect.
*/
attribute boolean executeAsync;
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 nsIScriptChannel
[src]
const IID: nsIID
IID: nsIID = nsID(857951129, 38280, 19581, [157, 166, 134, 184, 183, 203, 165, 101])
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 nsIScriptChannel
[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 nsIScriptChannel
[src]
type Target = nsISupports
The resulting type after dereferencing.
fn deref(&self) -> &nsISupports
[src]
Dereferences the value.