Macro jlrs::named_tuple[][src]

macro_rules! named_tuple {
    ($frame:expr, $name:expr => $value:expr) => { ... };
    ($frame:expr, $name:expr => $value:expr, $($rest:tt)+) => { ... };
    ($frame:expr, $names:expr, $values:expr, $name:expr => $value:expr, $($rest:tt)+) => { ... };
    ($frame:expr, $names:expr, $values:expr, $name:expr => $value:expr) => { ... };
}

Create a new named tuple. You will need a named tuple to call functions with keyword arguments.

Example:

let mut julia = unsafe { Julia::init(16).unwrap() };
// Three slots; two for the inputs and one for the output.
julia.frame(3, |global, frame| {
    // Create the two arguments, each value requires one slot
    let i = Value::new(frame, 2u64)?;
    let j = Value::new(frame, 1u32)?;

    let _nt = named_tuple!(frame, "i" => i, "j" => j);

    Ok(())
}).unwrap();