Attributes
Container attributes
Following #[derive(Interact)], methods to be called from the prompt can be
specified by name, along with their parameters, and whether they take in &self
or &mut self.
#[interact(mut_fn(function_name(param_a, param_b)))
#[interact(immut_fn(function_name(param_a, param_b)))
For example:
# #![allow(unused_variables)] #fn main() { #[derive(Interact)] #[interact(mut_fn(add(param_a)))] struct Baz(u32); impl Baz { fn add(&mut self, param_a: u32) { self.0 += param_a; } } #}
Field attributes
The skip attribute allows to make some fields invisible:
#[interact(skip))
The downside is that having any skipped field on a type means that it is
unbuildable, and therefore cannot be passed as value to functions or to be
assigned using = in an expression.