Source code for caspia.reactive.value

from .observable import Observable


[docs]class Value(Observable): def __init__(self, value): super().__init__() self._value = value
[docs] async def observe(self): if isinstance(self._value, Exception): raise self._value return self._value
[docs] def update_without_notification(self, value): self._value = value
[docs] async def update(self, value, notify=True): if self._value != value: self._value = value if notify: await self.trigger(value)
def __str__(self): return '<rvalue>' def __repr__(self): return str(self)