1
0
mirror of https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git synced 2026-10-25 12:39:18 +03:00
Files
libgpiod/bindings/python/gpiod/internal.py
Bartosz Golaszewski 4687bcc4f4 bindings: python: specify the symbols to export explicitly
We're currently unintentionally exporting a bunch of symbols that should
remain local to sub-modules. Use __all__ where appropriate so that we
don't re-export standard library functions such as select() etc. in the
gpiod module.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2023-05-25 15:30:25 +02:00

19 lines
503 B
Python

# SPDX-License-Identifier: GPL-2.0-or-later
# SPDX-FileCopyrightText: 2022 Bartosz Golaszewski <brgl@bgdev.pl>
from datetime import timedelta
from select import select
from typing import Optional, Union
__all__ = []
def poll_fd(fd: int, timeout: Optional[Union[timedelta, float]] = None) -> bool:
if isinstance(timeout, timedelta):
sec = timeout.total_seconds()
else:
sec = timeout
readable, _, _ = select([fd], [], [], sec)
return True if fd in readable else False