You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
def get_collection_of_primitive_values(self, primitive_type: Any) -> Optional[List[T]]: inside JsonParseNode takes primitive_type: Any, however we raise an error if primitive_type is not of type primitive_types = {bool, str, int, float, UUID, datetime, timedelta, date, time, bytes}. Why not just make primitive_type be a union type of these supported primitives? But then we could also remove T, since currently I don't quite see the use for it.
Alternatively we could leave T but then shouldn't we make primitive_type have type Type[T] or similar which allows for more restrictive typing on the user's end?
The text was updated successfully, but these errors were encountered:
Also this function does not strictly follow the signature of the underlying abstractmethod which is def get_collection_of_primitive_values(self) -> List[T]:. Couldn't this be unexpected?
We'll close this for now as this was resolved with #402. With the type information updated to use primitive_type: type[T] where T is a union of the primitive types. Typing signatures were also aligned fixed in #331
def get_collection_of_primitive_values(self, primitive_type: Any) -> Optional[List[T]]:
insideJsonParseNode
takesprimitive_type: Any
, however we raise an error ifprimitive_type
is not of typeprimitive_types = {bool, str, int, float, UUID, datetime, timedelta, date, time, bytes}
. Why not just makeprimitive_type
be a union type of these supported primitives? But then we could also removeT
, since currently I don't quite see the use for it.Alternatively we could leave
T
but then shouldn't we makeprimitive_type
have typeType[T]
or similar which allows for more restrictive typing on the user's end?The text was updated successfully, but these errors were encountered: