react/use_ref/
mod.rs

1mod into_ref_value;
2mod traits;
3mod use_ref;
4mod use_ref_cell;
5mod use_ref_js;
6mod use_ref_readonly;
7
8pub use into_ref_value::*;
9pub use traits::*;
10pub use use_ref::*;
11pub use use_ref_cell::*;
12pub use use_ref_js::*;
13pub use use_ref_readonly::*;
14
15/// `use_ref` macro will auto wrap value into [`Rc<T>`](std::rc::Rc).
16#[macro_export]
17macro_rules! use_ref {
18    (move || $e:expr) => {
19        $crate::use_ref_with(move || $crate::auto_wrap_rc!($e))
20    };
21    (readonly move || $e:expr) => {
22        $crate::use_ref_readonly_with(move || $crate::auto_wrap_rc!($e))
23    };
24    (|| $e:expr) => {
25        $crate::use_ref_with(|| $crate::auto_wrap_rc!($e))
26    };
27    (readonly || $e:expr) => {
28        $crate::use_ref_readonly_with(|| $crate::auto_wrap_rc!($e))
29    };
30    ($e:expr) => {
31        $crate::use_ref($crate::auto_wrap_rc!($e))
32    };
33    (readonly $e:expr) => {
34        $crate::use_ref_readonly($crate::auto_wrap_rc!($e))
35    };
36    (set_as $e:expr) => {
37        $crate::use_ref_set_as($crate::auto_wrap_rc!($e))
38    };
39}