Passed
Push — master ( 392556...a36e60 )
by PHPinnacle
06:42 queued 04:41
created

Publisher   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 10
dl 0
loc 24
rs 10
c 1
b 0
f 0
wmc 3
1
<?php
2
3
use Amp\Delayed;
4
use PHPinnacle\Ensign\DispatcherBuilder;
5
6
require __DIR__ . '/../vendor/autoload.php';
7
8
Amp\Loop::run(function () {
9
    $builder = new DispatcherBuilder;
10
    $builder
11
        ->register('print', function ($num) {
12
            for ($i = 0; $i < $num; $i++) {
13
                echo '-';
14
15
                yield new Delayed(100);
16
            }
17
        })
18
        ->register('print', function ($num) {
19
            for ($i = 0; $i < $num; $i++) {
20
                echo '+';
21
22
                yield new Delayed(100);
23
            }
24
        })
25
        ->register('print', function ($num) {
26
            for ($i = 0; $i < $num; $i++) {
27
                echo '*';
28
29
                yield new Delayed(50);
30
            }
31
        })
32
    ;
33
34
    $dispatcher = $builder->build();
35
36
    yield $dispatcher->dispatch('print', 10);
37
});
38