Skip to content

Commit

Permalink
fix: make use_state helpers pub
Browse files Browse the repository at this point in the history
  • Loading branch information
EqualMa committed Nov 6, 2021
1 parent 89df6a5 commit 50f4693
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions src/use_state/macro_helpers.rs
Expand Up @@ -41,43 +41,43 @@ macro_rules! define_react_use_state_for_type {
#[derive(Debug, Clone)]
pub type $name_object;
#[wasm_bindgen(structural, method, getter)]
fn value(this: &$name_object) -> $type_output;
pub fn value(this: &$name_object) -> $type_output;
#[wasm_bindgen(structural, method, getter)]
fn setter(this: &$name_object) -> $name_setter;
pub fn setter(this: &$name_object) -> $name_setter;

#[derive(Debug, Clone)]
pub type $name_setter;
#[wasm_bindgen(structural, method)]
fn set_state(this: &$name_setter, value: $type_input);
pub fn set_state(this: &$name_setter, value: $type_input);
/// Closure `get_value_from_old` will be called immediately,
/// thus it is safe to use reference here
///
/// Closure get_value_from_old will be called only once
#[wasm_bindgen(structural, method, js_name = "set_state")]
fn set_state_with(
pub fn set_state_with(
this: &$name_setter,
get_value_from_old: &mut dyn FnMut($type_output) -> $type_input,
);

/// `React.useState<T>(initial_value)`
#[wasm_bindgen(js_name = "use_state_object")]
fn $name_use(initial_value: $type_input) -> $name_object;
pub fn $name_use(initial_value: $type_input) -> $name_object;

/// `React.useState<T>(get_initial_value)`
#[wasm_bindgen(js_name = "use_state_object")]
#[doc = concat!("React.useState<`", stringify!($type_input), "`>(initial_value)")]
fn $name_use_with(
pub fn $name_use_with(
initial_value: &mut dyn FnMut() -> $type_input,
) -> $name_object;

#[wasm_bindgen(js_name = "use_state_auto_clean")]
fn $name_clean(
pub fn $name_clean(
initial_value: $type_input,
free: &Closure<dyn FnMut($type_output)>,
) -> $name_object;

#[wasm_bindgen(js_name = "use_state_auto_clean")]
fn $name_clean_with(
pub fn $name_clean_with(
get_initial_value: &mut dyn FnMut() -> $type_input,
free: &Closure<dyn FnMut($type_output)>,
) -> $name_object;
Expand Down

0 comments on commit 50f4693

Please sign in to comment.