@@ -3,7 +3,7 @@ class RegexTree:
3
3
4
4
5
5
class CharClass :
6
- def __init__ (self , chars_list : list [str ], min_len : int , max_len : int , precompute : bool ):
6
+ def __init__ (self , chars_list : list [str ], min_len : int , max_len : int | None , precompute : bool ):
7
7
self ._index = 0
8
8
self ._precompute = precompute and max_len is not None
9
9
self ._chars : str = '' .join (sorted (set ('' .join (chars_list ))))
@@ -33,7 +33,7 @@ def _compute_all(self) -> list[str]:
33
33
result = []
34
34
for i in range (self ._min_len , self ._max_len + 1 ):
35
35
temp = ['' ]
36
- for j in range (i ):
36
+ for _ in range (i ):
37
37
temp = [pfx + sfx for pfx in self ._chars for sfx in temp ]
38
38
result .extend (temp )
39
39
return result
@@ -96,8 +96,7 @@ def __init__(self, reference: RegexTree, min_len: int, max_len: int | None, prec
96
96
self .reference : RegexTree = reference
97
97
self .done = max_len == 0 or (
98
98
reference .done and len (reference .current ) == 0 )
99
- self .current : dict [str , list [str ]
100
- ] = self ._calculate () if not self .done else {}
99
+ self .current : dict [str , list [str ]] = self ._calculate () if not self .done else {}
101
100
102
101
def update_reference (self , new_strings : set [str ]) -> None :
103
102
if self ._max_len is not None and self ._min_len + self ._index >= self ._max_len and self .reference .done :
@@ -108,7 +107,7 @@ def update_reference(self, new_strings: set[str]) -> None:
108
107
self .current [string ] = [
109
108
string * i for i in range (self ._min_len , self ._min_len + self ._index + 1 )]
110
109
111
- def _calculate (self ) -> dict [str , set [str ]]:
110
+ def _calculate (self ) -> dict [str , list [str ]]:
112
111
current_ref = self .reference .current
113
112
if self ._max_len is not None and self ._min_len + self ._index >= self ._max_len :
114
113
self .done = True
@@ -121,7 +120,7 @@ def _calculate(self) -> dict[str, set[str]]:
121
120
122
121
return result
123
122
124
- def next (self ) -> dict [str , set [str ]]:
123
+ def next (self ) -> dict [str , list [str ]]:
125
124
assert not self .done
126
125
self ._index += 1
127
126
if self ._max_len is not None and self ._min_len + self ._index >= self ._max_len :
@@ -270,7 +269,7 @@ def _calculate_first(self) -> set[str]:
270
269
271
270
return result
272
271
273
- def add_reference (self , reference : BackReference ):
272
+ def add_reference (self , reference : BackReference ) -> None :
274
273
if reference .done and len (reference .current ) == 0 :
275
274
return
276
275
self .references .append (reference )
0 commit comments