61 lines
1.6 KiB
Plaintext
61 lines
1.6 KiB
Plaintext
|
Metadata-Version: 2.3
|
||
|
Name: blinker
|
||
|
Version: 1.9.0
|
||
|
Summary: Fast, simple object-to-object and broadcast signaling
|
||
|
Author: Jason Kirtland
|
||
|
Maintainer-email: Pallets Ecosystem <contact@palletsprojects.com>
|
||
|
Requires-Python: >=3.9
|
||
|
Description-Content-Type: text/markdown
|
||
|
Classifier: Development Status :: 5 - Production/Stable
|
||
|
Classifier: License :: OSI Approved :: MIT License
|
||
|
Classifier: Programming Language :: Python
|
||
|
Classifier: Typing :: Typed
|
||
|
Project-URL: Chat, https://discord.gg/pallets
|
||
|
Project-URL: Documentation, https://blinker.readthedocs.io
|
||
|
Project-URL: Source, https://github.com/pallets-eco/blinker/
|
||
|
|
||
|
# Blinker
|
||
|
|
||
|
Blinker provides a fast dispatching system that allows any number of
|
||
|
interested parties to subscribe to events, or "signals".
|
||
|
|
||
|
|
||
|
## Pallets Community Ecosystem
|
||
|
|
||
|
> [!IMPORTANT]\
|
||
|
> This project is part of the Pallets Community Ecosystem. Pallets is the open
|
||
|
> source organization that maintains Flask; Pallets-Eco enables community
|
||
|
> maintenance of related projects. If you are interested in helping maintain
|
||
|
> this project, please reach out on [the Pallets Discord server][discord].
|
||
|
>
|
||
|
> [discord]: https://discord.gg/pallets
|
||
|
|
||
|
|
||
|
## Example
|
||
|
|
||
|
Signal receivers can subscribe to specific senders or receive signals
|
||
|
sent by any sender.
|
||
|
|
||
|
```pycon
|
||
|
>>> from blinker import signal
|
||
|
>>> started = signal('round-started')
|
||
|
>>> def each(round):
|
||
|
... print(f"Round {round}")
|
||
|
...
|
||
|
>>> started.connect(each)
|
||
|
|
||
|
>>> def round_two(round):
|
||
|
... print("This is round two.")
|
||
|
...
|
||
|
>>> started.connect(round_two, sender=2)
|
||
|
|
||
|
>>> for round in range(1, 4):
|
||
|
... started.send(round)
|
||
|
...
|
||
|
Round 1!
|
||
|
Round 2!
|
||
|
This is round two.
|
||
|
Round 3!
|
||
|
```
|
||
|
|