| """ |
| For types associated with installation schemes. |
| |
| For a general overview of available schemes and their context, see |
| https://docs.python.org/3/install/index.html#alternate-installation. |
| """ |
| |
| |
| SCHEME_KEYS = ["platlib", "purelib", "headers", "scripts", "data"] |
| |
| |
| class Scheme: |
| """A Scheme holds paths which are used as the base directories for |
| artifacts associated with a Python package. |
| """ |
| |
| __slots__ = SCHEME_KEYS |
| |
| def __init__( |
| self, |
| platlib: str, |
| purelib: str, |
| headers: str, |
| scripts: str, |
| data: str, |
| ) -> None: |
| self.platlib = platlib |
| self.purelib = purelib |
| self.headers = headers |
| self.scripts = scripts |
| self.data = data |