26 lines
704 B
Rust
26 lines
704 B
Rust
|
|
|
|
#[doc(hidden)]
|
|
#[macro_export]
|
|
macro_rules! create_ids {
|
|
($t:ty, ) => ();
|
|
($t:ty, prev($prev:ident), $name:ident) => (
|
|
#[allow(non_upper_case_globals)]
|
|
pub const $name: $t = $prev + 1;
|
|
);
|
|
($t:ty, prev($prev:ident), $name:ident, $($n:ident),+) => (
|
|
#[allow(non_upper_case_globals)]
|
|
pub const $name: $t = $prev + 1;
|
|
create_ids!($t, prev($name), $($n),+);
|
|
);
|
|
($t:ty, $name:ident, $($n:ident),+) => (
|
|
#[allow(non_upper_case_globals)]
|
|
pub const $name: $t = 0;
|
|
create_ids!($t, prev($name), $($n),+);
|
|
);
|
|
($t:ty, $name:ident) => (
|
|
#[allow(non_upper_case_globals)]
|
|
pub const $name: $t = 0;
|
|
);
|
|
}
|