@@ -182,17 +182,24 @@ impl<'a> OverflowableItem<'a> {
182
182
}
183
183
}
184
184
185
- fn special_cases ( & self , config : & Config ) -> Vec < ( & ' static str , usize ) > {
185
+ fn special_cases ( & self , config : & Config ) -> impl Iterator < Item = & ( & ' static str , usize ) > {
186
+ let base_cases = match self {
187
+ OverflowableItem :: MacroArg ( ..) => SPECIAL_CASE_MACROS ,
188
+ OverflowableItem :: NestedMetaItem ( ..) => SPECIAL_CASE_ATTR ,
189
+ _ => & [ ] ,
190
+ } ;
191
+ let additional_cases = if config. version ( ) == Version :: Two {
192
+ self . special_cases_v2 ( )
193
+ } else {
194
+ & [ ]
195
+ } ;
196
+ base_cases. iter ( ) . chain ( additional_cases)
197
+ }
198
+
199
+ fn special_cases_v2 ( & self ) -> & ' static [ ( & ' static str , usize ) ] {
186
200
match self {
187
- OverflowableItem :: MacroArg ( ..) => {
188
- let mut cases = SPECIAL_CASE_MACROS . to_vec ( ) ;
189
- if config. version ( ) == Version :: Two {
190
- cases. push ( ( "trace!" , 0 ) ) ;
191
- }
192
- cases
193
- }
194
- OverflowableItem :: NestedMetaItem ( ..) => SPECIAL_CASE_ATTR . to_vec ( ) ,
195
- _ => vec ! [ ] ,
201
+ OverflowableItem :: MacroArg ( ..) => & [ ( "trace!" , 0 ) ] ,
202
+ _ => & [ ] ,
196
203
}
197
204
}
198
205
}
@@ -782,7 +789,6 @@ pub(crate) fn maybe_get_args_offset(
782
789
if let Some ( & ( _, num_args_before) ) = args
783
790
. get ( 0 ) ?
784
791
. special_cases ( config)
785
- . iter ( )
786
792
. find ( |& & ( s, _) | s == callee_str)
787
793
{
788
794
let all_simple = args. len ( ) > num_args_before
0 commit comments