refactor: replace if isinstance with match case (#37412)

This commit is contained in:
jashwanth_reddy_gummula 2026-06-14 18:30:01 +05:30 committed by GitHub
parent 09b6f25fb9
commit 0ca39c96db
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 14 additions and 13 deletions

View File

@ -132,13 +132,14 @@ def cast_parameter_value(typ: StrEnum, value: Any, /):
return value if isinstance(value, bool) else bool(value)
case PluginParameterType.NUMBER:
if isinstance(value, int | float):
return value
elif isinstance(value, str) and value:
if "." in value:
return float(value)
else:
return int(value)
match value:
case int() | float():
return value
case str() if value:
if "." in value:
return float(value)
else:
return int(value)
case PluginParameterType.SYSTEM_FILES | PluginParameterType.FILES:
if not isinstance(value, list):
return [value]

View File

@ -1178,12 +1178,12 @@ class Conversation(Base):
def inputs(self, value: Mapping[str, Any]):
inputs = dict(value)
for k, v in inputs.items():
if isinstance(v, File):
inputs[k] = v.model_dump()
elif isinstance(v, list):
v_list = v
if all(isinstance(item, File) for item in v_list):
inputs[k] = [item.model_dump() for item in v_list if isinstance(item, File)]
match v:
case File():
inputs[k] = v.model_dump()
case list():
if all(isinstance(item, File) for item in v):
inputs[k] = [item.model_dump() for item in v if isinstance(item, File)]
self._inputs = inputs
@property