remote is now our ABC - as it should be because it is the launching point of the interface.

it no longer inherits from CBindings.

move steps abstract method into Remote class. This is a much more meaningful abstraction - because it is the principle behaviour that distinguishes each kind of Remote.

add wrapper methods to CBindings. This provides a cleaner api for the Remote class.

import abc as namespace throughout the package.
This commit is contained in:
2026-03-15 22:02:17 +00:00
parent 84b4426e44
commit 842feb2407
8 changed files with 139 additions and 62 deletions

View File

@@ -1,5 +1,5 @@
import abc
import time
from abc import abstractmethod
from enum import IntEnum
from math import log
from typing import Union
@@ -22,7 +22,7 @@ class Bus(IRemote):
Defines concrete implementation for bus
"""
@abstractmethod
@abc.abstractmethod
def __str__(self):
pass