mirror of
https://github.com/home-assistant/core.git
synced 2025-07-09 22:37:11 +00:00
Reduce duplicate code in json_loads (#106859)
This commit is contained in:
parent
391123beb0
commit
a4f0c84457
@ -39,9 +39,10 @@ def json_loads(__obj: bytes | bytearray | memoryview | str) -> JsonValueType:
|
||||
This adds a workaround for orjson not handling subclasses of str,
|
||||
https://github.com/ijl/orjson/issues/445.
|
||||
"""
|
||||
if type(__obj) in (bytes, bytearray, memoryview, str):
|
||||
return orjson.loads(__obj) # type:ignore[no-any-return]
|
||||
if isinstance(__obj, str):
|
||||
# Avoid isinstance overhead for the common case
|
||||
if type(__obj) not in (bytes, bytearray, memoryview, str) and isinstance(
|
||||
__obj, str
|
||||
):
|
||||
return orjson.loads(str(__obj)) # type:ignore[no-any-return]
|
||||
return orjson.loads(__obj) # type:ignore[no-any-return]
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user