1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
//! Raw API bindings for Web APIs //! //! This is a procedurally generated crate from browser WebIDL which provides a //! binding to all APIs that browser provide on the web. //! //! This crate by default contains very little when compiled as almost all of //! its exposed APIs are gated by Cargo features. The exhaustive list of //! features can be found in `crates/web-sys/Cargo.toml`, but the rule of thumb //! for `web-sys` is that each type has its own cargo feature (named after the //! type). Using an API requires enabling the features for all types used in the //! API, and APIs should mention in the documentation what features they //! require. #![doc(html_root_url = "https://docs.rs/web-sys/0.2")] #![allow(deprecated)] mod features; pub use features::*; /// Getter for the `Window` object /// /// [MDN Documentation] /// /// *This API requires the following crate features to be activated: `Window`* /// /// [MDN Documentation]: https://developer.mozilla.org/en-US/docs/Web/API/Window #[cfg(feature = "Window")] pub fn window() -> Option<Window> { use wasm_bindgen::JsCast; js_sys::global().dyn_into::<Window>().ok() }