Skip to content

Commit 4a706d0

Browse files
feat(app): use generic for append_list util
1 parent 2a8bff6 commit 4a706d0

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

invokeai/app/invocations/metadata_linked.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Thanks to @skunworkxdark for the original implementation!
44

55
import copy
6-
from typing import Any, Dict, Literal, Optional, Union
6+
from typing import Any, Dict, Literal, Optional, TypeVar, Union
77

88
from pydantic import model_validator
99

@@ -119,8 +119,10 @@
119119
"vae",
120120
]
121121

122+
T = TypeVar("T")
122123

123-
def append_list(item_cls: type[Any], new_item: Any, items: Union[Any, list[Any], None] = None) -> list[Any]:
124+
125+
def append_list(item_cls: type[T], new_item: T, items: Union[T, list[T], None] = None) -> list[T]:
124126
"""Combines any number of items or lists into a single list,
125127
ensuring consistency in type.
126128
@@ -142,7 +144,7 @@ def append_list(item_cls: type[Any], new_item: Any, items: Union[Any, list[Any],
142144
if items is None:
143145
return [new_item]
144146

145-
result: list[item_cls] = []
147+
result: list[T] = []
146148

147149
if isinstance(items, item_cls):
148150
result.append(items)

0 commit comments

Comments
 (0)