Implement first version of the new rule engine.

This commit is contained in:
James Cole
2020-08-22 16:55:54 +02:00
parent 14df37712c
commit 216a0a186c
12 changed files with 825 additions and 586 deletions

View File

@@ -21,6 +21,7 @@
namespace FireflyIII\TransactionRules\Engine;
use FireflyIII\User;
use Illuminate\Support\Collection;
/**
@@ -28,6 +29,10 @@ use Illuminate\Support\Collection;
*/
interface RuleEngineInterface
{
/**
* @param User $user
*/
public function setUser(User $user): void;
/**
* Add rules for the engine to execute.
*
@@ -49,4 +54,9 @@ interface RuleEngineInterface
*/
public function addOperator(array $operator): void;
/**
* Fire the rule engine.
*/
public function fire(): void;
}