@@ 16-30 (lines=15) @@ | ||
13 | { |
|
14 | $event = new Event(); |
|
15 | ||
16 | $provider = new class implements ListenerProviderInterface |
|
17 | { |
|
18 | public function getListenersForEvent(object $event): iterable |
|
19 | { |
|
20 | yield function (Event $event) { |
|
21 | $event->register(1); |
|
22 | }; |
|
23 | yield function (Event $event) { |
|
24 | $event->register(2); |
|
25 | }; |
|
26 | yield function (Event $event) { |
|
27 | $event->register(3); |
|
28 | }; |
|
29 | } |
|
30 | }; |
|
31 | ||
32 | $dispatcher = new Dispatcher($provider); |
|
33 | $dispatcher->dispatch($event); |
|
@@ 42-57 (lines=16) @@ | ||
39 | { |
|
40 | $event = new StoppableEvent(); |
|
41 | ||
42 | $provider = new class implements ListenerProviderInterface |
|
43 | { |
|
44 | public function getListenersForEvent(object $event): iterable |
|
45 | { |
|
46 | yield function (StoppableEvent $event) { |
|
47 | $event->register(1); |
|
48 | $event->stopPropagation(); |
|
49 | }; |
|
50 | yield function (StoppableEvent $event) { |
|
51 | $event->register(2); |
|
52 | }; |
|
53 | yield function (StoppableEvent $event) { |
|
54 | $event->register(3); |
|
55 | }; |
|
56 | } |
|
57 | }; |
|
58 | ||
59 | $dispatcher = new Dispatcher($provider); |
|
60 | $dispatcher->dispatch($event); |