generated from chevere/package-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
run-if.php
48 lines (41 loc) · 900 Bytes
/
run-if.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
/*
* This file is part of Chevere.
*
* (c) Rodolfo Berrios <rodolfo@chevere.org>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
use Chevere\Demo\Actions\Greet;
use function Chevere\Workflow\run;
use function Chevere\Workflow\sync;
use function Chevere\Workflow\variable;
use function Chevere\Workflow\workflow;
require 'loader.php';
/*
php demo/run-if.php Rodolfo
php demo/run-if.php
*/
$workflow = workflow(
greet: sync(
new Greet(),
username: variable('username'),
)->withRunIf(
variable('sayHello')
),
);
$name = $argv[1] ?? '';
$run = run(
$workflow,
username: $name,
sayHello: $name !== ''
);
if ($run->skip()->contains('greet')) {
exit;
}
$greet = $run->getReturn('greet')->string();
echo <<<PLAIN
{$greet}
PLAIN;