X-Git-Url: https://git.ayoreis.com/hackapet/Adafruit_Blinka.git/blobdiff_plain/dd4f50c67a9add29c85a981101e3df07e90dfee3..9c8d8fadc935d3770b603cd533bb85d56c570071:/python/mcp/__init__.py diff --git a/python/mcp/__init__.py b/python/mcp/__init__.py index d52c0b9..a8c4a84 100644 --- a/python/mcp/__init__.py +++ b/python/mcp/__init__.py @@ -1,8 +1,17 @@ -class Enum(object): +"""Module providing runtime utility objects to support the Micro/CircuitPython api""" +class Enum(object): + """ + Object supporting CircuitPython-style of static symbols + as seen with Direction.OUTPUT, Pull.UP + """ @classmethod def iteritems(cls): + """ + Inspects attributes of the class for instances of the class + and returns as key,value pairs mirroring dict#iteritems + """ for key in dir(cls): val = getattr(cls, key) if type(val) is cls: @@ -11,11 +20,18 @@ class Enum(object): def __repr__(self): """ - Assumes instance will be found as attribute of own - class. Returns dot-subscripted path to instance + Assumes instance will be found as attribute of own class. + Returns dot-subscripted path to instance + (assuming absolute import of containing package) """ cls = type(self) for key in dir(cls): if getattr(cls, key) is self: return "{}.{}.{}".format(cls.__module__, cls.__qualname__, key) - return repr(self) \ No newline at end of file + return repr(self) + +class Pin(Enum): + def __init__(self, id): + """ id type is likely platform-specific""" + self.id = id + pass