Source code for fastcs.attributes.attribute_io_ref

from dataclasses import KW_ONLY, dataclass

from typing_extensions import TypeVar


[docs] @dataclass class AttributeIORef: """Base for references to define IO for an ``Attribute`` over an API. This object acts as a specification of the API that its corresponding ``AttributeIO`` should access for a given ``Attribute``. The fields necessary to distinguish between different ``Attributes`` is an implementation detail of the IO, but some examples are a string to send over a TCP port, or URI within an HTTP server. """ # Make fields keyword-only so that child classes can have fields without defaults _: KW_ONLY update_period: float | None = None
AttributeIORefT = TypeVar( "AttributeIORefT", bound=AttributeIORef, default=AttributeIORef, covariant=True ) """An `AttributeIORef` for an `Attribute`"""