Skip to content

Commit 3f6d09a

Browse files
committed
chore: add timer example
1 parent 1f5d2e9 commit 3f6d09a

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

drive_events/dynamic.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66
)
77

88

9-
def goto_events(group_markers: list[BaseEvent], any_return: Any) -> _SpecialEventReturn:
9+
def goto_events(
10+
group_markers: list[BaseEvent], any_return: Any = None
11+
) -> _SpecialEventReturn:
1012
return _SpecialEventReturn(
1113
behavior=ReturnBehavior.GOTO, returns=(group_markers, any_return)
1214
)

examples/4_endless_tick_timer.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,19 @@
1-
# TODO
1+
import asyncio
2+
from datetime import datetime
3+
from drive_events import default_drive, EventInput
4+
from drive_events.dynamic import goto_events
5+
6+
7+
@default_drive.make_event
8+
async def tick(event: EventInput, global_ctx):
9+
await asyncio.sleep(1)
10+
return "tick"
11+
12+
13+
@default_drive.listen_groups([tick])
14+
async def tok(event: EventInput, global_ctx):
15+
print(datetime.now(), f"{event.results[tick.id]}, then tok")
16+
return goto_events([tick])
17+
18+
19+
asyncio.run(default_drive.invoke_event(tick))

0 commit comments

Comments
 (0)