@@ -33,8 +33,13 @@ macro_rules! stage_label {
33
33
$(
34
34
/// A macro-generated local `StageLabel`.
35
35
#[ allow( non_camel_case_types) ]
36
- #[ derive( $crate:: schedule:: StageLabel ) ]
37
36
struct $name;
37
+
38
+ impl $crate:: schedule:: StageLabel for $name {
39
+ fn as_str( & self ) -> & ' static str {
40
+ std:: stringify!( $name)
41
+ }
42
+ }
38
43
) *
39
44
}
40
45
}
@@ -46,8 +51,13 @@ macro_rules! system_label {
46
51
$(
47
52
/// A macro-generated local `SystemLabel`.
48
53
#[ allow( non_camel_case_types) ]
49
- #[ derive( $crate:: schedule:: SystemLabel ) ]
50
54
struct $name;
55
+
56
+ impl $crate:: schedule:: SystemLabel for $name {
57
+ fn as_str( & self ) -> & ' static str {
58
+ std:: stringify!( $name)
59
+ }
60
+ }
51
61
) *
52
62
}
53
63
}
@@ -59,8 +69,13 @@ macro_rules! ambiguity_set_label {
59
69
$(
60
70
/// A macro-generated local `AmbiguitySetLabel`.
61
71
#[ allow( non_camel_case_types) ]
62
- #[ derive( $crate:: schedule:: AmbiguitySetLabel ) ]
63
72
struct $name;
73
+
74
+ impl $crate:: schedule:: AmbiguitySetLabel for $name {
75
+ fn as_str( & self ) -> & ' static str {
76
+ std:: stringify!( $name)
77
+ }
78
+ }
64
79
) *
65
80
}
66
81
}
@@ -72,8 +87,13 @@ macro_rules! run_criteria_label {
72
87
$(
73
88
/// A macro-generated local `RunCriteria`.
74
89
#[ allow( non_camel_case_types) ]
75
- #[ derive( $crate:: schedule:: RunCriteriaLabel ) ]
76
90
struct $name;
91
+
92
+ impl $crate:: schedule:: RunCriteriaLabel for $name {
93
+ fn as_str( & self ) -> & ' static str {
94
+ std:: stringify!( $name)
95
+ }
96
+ }
77
97
) *
78
98
}
79
99
}
0 commit comments