| Conditions | 1 |
| Paths | 1 |
| Total Lines | 25 |
| Code Lines | 16 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 17 |
| CRAP Score | 1 |
| Changes | 0 | ||
| 1 | <?php |
||
| 33 | 60 | public function __construct(string $rule, array $variables = []) |
|
| 34 | { |
||
| 35 | 60 | $this->rule = $rule; |
|
| 36 | |||
| 37 | 60 | $grammar = new JavaScript(); |
|
| 38 | 60 | $tokenFactory = new TokenFactory(); |
|
| 39 | 60 | $ruleGenerator = new Compiler(); |
|
| 40 | 60 | $expressionFactory = new Expressions\ExpressionFactory(); |
|
| 41 | |||
| 42 | 60 | $tokenizer = new Tokenizer( |
|
| 43 | 60 | $grammar, |
|
| 44 | 60 | $tokenFactory |
|
| 45 | ); |
||
| 46 | |||
| 47 | 60 | $ast = new AST($tokenizer, $tokenFactory, new TokenStream()); |
|
| 48 | 60 | $ast->setVariables($variables); |
|
| 49 | |||
| 50 | 60 | $this->parser = new Parser( |
|
| 51 | 60 | $ast, |
|
| 52 | 60 | $expressionFactory, |
|
| 53 | 60 | $ruleGenerator |
|
| 54 | ); |
||
| 55 | |||
| 56 | 60 | $this->evaluator = new Evaluator(); |
|
| 57 | 60 | } |
|
| 58 | |||
| 92 |