macron_collections/
btree_map.rs1use macron_map::map;
2
3#[cfg(not(feature = "from_macron"))]
5#[macro_export]
6macro_rules! btree_map {
7 ($($tt:tt)*) => {{
8 ::std::collections::BTreeMap::from( ::macron_collections::map!( $($tt)* ) )
9 }};
10}
11#[cfg(feature = "from_macron")]
13#[macro_export]
14macro_rules! btree_map {
15 ($($tt:tt)*) => {{
16 ::std::collections::BTreeMap::from( ::macron::map!( $($tt)* ) )
17 }};
18}
19
20#[cfg(not(feature = "from_macron"))]
22#[macro_export]
23macro_rules! auto_btree_map {
24 ($($tt:tt)*) => {{
25 let fields = ::macron_collections::map!($($tt)*);
26 let map: ::std::collections::BTreeMap<String, _> = fields
27 .into_iter()
28 .map(|(k, v)| (k.into(), v.into()))
29 .collect();
30 map
31 }};
32}
33#[cfg(feature = "from_macron")]
35#[macro_export]
36macro_rules! auto_btree_map {
37 ($($tt:tt)*) => {{
38 let fields = ::macron::map!($($tt)*);
39 let map: ::std::collections::BTreeMap<String, _> = fields
40 .into_iter()
41 .map(|(k, v)| (k.into(), v.into()))
42 .collect();
43 map
44 }};
45}
46
47#[cfg(not(feature = "from_macron"))]
49#[macro_export]
50macro_rules! str_btree_map {
51 ($($tt:tt)*) => {{
52 let fields = ::macron_collections::map!($($tt)*);
53 let map: ::std::collections::BTreeMap<String, _> = fields
54 .into_iter()
55 .map(|(k, v)| (String::from(k), String::from(v)))
56 .collect();
57 map
58 }};
59}
60#[cfg(feature = "from_macron")]
62#[macro_export]
63macro_rules! str_btree_map {
64 ($($tt:tt)*) => {{
65 let fields = ::macron::map!($($tt)*);
66 let map: ::std::collections::BTreeMap<String, _> = fields
67 .into_iter()
68 .map(|(k, v)| (String::from(k), String::from(v)))
69 .collect();
70 map
71 }};
72}