pub struct WebTransport { /* private fields */ }
Expand description
The WebTransport
interface.
Implementations§
Source§impl WebTransport
impl WebTransport
Sourcepub fn new(url: &str) -> Result<WebTransport, DomException>
pub fn new(url: &str) -> Result<WebTransport, DomException>
constructor(USVString url, optional WebTransportOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-webtransport
The new WebTransport(url)
constructor, creating
a new instance ofWebTransport
.
Source§impl WebTransport
impl WebTransport
Sourcepub fn new_with_options(
url: &str,
options: &WebTransportOptions,
) -> Result<WebTransport, DomException>
pub fn new_with_options( url: &str, options: &WebTransportOptions, ) -> Result<WebTransport, DomException>
constructor(USVString url, optional WebTransportOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-webtransport
The new WebTransport(url, { ... })
constructor, creating
a new instance of WebTransport
.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn get_stats(&self) -> WebTransportConnectionStats
pub async fn get_stats(&self) -> WebTransportConnectionStats
Promise<WebTransportConnectionStats> getStats();
https://w3c.github.io/webtransport/#dom-webtransport-getstats
Gathers stats for this WebTransport’s underlying connection and reports the result asynchronously.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn ready(&self) -> Result<(), DomException>
pub async fn ready(&self) -> Result<(), DomException>
readonly attribute Promise<undefined> ready;
https://w3c.github.io/webtransport/#dom-webtransport-ready
A promise fulfilled when the associated WebTransport session gets established, or rejected if the establishment process failed.
Source§impl WebTransport
impl WebTransport
Sourcepub fn reliability(&self) -> WebTransportReliabilityMode
pub fn reliability(&self) -> WebTransportReliabilityMode
readonly attribute WebTransportReliabilityMode reliability;
https://w3c.github.io/webtransport/#dom-webtransport-reliability
Whether connection supports unreliable (over UDP) transport or only reliable (over TCP fallback) transport. Returns “pending” until a connection has been established.
Source§impl WebTransport
impl WebTransport
Sourcepub fn congestion_control(&self) -> WebTransportCongestionControl
pub fn congestion_control(&self) -> WebTransportCongestionControl
readonly attribute WebTransportCongestionControl congestionControl;
https://w3c.github.io/webtransport/#dom-webtransport-congestioncontrol
The application’s preference, if requested in the constructor, and satisfied by the user agent, for a congestion control algorithm optimized for either throughput or low latency for sending on this connection. If a preference was requested but not satisfied, then the value is “default”.
Source§impl WebTransport
impl WebTransport
Sourcepub fn anticipated_concurrent_incoming_unidirectional_streams(
&self,
) -> Option<u16>
pub fn anticipated_concurrent_incoming_unidirectional_streams( &self, ) -> Option<u16>
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams;
Optionally lets an application specify the number of concurrently open
incoming unidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingUnidirectionalStreams]]
into
consideration in its negotiations with the server.
Source§impl WebTransport
impl WebTransport
Sourcepub fn set_option_anticipated_concurrent_incoming_unidirectional_streams(
&self,
val: Option<u16>,
)
pub fn set_option_anticipated_concurrent_incoming_unidirectional_streams( &self, val: Option<u16>, )
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams;
Optionally lets an application specify the number of concurrently open
incoming unidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingUnidirectionalStreams]]
into
consideration in its negotiations with the server.
Source§impl WebTransport
impl WebTransport
Sourcepub fn anticipated_concurrent_incoming_bidirectional_streams(
&self,
) -> Option<u16>
pub fn anticipated_concurrent_incoming_bidirectional_streams( &self, ) -> Option<u16>
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingBidirectionalStreams;
Optionally lets an application specify the number of concurrently open
bidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingBidirectionalStreams]]
into
consideration in its negotiations with the server.
Source§impl WebTransport
impl WebTransport
Sourcepub fn set_option_anticipated_concurrent_incoming_bidirectional_streams(
&self,
val: Option<u16>,
)
pub fn set_option_anticipated_concurrent_incoming_bidirectional_streams( &self, val: Option<u16>, )
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingBidirectionalStreams;
Optionally lets an application specify the number of concurrently open
bidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingBidirectionalStreams]]
into
consideration in its negotiations with the server.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn closed(&self) -> Result<WebTransportCloseInfo, DomException>
pub async fn closed(&self) -> Result<WebTransportCloseInfo, DomException>
readonly attribute Promise<WebTransportCloseInfo> closed;
https://w3c.github.io/webtransport/#dom-webtransport-closed
A promise fulfilled when the associated WebTransport object is closed gracefully, or rejected when it is closed abruptly or failed on initialization.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn draining(&self)
pub async fn draining(&self)
readonly attribute Promise<undefined> draining;
https://w3c.github.io/webtransport/#dom-webtransport-draining
A promise fulfilled when the associated WebTransport session receives a DRAIN_WEBTRANSPORT_SESSION capsule or a GOAWAY frame.
Source§impl WebTransport
impl WebTransport
Source§impl WebTransport
impl WebTransport
Sourcepub fn close_with_info(&self, close_info: &WebTransportCloseInfo)
pub fn close_with_info(&self, close_info: &WebTransportCloseInfo)
undefined close(optional WebTransportCloseInfo closeInfo = {});
Source§impl WebTransport
impl WebTransport
Sourcepub fn datagrams(&self) -> WebTransportDatagramDuplexStream
pub fn datagrams(&self) -> WebTransportDatagramDuplexStream
readonly attribute WebTransportDatagramDuplexStream datagrams;
https://w3c.github.io/webtransport/#dom-webtransport-datagrams
A single duplex stream for sending and receiving datagrams over this session.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn create_bidirectional_stream(
&self,
) -> Result<WebTransportBidirectionalStream, DomException>
pub async fn create_bidirectional_stream( &self, ) -> Result<WebTransportBidirectionalStream, DomException>
Promise<WebTransportBidirectionalStream> createBidirectionalStream(
optional WebTransportSendStreamOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-createbidirectionalstream
Creates a WebTransportBidirectionalStream
object for an outgoing
bidirectional stream.
Note that the mere creation of a stream is not immediately visible
to the peer until it is used to send data.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn create_bidirectional_stream_with_options(
&self,
options: WebTransportSendStreamOptions,
) -> Result<WebTransportBidirectionalStream, DomException>
pub async fn create_bidirectional_stream_with_options( &self, options: WebTransportSendStreamOptions, ) -> Result<WebTransportBidirectionalStream, DomException>
Promise<WebTransportBidirectionalStream> createBidirectionalStream(
optional WebTransportSendStreamOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-createbidirectionalstream
Creates a WebTransportBidirectionalStream
object for an outgoing
bidirectional stream.
Note that the mere creation of a stream is not immediately visible
to the peer until it is used to send data.
Source§impl WebTransport
impl WebTransport
Sourcepub fn incoming_bidirectional_streams(&self) -> ReadableStream
pub fn incoming_bidirectional_streams(&self) -> ReadableStream
/* a ReadableStream of WebTransportBidirectionalStream objects */
readonly attribute ReadableStream incomingBidirectionalStreams;
https://w3c.github.io/webtransport/#dom-webtransport-incomingbidirectionalstreams
Returns a ReadableStream
of [WebTransportBidirectionalStreams
]
that have been received from the server.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn create_unidirectional_stream(
&self,
) -> Result<WebTransportSendStream, DomException>
pub async fn create_unidirectional_stream( &self, ) -> Result<WebTransportSendStream, DomException>
Promise<WebTransportSendStream> createUnidirectionalStream(
optional WebTransportSendStreamOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-createunidirectionalstream
Creates a WebTransportSendStream
for an outgoing unidirectional
stream.
Note that the mere creation of a stream is not immediately visible
to the server until it is used to send data.
Source§impl WebTransport
impl WebTransport
Sourcepub async fn create_unidirectional_stream_with_options(
&self,
options: WebTransportSendStreamOptions,
) -> Result<WebTransportSendStream, DomException>
pub async fn create_unidirectional_stream_with_options( &self, options: WebTransportSendStreamOptions, ) -> Result<WebTransportSendStream, DomException>
Promise<WebTransportSendStream> createUnidirectionalStream(
optional WebTransportSendStreamOptions options = {});
https://w3c.github.io/webtransport/#dom-webtransport-createunidirectionalstream
Creates a WebTransportSendStream
for an outgoing unidirectional
stream.
Note that the mere creation of a stream is not immediately visible
to the server until it is used to send data.
Source§impl WebTransport
impl WebTransport
Sourcepub fn incoming_unidirectional_streams(&self) -> ReadableStream
pub fn incoming_unidirectional_streams(&self) -> ReadableStream
/* a ReadableStream of WebTransportReceiveStream objects */
readonly attribute ReadableStream incomingUnidirectionalStreams;
https://w3c.github.io/webtransport/#dom-webtransport-incomingunidirectionalstreams
A ReadableStream
of unidirectional streams, each represented by
a WebTransportReceiveStream
, that have been received
from the server.
Source§impl WebTransport
impl WebTransport
Sourcepub fn create_send_group(&self) -> Result<WebTransportSendGroup, DomException>
pub fn create_send_group(&self) -> Result<WebTransportSendGroup, DomException>
WebTransportSendGroup createSendGroup();
https://w3c.github.io/webtransport/#dom-webtransport-createsendgroup
Creates a WebTransportSendGroup
.
Source§impl WebTransport
impl WebTransport
Sourcepub fn supports_reliable_only() -> bool
pub fn supports_reliable_only() -> bool
static readonly attribute boolean supportsReliableOnly;
https://w3c.github.io/webtransport/#dom-webtransport-supportsreliableonly
Returns true if the user agent supports WebTransport sessions over exclusively reliable connections, otherwise false.
Source§impl WebTransport
impl WebTransport
Sourcepub fn set_anticipated_concurrent_incoming_unidirectional_streams(
&self,
val: u16,
)
pub fn set_anticipated_concurrent_incoming_unidirectional_streams( &self, val: u16, )
Set field to the given value.
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams;
Optionally lets an application specify the number of concurrently open
incoming unidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingUnidirectionalStreams]]
into
consideration in its negotiations with the server.
Sourcepub fn unset_anticipated_concurrent_incoming_unidirectional_streams(&self)
pub fn unset_anticipated_concurrent_incoming_unidirectional_streams(&self)
Unset field.
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingUnidirectionalStreams;
Optionally lets an application specify the number of concurrently open
incoming unidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingUnidirectionalStreams]]
into
consideration in its negotiations with the server.
Sourcepub fn set_anticipated_concurrent_incoming_bidirectional_streams(
&self,
val: u16,
)
pub fn set_anticipated_concurrent_incoming_bidirectional_streams( &self, val: u16, )
Set field to the given value.
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingBidirectionalStreams;
Optionally lets an application specify the number of concurrently open
bidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingBidirectionalStreams]]
into
consideration in its negotiations with the server.
Sourcepub fn unset_anticipated_concurrent_incoming_bidirectional_streams(&self)
pub fn unset_anticipated_concurrent_incoming_bidirectional_streams(&self)
Unset field.
[EnforceRange] attribute unsigned short? anticipatedConcurrentIncomingBidirectionalStreams;
Optionally lets an application specify the number of concurrently open
bidirectional streams it anticipates the server creating.
If not null, the user agent SHOULD attempt to reduce future round-trips
by taking [[AnticipatedConcurrentIncomingBidirectionalStreams]]
into
consideration in its negotiations with the server.
Methods from Deref<Target = Object>§
Sourcepub fn constructor(&self) -> Function
pub fn constructor(&self) -> Function
The constructor property returns a reference to the Object
constructor
function that created the instance object.
Sourcepub fn has_own_property(&self, property: &JsValue) -> bool
pub fn has_own_property(&self, property: &JsValue) -> bool
The hasOwnProperty()
method returns a boolean indicating whether the
object has the specified property as its own property (as opposed to
inheriting it).
Sourcepub fn is_prototype_of(&self, value: &JsValue) -> bool
pub fn is_prototype_of(&self, value: &JsValue) -> bool
The isPrototypeOf()
method checks if an object exists in another
object’s prototype chain.
Sourcepub fn property_is_enumerable(&self, property: &JsValue) -> bool
pub fn property_is_enumerable(&self, property: &JsValue) -> bool
The propertyIsEnumerable()
method returns a Boolean indicating
whether the specified property is enumerable.
Sourcepub fn to_locale_string(&self) -> JsString
pub fn to_locale_string(&self) -> JsString
The toLocaleString()
method returns a string representing the object.
This method is meant to be overridden by derived objects for
locale-specific purposes.
Sourcepub fn to_string(&self) -> JsString
pub fn to_string(&self) -> JsString
The toString()
method returns a string representing the object.
Methods from Deref<Target = JsValue>§
pub const NULL: JsValue
pub const UNDEFINED: JsValue
pub const TRUE: JsValue
pub const FALSE: JsValue
Sourcepub fn as_f64(&self) -> Option<f64>
pub fn as_f64(&self) -> Option<f64>
Returns the f64
value of this JS value if it’s an instance of a
number.
If this JS value is not an instance of a number then this returns
None
.
Sourcepub fn as_string(&self) -> Option<String>
pub fn as_string(&self) -> Option<String>
If this JS value is a string value, this function copies the JS string
value into Wasm linear memory, encoded as UTF-8, and returns it as a
Rust String
.
To avoid the copying and re-encoding, consider the
JsString::try_from()
function from js-sys
instead.
If this JS value is not an instance of a string or if it’s not valid
utf-8 then this returns None
.
§UTF-16 vs UTF-8
JavaScript strings in general are encoded as UTF-16, but Rust strings
are encoded as UTF-8. This can cause the Rust string to look a bit
different than the JS string sometimes. For more details see the
documentation about the str
type which contains a few
caveats about the encodings.
Sourcepub fn as_bool(&self) -> Option<bool>
pub fn as_bool(&self) -> Option<bool>
Returns the bool
value of this JS value if it’s an instance of a
boolean.
If this JS value is not an instance of a boolean then this returns
None
.
Sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Tests whether this JS value is undefined
Sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Tests whether the type of this JS value is function
.
Sourcepub fn js_in(&self, obj: &JsValue) -> bool
pub fn js_in(&self, obj: &JsValue) -> bool
Applies the binary in
JS operator on the two JsValue
s.
Sourcepub fn loose_eq(&self, other: &JsValue) -> bool
pub fn loose_eq(&self, other: &JsValue) -> bool
Compare two JsValue
s for equality, using the ==
operator in JS.
Sourcepub fn unsigned_shr(&self, rhs: &JsValue) -> u32
pub fn unsigned_shr(&self, rhs: &JsValue) -> u32
Applies the binary >>>
JS operator on the two JsValue
s.
Sourcepub fn checked_div(&self, rhs: &JsValue) -> JsValue
pub fn checked_div(&self, rhs: &JsValue) -> JsValue
Applies the binary /
JS operator on two JsValue
s, catching and returning any RangeError
thrown.
Sourcepub fn pow(&self, rhs: &JsValue) -> JsValue
pub fn pow(&self, rhs: &JsValue) -> JsValue
Applies the binary **
JS operator on the two JsValue
s.
Sourcepub fn lt(&self, other: &JsValue) -> bool
pub fn lt(&self, other: &JsValue) -> bool
Applies the binary <
JS operator on the two JsValue
s.
Sourcepub fn le(&self, other: &JsValue) -> bool
pub fn le(&self, other: &JsValue) -> bool
Applies the binary <=
JS operator on the two JsValue
s.
Sourcepub fn ge(&self, other: &JsValue) -> bool
pub fn ge(&self, other: &JsValue) -> bool
Applies the binary >=
JS operator on the two JsValue
s.
Sourcepub fn gt(&self, other: &JsValue) -> bool
pub fn gt(&self, other: &JsValue) -> bool
Applies the binary >
JS operator on the two JsValue
s.
Sourcepub fn unchecked_into_f64(&self) -> f64
pub fn unchecked_into_f64(&self) -> f64
Applies the unary +
JS operator on a JsValue
. Can throw.
Trait Implementations§
Source§impl AsRef<JsValue> for WebTransport
impl AsRef<JsValue> for WebTransport
Source§impl AsRef<Object> for WebTransport
impl AsRef<Object> for WebTransport
Source§impl AsRef<WebTransport> for WebTransport
impl AsRef<WebTransport> for WebTransport
Source§fn as_ref(&self) -> &WebTransport
fn as_ref(&self) -> &WebTransport
Source§impl Clone for WebTransport
impl Clone for WebTransport
Source§fn clone(&self) -> WebTransport
fn clone(&self) -> WebTransport
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for WebTransport
impl Debug for WebTransport
Source§impl Deref for WebTransport
impl Deref for WebTransport
Source§impl From<JsValue> for WebTransport
impl From<JsValue> for WebTransport
Source§fn from(obj: JsValue) -> WebTransport
fn from(obj: JsValue) -> WebTransport
Source§impl From<WebTransport> for JsValue
impl From<WebTransport> for JsValue
Source§fn from(obj: WebTransport) -> JsValue
fn from(obj: WebTransport) -> JsValue
Source§impl From<WebTransport> for Object
impl From<WebTransport> for Object
Source§fn from(obj: WebTransport) -> Object
fn from(obj: WebTransport) -> Object
Source§impl FromWasmAbi for WebTransport
impl FromWasmAbi for WebTransport
Source§impl<'a> IntoWasmAbi for &'a WebTransport
impl<'a> IntoWasmAbi for &'a WebTransport
Source§impl IntoWasmAbi for WebTransport
impl IntoWasmAbi for WebTransport
Source§impl JsCast for WebTransport
impl JsCast for WebTransport
Source§fn instanceof(val: &JsValue) -> bool
fn instanceof(val: &JsValue) -> bool
instanceof
check to see whether the JsValue
provided is an instance of this type. Read moreSource§fn unchecked_from_js(val: JsValue) -> Self
fn unchecked_from_js(val: JsValue) -> Self
Source§fn unchecked_from_js_ref(val: &JsValue) -> &Self
fn unchecked_from_js_ref(val: &JsValue) -> &Self
Source§fn has_type<T>(&self) -> boolwhere
T: JsCast,
fn has_type<T>(&self) -> boolwhere
T: JsCast,
T
. Read moreSource§fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
T
. Read moreSource§fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
T
. Read moreSource§fn unchecked_into<T>(self) -> Twhere
T: JsCast,
fn unchecked_into<T>(self) -> Twhere
T: JsCast,
Source§fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
Source§impl LongRefFromWasmAbi for WebTransport
impl LongRefFromWasmAbi for WebTransport
Source§type Anchor = WebTransport
type Anchor = WebTransport
RefFromWasmAbi::Anchor
Source§unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
RefFromWasmAbi::ref_from_abi
Source§impl OptionFromWasmAbi for WebTransport
impl OptionFromWasmAbi for WebTransport
Source§impl<'a> OptionIntoWasmAbi for &'a WebTransport
impl<'a> OptionIntoWasmAbi for &'a WebTransport
Source§impl OptionIntoWasmAbi for WebTransport
impl OptionIntoWasmAbi for WebTransport
Source§impl PartialEq for WebTransport
impl PartialEq for WebTransport
Source§impl RefFromWasmAbi for WebTransport
impl RefFromWasmAbi for WebTransport
Source§type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
Self
are recovered from.Source§type Anchor = ManuallyDrop<WebTransport>
type Anchor = ManuallyDrop<WebTransport>
Self
for the duration of the
invocation of the function that has an &Self
parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.impl Eq for WebTransport
impl StructuralPartialEq for WebTransport
Auto Trait Implementations§
impl Freeze for WebTransport
impl RefUnwindSafe for WebTransport
impl !Send for WebTransport
impl !Sync for WebTransport
impl Unpin for WebTransport
impl UnwindSafe for WebTransport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
Source§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::Abi
Source§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
.