lib.Types.LoadTypes: Loosen type_filter type
In LoadTypes' constructor, allow the type_filter parameter to be of type Sequence[type[Any]] instead of list[type[T]]. a) Sequence is more generic than list, and b) with T instead of Any, trying to instantiate with an abstract class has mypy complain:
# E: Only concrete class can be given where "type[MyClass]" is expected [type-abstract]- type_filter: list[type[T]] = [], + type_filter: Sequence[type[Any]] | None = None,
Not that this makes mypy complain that it needs an annotation at the places where LoadTypes is used.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
a3279a3b00
commit
fd008b0a73
2 changed files with 7 additions and 4 deletions
|
|
@ -137,7 +137,7 @@ class App: # export
|
|||
|
||||
log(DEBUG, '-------------- Running: >' + ' '.join(sys.argv) + '<')
|
||||
|
||||
cmd_classes = LoadTypes(
|
||||
cmd_classes: LoadTypes[AbstractCmd] = LoadTypes(
|
||||
modules if modules else ['__main__'],
|
||||
type_name_filter = name_filter,
|
||||
type_filter = [AbstractCmd], # type: ignore[type-abstract]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue