@@ -4,36 +4,17 @@ use std::{
44 path:: Path ,
55} ;
66
7- use nonmax:: NonMaxU32 ;
87use schemars:: { JsonSchema , r#gen, schema:: Schema } ;
98use serde:: { Deserialize , Deserializer , Serialize , Serializer , de} ;
109
11- use oxc_index:: { Idx , IndexVec } ;
12-
1310use crate :: { LintPlugins , OxlintEnv , OxlintGlobals , config:: OxlintRules } ;
1411
15- #[ derive( Debug , Clone , Copy , Eq , PartialEq , Ord , PartialOrd , Hash ) ]
16- pub struct OverrideId ( NonMaxU32 ) ;
17-
18- impl Idx for OverrideId {
19- #[ expect( clippy:: cast_possible_truncation) ]
20- fn from_usize ( idx : usize ) -> Self {
21- assert ! ( idx < u32 :: MAX as usize ) ;
22- // SAFETY: We just checked `idx` is a legal value for `NonMaxU32`
23- Self ( unsafe { NonMaxU32 :: new_unchecked ( idx as u32 ) } )
24- }
25-
26- fn index ( self ) -> usize {
27- self . 0 . get ( ) as usize
28- }
29- }
30-
3112// nominal wrapper required to add JsonSchema impl
3213#[ derive( Debug , Default , Clone , Deserialize , Serialize ) ]
33- pub struct OxlintOverrides ( IndexVec < OverrideId , OxlintOverride > ) ;
14+ pub struct OxlintOverrides ( Vec < OxlintOverride > ) ;
3415
3516impl Deref for OxlintOverrides {
36- type Target = IndexVec < OverrideId , OxlintOverride > ;
17+ type Target = Vec < OxlintOverride > ;
3718
3819 fn deref ( & self ) -> & Self :: Target {
3920 & self . 0
@@ -48,7 +29,7 @@ impl DerefMut for OxlintOverrides {
4829
4930impl IntoIterator for OxlintOverrides {
5031 type Item = OxlintOverride ;
51- type IntoIter = <IndexVec < OverrideId , OxlintOverride > as IntoIterator >:: IntoIter ;
32+ type IntoIter = <Vec < OxlintOverride > as IntoIterator >:: IntoIter ;
5233
5334 fn into_iter ( self ) -> Self :: IntoIter {
5435 self . 0 . into_iter ( )
@@ -58,7 +39,7 @@ impl IntoIterator for OxlintOverrides {
5839impl OxlintOverrides {
5940 #[ inline]
6041 pub fn empty ( ) -> Self {
61- Self ( IndexVec :: new ( ) )
42+ Self ( Vec :: new ( ) )
6243 }
6344
6445 // must be explicitly defined to make serde happy
0 commit comments