@@ -69,21 +69,24 @@ where
69
69
/// NOTE: can only be used when the `static ref EXTERN_NIF_MAP` created by `rustler_export_nifs!` macro is in scope.
70
70
///
71
71
/// ## Example:
72
- /// ```
73
- /// rustler_export_nifs!(
74
- /// "Elixir.RustlerTest",
75
- /// ("factorial", 2, test_schedule::factorial),
76
- /// None,
77
- /// )
72
+ /// ```rust,no_run
73
+ /// mod nif {
74
+ /// use rustler::{Decoder, Env, Term, NifResult, rustler_export_nifs, schedule_nif, schedule::NifScheduleResult};
75
+ /// rustler_export_nifs!(
76
+ /// "Elixir.RustlerTest",
77
+ /// [("factorial", 2, factorial)],
78
+ /// None
79
+ /// );
78
80
///
79
- /// pub fn factorial<'a>(_env: Env<'a>, args: &[Term<'a>]) -> NifResult<NifScheduleResult<u32>> {
80
- /// let input: u32 = args[0].decode()?;
81
- /// let result: u32 = args[1].decode::<Option<u32>>()?.unwrap_or(1);
82
- /// if input == 0 {
83
- /// return Ok(result.into());
84
- /// }
81
+ /// pub fn factorial<'a>(_env: Env<'a>, args: &[Term<'a>]) -> NifResult<NifScheduleResult<u32>> {
82
+ /// let input: u32 = args[0].decode()?;
83
+ /// let result: u32 = args[1].decode::<Option<u32>>()?.unwrap_or(1);
84
+ /// if input == 0 {
85
+ /// return Ok(result.into());
86
+ /// }
85
87
86
- /// return schedule_nif!("factorial", vec![input - 1, result * input]);
88
+ /// return schedule_nif!("factorial", vec![input - 1, result * input]);
89
+ /// }
87
90
/// }
88
91
/// ```
89
92
#[ macro_export]
0 commit comments