Skip to main content

PandaBus

This library provided a simple event bus.

Using Example

#1:Basic Using

from pandabus import bus

# Create to event listener(printb should called after printa)
@bus.listen("print")
def printa(ent):
    print(f"hello from printa")
@bus.listen("print",after="printa")
def printb(ent):
    print(f'hello from printb')



# send event
bus.send("print")

#2:Pro Using

from pandabus import bus, Event


class StaticEvent(Event, static=True):
    msg: str
class DynaEvent(Event, cancelable=True):
    msg:str

# Create to event listener(printb should called after printa,printc)
@bus.listen(StaticEvent)
def printa(ent):
    print(f"{ent.msg} from printa")
@bus.listen(StaticEvent)
def printb(ent):
    print(f"{ent.msg} from printb")
@bus.listen(StaticEvent, after=["printa","printb"])
def printc(ent):
    print(f'{ent.msg} from printc')
@bus.listen(DynaEvent)
def printd(ent):
    print(f"{ent.msg} from printd")
    ent.cancel()
@bus.listen(DynaEvent,after="printd")
def printe(ent):
    print(f"{ent.msg} from printe")



# send event
bus.send(StaticEvent,"hello")
bus.send(DynaEvent,"hello again")

#3:Own Bus?

from pandabus import buses, Bus

bus1 = buses.bus1  # Simplely get a own bus.
bus2 = Bus("bus2")  # Work too.

Metadata

Release files for pandabus 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pandabus 0.0.5
File Interpreter ABI Platform
pandabus-0.0.5-py3-none-any.whl Python 3 none any Details

Release files / pandabus-0.0.5-py3-none-any.whl

Download URL pandabus-0.0.5-py3-none-any.whl
Size 9.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c8a331736bf7d9596134866197f561c2864f17ae94ee3533f7032d5886fa4116
BLAKE2b-256 checksum
How to use checksums
7ddac3273f6342abb47e42d013f7cbca0e4c87b2ce775111b8cdd19af5ead8f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.0

Release history Release notifications | RSS feed

This release

0.0.5 This release

1 release file

0.0.4

1 release file

0.0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page