@@ -19,7 +19,7 @@ macro_rules! path {
19
19
($span:expr, $($part:ident)::*) => { vec![$(Ident::new(sym::$part, $span),)*] }
20
20
}
21
21
22
- pub(crate) fn expand_deriving_smart_ptr (
22
+ pub(crate) fn expand_deriving_coerce_pointee (
23
23
cx: &ExtCtxt<'_>,
24
24
span: Span,
25
25
_mitem: &MetaItem,
@@ -41,7 +41,7 @@ pub(crate) fn expand_deriving_smart_ptr(
41
41
cx.dcx()
42
42
.struct_span_err(
43
43
span,
44
- "`SmartPointer ` can only be derived on `struct`s with `#[repr(transparent)]`",
44
+ "`CoercePointee ` can only be derived on `struct`s with `#[repr(transparent)]`",
45
45
)
46
46
.emit();
47
47
return;
@@ -54,7 +54,7 @@ pub(crate) fn expand_deriving_smart_ptr(
54
54
cx.dcx()
55
55
.struct_span_err(
56
56
span,
57
- "`SmartPointer ` can only be derived on `struct`s with at least one field",
57
+ "`CoercePointee ` can only be derived on `struct`s with at least one field",
58
58
)
59
59
.emit();
60
60
return;
@@ -64,7 +64,7 @@ pub(crate) fn expand_deriving_smart_ptr(
64
64
cx.dcx()
65
65
.struct_span_err(
66
66
span,
67
- "`SmartPointer ` can only be derived on `struct`s with `#[repr(transparent)]`",
67
+ "`CoercePointee ` can only be derived on `struct`s with `#[repr(transparent)]`",
68
68
)
69
69
.emit();
70
70
return;
@@ -94,10 +94,10 @@ pub(crate) fn expand_deriving_smart_ptr(
94
94
.collect();
95
95
96
96
let pointee_param_idx = if type_params.is_empty() {
97
- // `#[derive(SmartPointer )]` requires at least one generic type on the target `struct`
97
+ // `#[derive(CoercePointee )]` requires at least one generic type on the target `struct`
98
98
cx.dcx().struct_span_err(
99
99
span,
100
- "`SmartPointer ` can only be derived on `struct`s that are generic over at least one type",
100
+ "`CoercePointee ` can only be derived on `struct`s that are generic over at least one type",
101
101
).emit();
102
102
return;
103
103
} else if type_params.len() == 1 {
@@ -113,15 +113,15 @@ pub(crate) fn expand_deriving_smart_ptr(
113
113
(None, _) => {
114
114
cx.dcx().struct_span_err(
115
115
span,
116
- "exactly one generic type parameter must be marked as #[pointee] to derive SmartPointer traits",
116
+ "exactly one generic type parameter must be marked as #[pointee] to derive CoercePointee traits",
117
117
).emit();
118
118
return;
119
119
}
120
120
(Some((_, one)), Some((_, another))) => {
121
121
cx.dcx()
122
122
.struct_span_err(
123
123
vec![one, another],
124
- "only one type parameter can be marked as `#[pointee]` when deriving SmartPointer traits",
124
+ "only one type parameter can be marked as `#[pointee]` when deriving CoercePointee traits",
125
125
)
126
126
.emit();
127
127
return;
@@ -185,7 +185,7 @@ pub(crate) fn expand_deriving_smart_ptr(
185
185
.struct_span_err(
186
186
pointee_ty_ident.span,
187
187
format!(
188
- "`derive(SmartPointer )` requires {} to be marked `?Sized`",
188
+ "`derive(CoercePointee )` requires {} to be marked `?Sized`",
189
189
pointee_ty_ident.name
190
190
),
191
191
)
@@ -195,7 +195,7 @@ pub(crate) fn expand_deriving_smart_ptr(
195
195
let arg = GenericArg::Type(s_ty.clone());
196
196
let unsize = cx.path_all(span, true, path!(span, core::marker::Unsize), vec![arg]);
197
197
pointee.bounds.push(cx.trait_bound(unsize, false));
198
- // Drop `#[pointee]` attribute since it should not be recognized outside `derive(SmartPointer )`
198
+ // Drop `#[pointee]` attribute since it should not be recognized outside `derive(CoercePointee )`
199
199
pointee.attrs.retain(|attr| !attr.has_name(sym::pointee));
200
200
}
201
201
0 commit comments