| Conditions | 2 |
| Paths | 2 |
| Total Lines | 12 |
| Code Lines | 6 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | <?php |
||
| 77 | public function call(Frame $frame, array $arguments = []) |
||
| 78 | { |
||
| 79 | if (sizeof($this->getParams()) != sizeof($arguments)) { |
||
| 80 | throw new EvaluatorException("Number of arguments mismatch"); |
||
| 81 | } |
||
| 82 | |||
| 83 | $evaluatedArguments = array_map([$frame, 'evaluate'], $arguments); |
||
| 84 | |||
| 85 | $newFrame = array_combine($this->getParams(), $evaluatedArguments); |
||
| 86 | |||
| 87 | return $frame->extend($newFrame)->evaluate($this->getBody()); |
||
| 88 | } |
||
| 89 | } |
||
| 90 |