1 | <?php |
||
12 | abstract class AbstractPass |
||
13 | { |
||
14 | /** |
||
15 | * @var TokenStream Token stream of the source being processed |
||
16 | */ |
||
17 | protected $stream; |
||
18 | |||
19 | /** |
||
20 | * Optimize a given list of tokens |
||
21 | * |
||
22 | * @param TokenStream $stream |
||
23 | * @return void |
||
24 | */ |
||
25 | public function optimize(TokenStream $stream) |
||
30 | |||
31 | /** |
||
32 | * Optimize the stored token stream |
||
33 | * |
||
34 | * @return void |
||
35 | */ |
||
36 | abstract protected function optimizeStream(); |
||
37 | } |