17 lignes
484 B
PHP
17 lignes
484 B
PHP
<?php
|
|
namespace CookidooShoppingAdvanced;
|
|
|
|
use CookidooShoppingAdvanced\Models\ShoppingList;
|
|
use CookidooShoppingAdvanced\Rules\AbstractRule;
|
|
|
|
class RuleApplicator {
|
|
public function applyRules(ShoppingList &$shoppingList, array $rules): void {
|
|
foreach($rules as $rule) {
|
|
$this->applyRule($shoppingList, $rule);
|
|
}
|
|
}
|
|
|
|
public function applyRule(ShoppingList &$shoppingList, AbstractRule $rule): void {
|
|
$rule->filter($shoppingList);
|
|
}
|
|
} |