Skip to content

Commit f0c91ed

Browse files
committed
fix: accept integer values for float RPCs.
1 parent a2ef005 commit f0c91ed

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

python/twinleaf/__init__.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -246,8 +246,11 @@ def _call(self, arg: _rpc_type=None) -> _rpc_type:
246246
assert arg is None or isinstance(arg, int)
247247
return self._device._rpc_int(self.__name__, self._data_size, self._signed, arg)
248248
case t if t is float:
249-
assert arg is None or isinstance(arg, float)
250-
return self._device._rpc_float(self.__name__, self._data_size, arg)
249+
try:
250+
value = None if arg is None else float(arg)
251+
except (TypeError, ValueError) as err:
252+
raise TypeError(f"{self.__name__} expects a float-compatible value") from err
253+
return self._device._rpc_float(self.__name__, self._data_size, value)
251254
case t if t is str:
252255
if arg is None: arg = ''
253256
assert isinstance(arg, str)

0 commit comments

Comments
 (0)