File tree Expand file tree Collapse file tree 1 file changed +28
-0
lines changed Expand file tree Collapse file tree 1 file changed +28
-0
lines changed Original file line number Diff line number Diff line change 1+ <?php
2+ /**
3+ * Project: doxygen-php-filters
4+ * Author: Alex Schickedanz (AbcAeffchen)
5+ * Date: 05.03.2015
6+ * License: GPL v2.0
7+ */
8+
9+ // Get the input
10+ $ source = file_get_contents ($ argv [1 ]);
11+
12+ // make traits to classes
13+ $ regexp = '#trait([\s]+[\S]+[\s]*){# ' ;
14+ $ replace = 'class$1{ ' ;
15+ $ source = preg_replace ($ regexp , $ replace , $ source );
16+
17+ // use traits by extending them (classes that not extending a class)
18+ $ regexp = '#class([\s]+[\S]+[\s]*)(implements[\s]+[\S]+[\s]*)?{[\s]+use([^;]+);# ' ;
19+ $ replace = 'class$1 extends $3 $2 { ' ;
20+ $ source = preg_replace ($ regexp , $ replace , $ source );
21+
22+ // use traits by extending them (classes that already extending a class)
23+ $ regexp = '#class([\s]+[\S]+[\s]+extends[\s]+[\S]+[\s]*)(implements[\s]+[\S]+[\s]*)?{[\s]+use([^;]+);# ' ;
24+ $ replace = 'class$1, $3 $2{ ' ;
25+ $ source = preg_replace ($ regexp , $ replace , $ source );
26+
27+ // Output
28+ echo $ source ;
You can’t perform that action at this time.
0 commit comments