Skip to content

Commit 9f3e2b9

Browse files
committed
Modernize code examples in the readme.
1 parent 635b509 commit 9f3e2b9

File tree

1 file changed

+18
-26
lines changed

1 file changed

+18
-26
lines changed

README.md

+18-26
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,11 @@ $rule = $rb->create(
2424
}
2525
);
2626

27-
$context = new Context(array(
27+
$context = new Context([
2828
'minNumPeople' => 5,
2929
'maxNumPeople' => 25,
30-
'actualNumPeople' => function() {
31-
return 6;
32-
},
33-
));
30+
'actualNumPeople' => fn() => 6,
31+
]);
3432

3533
$rule->execute($context); // "Yay!"
3634
```
@@ -43,22 +41,20 @@ $rule->execute($context); // "Yay!"
4341
```php
4442
$actualNumPeople = new Variable('actualNumPeople');
4543
$rule = new Rule(
46-
new Operator\LogicalAnd(array(
44+
new Operator\LogicalAnd([
4745
new Operator\LessThanOrEqualTo(new Variable('minNumPeople'), $actualNumPeople),
4846
new Operator\GreaterThanOrEqualTo(new Variable('maxNumPeople'), $actualNumPeople)
49-
)),
47+
]),
5048
function() {
5149
echo 'YAY!';
5250
}
5351
);
5452

55-
$context = new Context(array(
53+
$context = new Context([
5654
'minNumPeople' => 5,
5755
'maxNumPeople' => 25,
58-
'actualNumPeople' => function() {
59-
return 6;
60-
},
61-
));
56+
'actualNumPeople' => fn() => 6,
57+
]);
6258

6359
$rule->execute($context); // "Yay!"
6460
```
@@ -166,10 +162,10 @@ $eitherOne = $rb->create($rb->logicalOr($aEqualsB, $aDoesNotEqualB));
166162

167163
// Just to mix things up, we'll populate our evaluation context with completely
168164
// random values...
169-
$context = new Context(array(
165+
$context = new Context([
170166
'a' => rand(),
171167
'b' => rand(),
172-
));
168+
]);
173169

174170
// Hint: this is always true!
175171
$eitherOne->evaluate($context);
@@ -191,11 +187,9 @@ $rb->logicalXor($aEqualsB, $aDoesNotEqualB); // True if only one condition is tr
191187
`evaluate()` a Rule with Context to figure out whether it is true.
192188

193189
```php
194-
$context = new Context(array(
195-
'userName' => function() {
196-
return isset($_SESSION['userName']) ? $_SESSION['userName'] : null;
197-
}
198-
));
190+
$context = new Context([
191+
'userName' => fn() => $_SESSION['userName'] ?? null,
192+
]);
199193

200194
$userIsLoggedIn = $rb->create($rb['userName']->notEqualTo(null));
201195

@@ -239,7 +233,7 @@ $hiEveryoneElse = $rb->create(
239233
}
240234
);
241235

242-
$rules = new RuleSet(array($hiJustin, $hiJon, $hiEveryoneElse));
236+
$rules = new RuleSet([$hiJustin, $hiJon, $hiEveryoneElse]);
243237

244238
// Let's add one more Rule, so non-authenticated users have a chance to log in
245239
$redirectForAuthentication = $rb->create($rb->logicalNot($userIsLoggedIn), function() {
@@ -272,12 +266,10 @@ Rules.
272266
$context = new Context;
273267

274268
// Some static values...
275-
$context['reallyAnnoyingUsers'] = array('bobthecow', 'jwage');
269+
$context['reallyAnnoyingUsers'] = ['bobthecow', 'jwage'];
276270

277271
// You'll remember this one from before
278-
$context['userName'] = function() {
279-
return isset($_SESSION['userName']) ? $_SESSION['userName'] : null;
280-
};
272+
$context['userName'] = fn() => $_SESSION['userName'] ?? null;
281273

282274
// Let's pretend you have an EntityManager named `$em`...
283275
$context['user'] = function() use ($em, $context) {
@@ -334,7 +326,7 @@ $context['userRoles'] = function() use ($em, $context) {
334326
return $user->roles();
335327
} else {
336328
// return a default "anonymous" role if there is no current user
337-
return array('anonymous');
329+
return ['anonymous'];
338330
}
339331
};
340332

@@ -366,7 +358,7 @@ their convenient RuleBuilder interface:
366358
// We can skip over the Context Variable building above. We'll simply set our,
367359
// default roles on the VariableProperty itself, then go right to writing rules:
368360

369-
$rb['user']['roles'] = array('anonymous');
361+
$rb['user']['roles'] = ['anonymous'];
370362

371363
$rb->create(
372364
$rb->logicalAnd(

0 commit comments

Comments
 (0)