Eventbasierte Kommunikation
Project description
Iris – Verwaltung von Events
Event
__init__
: Konstruktor, der eine beliebige Anzahl an Funktionspointern nimmt, die ans Event gebunden werden.
add_function
: Bindet neue Funktionen an das Event.
remove_function
: Entbindet Funktionen vom Event.
emit
: Löst das Event aus und ruft alle Funktionen nacheinaner auf mit den dieser Funktion gegebenen Argumenten auf.
__iadd__
: Selbe Funktion wie add_function
__isub__
: Selbe Funktion wie remove_function
__call__
: Selbe Funktion wie emit
__repr_
: Representationsstring des Events mit den gebundenen Funktionen.
function
: Property-Attribut, das die Liste der gebundenen Funktionen liefert zur einfachen Manipulation.
Handler
__init__
: Konstruktor, der den Handler initialisiert.
get_event_names
: Liefert die Namen aller erstellten Events.
remove
: Löscht das Event mit dem gegebenem Namen.
__repr__
: Representationsstring mit den Namen der Events
Möglichkeiten ein neues Event zu erstellen mit:
- Dem Namen des Events
- Den zu bindenen Funktionen
new
__setitem__
Möglichkeiten ein Event zu löschen:
remove
__delitem__
__delattr__
Möglichkeiten ein Event von seinem Namen her zu erhalten:
__getitem__
__getattr__
StaticHandler
Basisklasse, von der verschiedene Handler abgeleitet werden können, deren Attribute als Events aufgefasst werden.
Syntax mit Typvorgabe:
class Irgendwas(StaticHandler):
EVENT_1: Event
EVENT_2: Event
Syntax mit None-Wert
class Irgendwas(StaticHandler):
EVENT_1 = None
EVENT_2 = None
Syntax mit Typ und None
class Irgendwas(StaticHandler):
EVENT_1: Event = None
EVENT_2: EVENT = None
Statt None
kann auch Event()
verwendet werden.
Das macht allerdings keinen Unterschied.
Auslösen eines Events
handler = Irgendwas()
handler.EVENT_1.add_function(print)
handler.EVENT_1.emit("Test")
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for Iris_heureka_code-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f9fb2f767e39edb16428b97ef6f9d1b1304af58f801eed9efdd271e01877f84 |
|
MD5 | 53f8c44b878057dcf59fd4d4153123e1 |
|
BLAKE2b-256 | 89b833a4cb25b7468fa3eeb7199c218c6d5cca17ea55026c8aae296f965ddf7d |