1 #![allow(unused_imports)] 2 use super::*; 3 use wasm_bindgen::prelude::*; 4 #[wasm_bindgen] 5 extern "C" { 6 # [wasm_bindgen (extends = :: js_sys :: Object , js_name = HmacKeyAlgorithm)] 7 #[derive(Debug, Clone, PartialEq, Eq)] 8 #[doc = "The `HmacKeyAlgorithm` dictionary."] 9 #[doc = ""] 10 #[doc = "*This API requires the following crate features to be activated: `HmacKeyAlgorithm`*"] 11 pub type HmacKeyAlgorithm; 12 } 13 impl HmacKeyAlgorithm { 14 #[cfg(feature = "KeyAlgorithm")] 15 #[doc = "Construct a new `HmacKeyAlgorithm`."] 16 #[doc = ""] 17 #[doc = "*This API requires the following crate features to be activated: `HmacKeyAlgorithm`, `KeyAlgorithm`*"] new(name: &str, hash: &KeyAlgorithm, length: u32) -> Self18 pub fn new(name: &str, hash: &KeyAlgorithm, length: u32) -> Self { 19 #[allow(unused_mut)] 20 let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new()); 21 ret.name(name); 22 ret.hash(hash); 23 ret.length(length); 24 ret 25 } 26 #[doc = "Change the `name` field of this object."] 27 #[doc = ""] 28 #[doc = "*This API requires the following crate features to be activated: `HmacKeyAlgorithm`*"] name(&mut self, val: &str) -> &mut Self29 pub fn name(&mut self, val: &str) -> &mut Self { 30 use wasm_bindgen::JsValue; 31 let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("name"), &JsValue::from(val)); 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 = "KeyAlgorithm")] 40 #[doc = "Change the `hash` field of this object."] 41 #[doc = ""] 42 #[doc = "*This API requires the following crate features to be activated: `HmacKeyAlgorithm`, `KeyAlgorithm`*"] hash(&mut self, val: &KeyAlgorithm) -> &mut Self43 pub fn hash(&mut self, val: &KeyAlgorithm) -> &mut Self { 44 use wasm_bindgen::JsValue; 45 let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("hash"), &JsValue::from(val)); 46 debug_assert!( 47 r.is_ok(), 48 "setting properties should never fail on our dictionary objects" 49 ); 50 let _ = r; 51 self 52 } 53 #[doc = "Change the `length` field of this object."] 54 #[doc = ""] 55 #[doc = "*This API requires the following crate features to be activated: `HmacKeyAlgorithm`*"] length(&mut self, val: u32) -> &mut Self56 pub fn length(&mut self, val: u32) -> &mut Self { 57 use wasm_bindgen::JsValue; 58 let r = 59 ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("length"), &JsValue::from(val)); 60 debug_assert!( 61 r.is_ok(), 62 "setting properties should never fail on our dictionary objects" 63 ); 64 let _ = r; 65 self 66 } 67 } 68