1 | <?php |
||
10 | class Optimizer |
||
11 | { |
||
12 | /** |
||
13 | * @var array<\s9e\SourceOptimizer\Pass> |
||
14 | */ |
||
15 | protected $passes = []; |
||
16 | |||
17 | /** |
||
18 | * Constructor |
||
19 | */ |
||
20 | 2 | public function __construct() |
|
28 | |||
29 | /** |
||
30 | * Disable an optimization pass |
||
31 | * |
||
32 | * @param string $passName Name of the optimization pass |
||
33 | * @return void |
||
34 | */ |
||
35 | public function disable($passName) |
||
39 | |||
40 | /** |
||
41 | * Disable all optimization passes |
||
42 | * |
||
43 | * @return void |
||
44 | */ |
||
45 | public function disableAll() |
||
49 | |||
50 | /** |
||
51 | * Enable an optimization pass |
||
52 | * |
||
53 | * @param string $passName Name of the optimization pass |
||
54 | * @param array $options Options to be set on the pass instance |
||
55 | * @return void |
||
56 | */ |
||
57 | 2 | public function enable($passName, array $options = []) |
|
73 | |||
74 | /** |
||
75 | * Optimize given source |
||
76 | * |
||
77 | * @param string $php Original source code |
||
78 | * @return string Optimize source code |
||
79 | */ |
||
80 | 2 | public function optimize($php) |
|
91 | |||
92 | /** |
||
93 | * Optimize all .php files in given directory and its subdirectories |
||
94 | * |
||
95 | * @param string $path Path to the dir |
||
96 | * @return void |
||
97 | */ |
||
98 | public function optimizeDir($path) |
||
103 | |||
104 | /** |
||
105 | * Optimize a PHP file |
||
106 | * |
||
107 | * @param string $filepath Path to the file |
||
108 | * @return void |
||
109 | */ |
||
110 | public function optimizeFile($filepath) |
||
119 | } |