Skip to main content

__mx_condition_data

Macro __mx_condition_data 

Source
#[doc(hidden)]
macro_rules! __mx_condition_data { (($name:expr, $value:expr) $(,)?) => { ... }; ([ $(($name:expr, $value:expr)),* $(,)? ]) => { ... }; ({ $($name:ident = $value:expr),* $(,)? }) => { ... }; }
Expand description

Internal: normalise a macro data = ... argument into Option<ConditionData>. Not part of the public API.

Three forms are accepted:

  • a single pair: ("name", value)
  • a bracketed list of pairs: [("a", v1), ("b", v2)]
  • keyed builder sugar: { name = value, other = value } — the field name is a bare identifier (stringified by the macro), so { value = 42, code = 7 } is shorthand for [("value", 42), ("code", 7)].

Each value is converted via RValue::from, so any type with an RValue From impl (the scalar/vector/Option/wide-integer set) works without ceremony.