aboutsummaryrefslogtreecommitdiff
path: root/src/transform.rs
diff options
context:
space:
mode:
authorMartin Fischer <martin@push-f.com>2021-11-25 13:44:20 +0100
committerMartin Fischer <martin@push-f.com>2021-11-25 13:44:20 +0100
commit74a29b912aaa14dbeb7e5c51ae11c61e733ef645 (patch)
treeccc34ea43f810abf0e8bb2c0ea05b3e9dc7ab8a1 /src/transform.rs
parentccb8e0cd6a94f71262e85e99fcd421578d2fb393 (diff)
better error for qualified associated types
Diffstat (limited to 'src/transform.rs')
-rw-r--r--src/transform.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/transform.rs b/src/transform.rs
index 74ab9e6..eed48c4 100644
--- a/src/transform.rs
+++ b/src/transform.rs
@@ -26,6 +26,7 @@ pub enum TransformError {
UnsupportedType,
ExpectedAtLeastNTypes(usize),
AssocTypeAfterFirstNTypes(usize, Ident),
+ QualifiedAssociatedType,
QualifiedSelfAssociatedType,
}
@@ -119,6 +120,9 @@ impl TypeConverter<'_> {
{
if let Type::Path(self_path) = qself.ty.as_ref() {
if self_path.path.segments[0].ident == "Self" {
+ if !self_path.path.is_ident("Self") {
+ return Err((self_path.span(), TransformError::QualifiedAssociatedType));
+ }
return Err((
self_path.span(),
TransformError::QualifiedSelfAssociatedType,