@@ -97,6 +97,11 @@ public function printClass(ClassType $class, PhpNamespace $namespace = null): st
9797 . '; ' ;
9898 }
9999
100+ $ methods = [];
101+ foreach ($ class ->getMethods () as $ method ) {
102+ $ methods [] = $ this ->printMethod ($ method , $ namespace );
103+ }
104+
100105 return Strings::normalize (
101106 Helpers::formatDocComment ($ class ->getComment () . "\n" )
102107 . ($ class ->isAbstract () ? 'abstract ' : '' )
@@ -109,7 +114,7 @@ public function printClass(ClassType $class, PhpNamespace $namespace = null): st
109114 ($ traits ? implode ("\n" , $ traits ) . "\n\n" : '' )
110115 . ($ consts ? implode ("\n" , $ consts ) . "\n\n" : '' )
111116 . ($ properties ? implode ("\n\n" , $ properties ) . "\n\n\n" : '' )
112- . ($ class -> getMethods () ? implode ("\n\n\n" , $ class -> getMethods () ) . "\n" : '' ))
117+ . ($ methods ? implode ("\n\n\n" , $ methods ) . "\n" : '' ))
113118 . '} '
114119 ) . ($ class ->getName () ? "\n" : '' );
115120 }
@@ -132,8 +137,13 @@ public function printNamespace(PhpNamespace $namespace): string
132137 }
133138 }
134139
140+ $ classes = [];
141+ foreach ($ namespace ->getClasses () as $ class ) {
142+ $ classes [] = $ this ->printClass ($ class , $ namespace );
143+ }
144+
135145 $ body = ($ uses ? implode ("\n" , $ uses ) . "\n\n" : '' )
136- . implode ("\n" , $ namespace -> getClasses () );
146+ . implode ("\n" , $ classes );
137147
138148 if ($ namespace ->getBracketedSyntax ()) {
139149 return 'namespace ' . ($ name ? " $ name " : '' ) . " { \n\n"
@@ -149,10 +159,15 @@ public function printNamespace(PhpNamespace $namespace): string
149159
150160 public function printFile (PhpFile $ file ): string
151161 {
162+ $ namespaces = [];
163+ foreach ($ file ->getNamespaces () as $ namespace ) {
164+ $ namespaces [] = $ this ->printNamespace ($ namespace );
165+ }
166+
152167 return Strings::normalize (
153168 "<?php \n"
154169 . ($ file ->getComment () ? "\n" . Helpers::formatDocComment ($ file ->getComment () . "\n" ) . "\n" : '' )
155- . implode ("\n\n" , $ file -> getNamespaces () )
170+ . implode ("\n\n" , $ namespaces )
156171 ) . "\n" ;
157172 }
158173
0 commit comments