script/dom/bindings/
like.rs1#[macro_export]
19macro_rules! setlike {
20 ( $self:ident, $x:ident ) => {
21 #[inline(always)]
22 fn get_index(&$self, index: u32) -> Option<Self::Key> {
23 $self.$x.get_index(index)
24 }
25
26 #[inline(always)]
27 fn size(&$self) -> u32 {
28 $self.$x.size()
29 }
30
31 #[inline(always)]
32 fn add(&$self, key: Self::Key) {
33 $self.$x.add(key)
34 }
35
36 #[inline(always)]
37 fn has(&$self, key: Self::Key) -> bool {
38 $self.$x.has(key)
39 }
40
41 #[inline(always)]
42 fn clear(&$self) {
43 $self.$x.clear()
44 }
45
46 #[inline(always)]
47 fn delete(&$self, key: Self::Key) -> bool {
48 $self.$x.delete(key)
49 }
50 };
51}
52
53#[macro_export]
66macro_rules! maplike {
67 ( $self:ident, $internal:ident ) => {
68 #[inline(always)]
69 fn get_index(&$self, index: u32) -> Option<(Self::Key, Self::Value)> {
70 $self.$internal.get_index(index)
71 }
72
73 #[inline(always)]
74 fn get(&$self, key: Self::Key) -> Option<Self::Value> {
75 $self.$internal.get(key)
76 }
77
78 #[inline(always)]
79 fn size(&$self) -> u32 {
80 $self.$internal.size()
81 }
82
83 #[inline(always)]
84 fn set(&$self, key: Self::Key, value: Self::Value) {
85 $self.$internal.set(key, value)
86 }
87
88 #[inline(always)]
89 fn has(&$self, key: Self::Key) -> bool {
90 $self.$internal.has(key)
91 }
92
93 #[inline(always)]
94 fn clear(&$self) {
95 $self.$internal.clear()
96 }
97
98 #[inline(always)]
99 fn delete(&$self, key: Self::Key) -> bool {
100 $self.$internal.delete(key)
101 }
102 };
103}