maxcountryman_web_sys/features/
gen_ChannelSplitterOptions.rs

1#![allow(unused_imports)]
2use super::*;
3use wasm_bindgen::prelude::*;
4#[wasm_bindgen]
5extern "C" {
6    # [wasm_bindgen (extends = :: js_sys :: Object , js_name = ChannelSplitterOptions)]
7    #[derive(Debug, Clone, PartialEq, Eq)]
8    #[doc = "The `ChannelSplitterOptions` dictionary."]
9    #[doc = ""]
10    #[doc = "*This API requires the following crate features to be activated: `ChannelSplitterOptions`*"]
11    pub type ChannelSplitterOptions;
12}
13impl ChannelSplitterOptions {
14    #[doc = "Construct a new `ChannelSplitterOptions`."]
15    #[doc = ""]
16    #[doc = "*This API requires the following crate features to be activated: `ChannelSplitterOptions`*"]
17    pub fn new() -> Self {
18        #[allow(unused_mut)]
19        let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new());
20        ret
21    }
22    #[doc = "Change the `channelCount` field of this object."]
23    #[doc = ""]
24    #[doc = "*This API requires the following crate features to be activated: `ChannelSplitterOptions`*"]
25    pub fn channel_count(&mut self, val: u32) -> &mut Self {
26        use wasm_bindgen::JsValue;
27        let r = ::js_sys::Reflect::set(
28            self.as_ref(),
29            &JsValue::from("channelCount"),
30            &JsValue::from(val),
31        );
32        debug_assert!(
33            r.is_ok(),
34            "setting properties should never fail on our dictionary objects"
35        );
36        let _ = r;
37        self
38    }
39    #[cfg(feature = "ChannelCountMode")]
40    #[doc = "Change the `channelCountMode` field of this object."]
41    #[doc = ""]
42    #[doc = "*This API requires the following crate features to be activated: `ChannelCountMode`, `ChannelSplitterOptions`*"]
43    pub fn channel_count_mode(&mut self, val: ChannelCountMode) -> &mut Self {
44        use wasm_bindgen::JsValue;
45        let r = ::js_sys::Reflect::set(
46            self.as_ref(),
47            &JsValue::from("channelCountMode"),
48            &JsValue::from(val),
49        );
50        debug_assert!(
51            r.is_ok(),
52            "setting properties should never fail on our dictionary objects"
53        );
54        let _ = r;
55        self
56    }
57    #[cfg(feature = "ChannelInterpretation")]
58    #[doc = "Change the `channelInterpretation` field of this object."]
59    #[doc = ""]
60    #[doc = "*This API requires the following crate features to be activated: `ChannelInterpretation`, `ChannelSplitterOptions`*"]
61    pub fn channel_interpretation(&mut self, val: ChannelInterpretation) -> &mut Self {
62        use wasm_bindgen::JsValue;
63        let r = ::js_sys::Reflect::set(
64            self.as_ref(),
65            &JsValue::from("channelInterpretation"),
66            &JsValue::from(val),
67        );
68        debug_assert!(
69            r.is_ok(),
70            "setting properties should never fail on our dictionary objects"
71        );
72        let _ = r;
73        self
74    }
75    #[doc = "Change the `numberOfOutputs` field of this object."]
76    #[doc = ""]
77    #[doc = "*This API requires the following crate features to be activated: `ChannelSplitterOptions`*"]
78    pub fn number_of_outputs(&mut self, val: u32) -> &mut Self {
79        use wasm_bindgen::JsValue;
80        let r = ::js_sys::Reflect::set(
81            self.as_ref(),
82            &JsValue::from("numberOfOutputs"),
83            &JsValue::from(val),
84        );
85        debug_assert!(
86            r.is_ok(),
87            "setting properties should never fail on our dictionary objects"
88        );
89        let _ = r;
90        self
91    }
92}
93impl Default for ChannelSplitterOptions {
94    fn default() -> Self {
95        Self::new()
96    }
97}