python_requires=">=3.7.0",
url="https://github.com/adafruit/Adafruit_Blinka",
package_dir={"": "src"},
- packages=find_packages("src"),
+ packages=find_packages("src") + ["micropython-stubs"],
# py_modules lists top-level single file packages to include.
# find_packages only finds packages in directories with __init__.py files.
py_modules=[
"adafruit_blinka.microcontroller.bcm283x.pulseio": [
"libgpiod_pulsein",
"libgpiod_pulsein64",
- ]
+ ],
+ "micropython-stubs": ["*.pyi"],
},
+ include_package_data=True,
install_requires=[
"Adafruit-PlatformDetect>=3.13.0",
"Adafruit-PureIO>=1.1.7",
--- /dev/null
+# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
+#
+# SPDX-License-Identifier: MIT
+"""
+`micropython` - MicroPython Specific Decorator Functions
+========================================================
+
+* Author(s): cefn
+"""
+
+from typing import Callable, TypeVar, Any, NoReturn
+
+Fun = TypeVar("Fun", bound=Callable[..., Any])
+
+def const(x: int) -> int:
+ "Emulate making a constant"
+
+def native(f: Fun) -> Fun:
+ "Emulate making a native"
+
+def viper(f: Fun) -> NoReturn:
+ "User is attempting to use a viper code emitter"
+
+def asm_thumb(f: Fun) -> NoReturn:
+ "User is attempting to use an inline assembler"