Skip to content

Commit 60aaf90

Browse files
committed
Move macro enum_from_u32 to rustc_data_structures.
1 parent 3f32e30 commit 60aaf90

File tree

2 files changed

+38
-37
lines changed

2 files changed

+38
-37
lines changed

src/librustc/macros.rs

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,3 @@
1-
macro_rules! enum_from_u32 {
2-
($(#[$attr:meta])* pub enum $name:ident {
3-
$($variant:ident = $e:expr,)*
4-
}) => {
5-
$(#[$attr])*
6-
pub enum $name {
7-
$($variant = $e),*
8-
}
9-
10-
impl $name {
11-
pub fn from_u32(u: u32) -> Option<$name> {
12-
$(if u == $name::$variant as u32 {
13-
return Some($name::$variant)
14-
})*
15-
None
16-
}
17-
}
18-
};
19-
($(#[$attr:meta])* pub enum $name:ident {
20-
$($variant:ident,)*
21-
}) => {
22-
$(#[$attr])*
23-
pub enum $name {
24-
$($variant,)*
25-
}
26-
27-
impl $name {
28-
pub fn from_u32(u: u32) -> Option<$name> {
29-
$(if u == $name::$variant as u32 {
30-
return Some($name::$variant)
31-
})*
32-
None
33-
}
34-
}
35-
}
36-
}
37-
381
#[macro_export]
392
macro_rules! bug {
403
() => ( bug!("impossible case reached") );

src/librustc_data_structures/macros.rs

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,41 @@ macro_rules! static_assert_size {
1717
const _: [(); $size] = [(); ::std::mem::size_of::<$ty>()];
1818
};
1919
}
20+
21+
#[macro_export]
22+
macro_rules! enum_from_u32 {
23+
($(#[$attr:meta])* pub enum $name:ident {
24+
$($variant:ident = $e:expr,)*
25+
}) => {
26+
$(#[$attr])*
27+
pub enum $name {
28+
$($variant = $e),*
29+
}
30+
31+
impl $name {
32+
pub fn from_u32(u: u32) -> Option<$name> {
33+
$(if u == $name::$variant as u32 {
34+
return Some($name::$variant)
35+
})*
36+
None
37+
}
38+
}
39+
};
40+
($(#[$attr:meta])* pub enum $name:ident {
41+
$($variant:ident,)*
42+
}) => {
43+
$(#[$attr])*
44+
pub enum $name {
45+
$($variant,)*
46+
}
47+
48+
impl $name {
49+
pub fn from_u32(u: u32) -> Option<$name> {
50+
$(if u == $name::$variant as u32 {
51+
return Some($name::$variant)
52+
})*
53+
None
54+
}
55+
}
56+
}
57+
}

0 commit comments

Comments
 (0)