in azure/functions/meta.py [0:0]
def is_iterable_type_annotation(annotation: object, pytype: object) -> bool:
is_iterable_anno = (
typing_inspect.is_generic_type(annotation)
and issubclass(typing_inspect.get_origin(annotation),
collections.abc.Iterable)
)
if not is_iterable_anno:
return False
args = typing_inspect.get_args(annotation)
if not args:
return False
if isinstance(pytype, tuple):
return any(isinstance(t, type) and issubclass(t, arg)
for t in pytype for arg in args)
else:
return any(isinstance(pytype, type) and issubclass(pytype, arg)
for arg in args)