From ecd884130f7a19def54cd2b720a7fd8b6f8c06c2 Mon Sep 17 00:00:00 2001 From: Alec Delaney Date: Tue, 10 Jan 2023 12:20:42 -0500 Subject: [PATCH] Fix type annotations --- adafruit_onewire/bus.py | 15 ++++++++------- adafruit_onewire/device.py | 9 +++++---- requirements.txt | 1 + 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/adafruit_onewire/bus.py b/adafruit_onewire/bus.py index 6ab362b..7905cdf 100644 --- a/adafruit_onewire/bus.py +++ b/adafruit_onewire/bus.py @@ -19,6 +19,7 @@ try: from typing import Optional, List, Tuple + from circuitpython_typing import ReadableBuffer, WriteableBuffer from microcontroller import Pin except ImportError: pass @@ -97,7 +98,7 @@ def reset(self, required: bool = False) -> bool: return not reset def readinto( - self, buf: bytearray, *, start: int = 0, end: Optional[int] = None + self, buf: WriteableBuffer, *, start: int = 0, end: Optional[int] = None ) -> None: """ Read into ``buf`` from the device. The number of bytes read will be the @@ -107,7 +108,7 @@ def readinto( as if ``buf[start:end]``. This will not cause an allocation like ``buf[start:end]`` will so it saves memory. - :param bytearray buf: buffer to write into + :param ~WriteableBuffer buf: Buffer to write into :param int start: Index to start writing at :param int end: Index to write up to but not include """ @@ -117,7 +118,7 @@ def readinto( buf[i] = self._readbyte() def write( - self, buf: bytearray, *, start: int = 0, end: Optional[int] = None + self, buf: ReadableBuffer, *, start: int = 0, end: Optional[int] = None ) -> None: """ Write the bytes from ``buf`` to the device. @@ -126,7 +127,7 @@ def write( as if ``buffer[start:end]``. This will not cause an allocation like ``buffer[start:end]`` will so it saves memory. - :param bytearray buf: buffer containing the bytes to write + :param ReadableBuffer buf: Buffer containing the bytes to write :param int start: Index to start writing from :param int end: Index to read up to but not include """ @@ -168,7 +169,7 @@ def _writebyte(self, value: int) -> None: self._ow.write_bit(bit) def _search_rom( - self, l_rom: Optional[bytearray], diff: int + self, l_rom: Optional[ReadableBuffer], diff: int ) -> Tuple[bytearray, int]: if not self.reset(): return None, 0 @@ -197,11 +198,11 @@ def _search_rom( return rom, next_diff @staticmethod - def crc8(data: bytearray) -> int: + def crc8(data: ReadableBuffer) -> int: """ Perform the 1-Wire CRC check on the provided data. - :param bytearray data: 8 byte array representing 64 bit ROM code + :param ReadableBuffer data: 8 byte array representing 64 bit ROM code """ crc = 0 diff --git a/adafruit_onewire/device.py b/adafruit_onewire/device.py index 1813683..7212018 100644 --- a/adafruit_onewire/device.py +++ b/adafruit_onewire/device.py @@ -16,6 +16,7 @@ try: from typing import Optional, Type + from circuitpython_typing import ReadableBuffer, WriteableBuffer from types import TracebackType from adafruit_onewire.bus import OneWireBus, OneWireAddress except ImportError: @@ -44,7 +45,7 @@ def __exit__( return False def readinto( - self, buf: bytearray, *, start: int = 0, end: Optional[int] = None + self, buf: WriteableBuffer, *, start: int = 0, end: Optional[int] = None ) -> None: """ Read into ``buf`` from the device. The number of bytes read will be the @@ -54,7 +55,7 @@ def readinto( as if ``buf[start:end]``. This will not cause an allocation like ``buf[start:end]`` will so it saves memory. - :param bytearray buf: buffer to write into + :param WriteableBuffer buf: Buffer to write into :param int start: Index to start writing at :param int end: Index to write up to but not include """ @@ -64,7 +65,7 @@ def readinto( raise RuntimeError("CRC error.") def write( - self, buf: bytearray, *, start: int = 0, end: Optional[int] = None + self, buf: ReadableBuffer, *, start: int = 0, end: Optional[int] = None ) -> None: """ Write the bytes from ``buf`` to the device. @@ -73,7 +74,7 @@ def write( as if ``buffer[start:end]``. This will not cause an allocation like ``buffer[start:end]`` will so it saves memory. - :param bytearray buf: buffer containing the bytes to write + :param ReadableBuffer buf: buffer containing the bytes to write :param int start: Index to start writing from :param int end: Index to read up to but not include """ diff --git a/requirements.txt b/requirements.txt index a45c547..76ea39a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,3 +4,4 @@ Adafruit-Blinka adafruit-circuitpython-busdevice +adafruit-circuitpython-typing