[−][src]Macro flags_macro::set_array
Emits an array expression containing zero or more values defined within the same namespace (or a similar language construct).
Syntax
set_array![path1::path2::{Item1 | ... | ItemN}]
set_array![path1::path2::{Item1, ..., ItemN}]
Item1
... ItemN
are identifiers. These expressions are expanded into:
[path1::path2::Item1, ..., path1::path2::ItemN]
Examples
mod values { pub const A: u32 = 1; pub const B: u32 = 2; pub const C: u32 = 3; } let array0: [u32; 0] = set_array![values::{}]; let array1 = set_array![values::{A}]; let array2a = set_array![values::{A | B}]; let array2b = set_array![values::{A, B}]; // alternative syntax assert_eq!(array0, []); assert_eq!(array1, [values::A]); assert_eq!(array2a, [values::A, values::B]); assert_eq!(array2b, [values::A, values::B]);