@@ -41,7 +41,7 @@ pub enum Target {
4141 Union ,
4242 Trait ,
4343 TraitAlias ,
44- Impl ,
44+ Impl { of_trait : bool } ,
4545 Expression ,
4646 Statement ,
4747 Arm ,
@@ -86,7 +86,7 @@ impl Target {
8686 | Target :: Union
8787 | Target :: Trait
8888 | Target :: TraitAlias
89- | Target :: Impl
89+ | Target :: Impl { .. }
9090 | Target :: Expression
9191 | Target :: Statement
9292 | Target :: Arm
@@ -119,7 +119,7 @@ impl Target {
119119 ItemKind :: Union ( ..) => Target :: Union ,
120120 ItemKind :: Trait ( ..) => Target :: Trait ,
121121 ItemKind :: TraitAlias ( ..) => Target :: TraitAlias ,
122- ItemKind :: Impl { .. } => Target :: Impl ,
122+ ItemKind :: Impl ( imp_ ) => Target :: Impl { of_trait : imp_ . of_trait . is_some ( ) } ,
123123 }
124124 }
125125
@@ -141,7 +141,7 @@ impl Target {
141141 DefKind :: Union => Target :: Union ,
142142 DefKind :: Trait => Target :: Trait ,
143143 DefKind :: TraitAlias => Target :: TraitAlias ,
144- DefKind :: Impl { .. } => Target :: Impl ,
144+ DefKind :: Impl { of_trait } => Target :: Impl { of_trait } ,
145145 _ => panic ! ( "impossible case reached" ) ,
146146 }
147147 }
@@ -196,7 +196,8 @@ impl Target {
196196 Target :: Union => "union" ,
197197 Target :: Trait => "trait" ,
198198 Target :: TraitAlias => "trait alias" ,
199- Target :: Impl => "implementation block" ,
199+ Target :: Impl { of_trait : false } => "inherent implementation block" ,
200+ Target :: Impl { of_trait : true } => "trait implementation block" ,
200201 Target :: Expression => "expression" ,
201202 Target :: Statement => "statement" ,
202203 Target :: Arm => "match arm" ,
0 commit comments