Macro artichoke_backend::mrb_get_args
source ยท macro_rules! mrb_get_args { ($mrb:expr, none) => { ... }; ($mrb:expr, required = 1) => { ... }; ($mrb:expr, optional = 1) => { ... }; ($mrb:expr, required = 1, optional = 1) => { ... }; ($mrb:expr, required = 1, optional = 2) => { ... }; ($mrb:expr, required = 1, optional = 3) => { ... }; ($mrb:expr, required = 1, &block) => { ... }; ($mrb:expr, required = 1, optional = 1, &block) => { ... }; ($mrb:expr, required = 1, optional = 2, &block) => { ... }; ($mrb:expr, required = 2) => { ... }; ($mrb:expr, optional = 2) => { ... }; ($mrb:expr, optional = 2, &block) => { ... }; ($mrb:expr, required = 2, optional = 1) => { ... }; ($mrb:expr, *args) => { ... }; }
Expand description
Extract sys::mrb_value
s from a sys::mrb_state
to adapt a C
entry point to a Rust implementation of a Ruby function.
This macro exists because the mruby VM does not validate argspecs attached to native functions.
This macro calls unsafe
functions.