1616 */
1717namespace gossi \codegen \model ;
1818
19- use gossi \docblock \DocBlock ;
19+ use gossi \docblock \Docblock ;
2020use gossi \codegen \model \parts \QualifiedNameTrait ;
2121use gossi \codegen \model \parts \DocblockTrait ;
2222use gossi \codegen \model \parts \LongDescriptionTrait ;
23+ use Doctrine \Common \Annotations \PhpParser ;
2324
2425/**
2526 * Represents an abstract php struct.
@@ -63,9 +64,17 @@ protected static function createMethod(\ReflectionMethod $method) {
6364 protected static function createProperty (\ReflectionProperty $ property ) {
6465 return PhpProperty::fromReflection ($ property );
6566 }
67+
68+ protected static function getUseStatementsFromReflection (\ReflectionClass $ ref ) {
69+ if (null === self ::$ phpParser ) {
70+ self ::$ phpParser = new PhpParser ();
71+ }
72+ return self ::$ phpParser ->parseClass ($ ref );
73+ }
6674
6775 public function __construct ($ name = null ) {
6876 $ this ->setQualifiedName ($ name );
77+ $ this ->docblock = new Docblock ();
6978 }
7079
7180 public function setRequiredFiles (array $ files ) {
@@ -86,7 +95,7 @@ public function addRequiredFile($file) {
8695
8796 public function setUseStatements (array $ useStatements ) {
8897 $ this ->useStatements = $ useStatements ;
89-
98+
9099 return $ this ;
91100 }
92101
@@ -121,28 +130,28 @@ public function hasUseStatement($qualifiedName) {
121130 return isset ($ flipped [$ qualifiedName ]);
122131 }
123132
124- public function declareUses ()
125- {
126- foreach (func_get_args () as $ name ) {
127- $ this ->declareUse ($ name );
128- }
129- }
133+ // public function declareUses()
134+ // {
135+ // foreach (func_get_args() as $name) {
136+ // $this->declareUse($name);
137+ // }
138+ // }
130139
131- /**
132- * @param string $fullClassName
133- * @param null|string $alias
134- *
135- * @return string
136- */
137- public function declareUse ($ fullClassName , $ alias = null )
138- {
139- $ fullClassName = trim ($ fullClassName , '\\' );
140- if (!$ this ->hasUseStatement ($ fullClassName )) {
141- $ this ->addUseStatement ($ fullClassName , $ alias );
142- }
140+ // /**
141+ // * @param string $fullClassName
142+ // * @param null|string $alias
143+ // *
144+ // * @return string
145+ // */
146+ // public function declareUse($fullClassName, $alias = null)
147+ // {
148+ // $fullClassName = trim($fullClassName, '\\');
149+ // if (!$this->hasUseStatement($fullClassName)) {
150+ // $this->addUseStatement($fullClassName, $alias);
151+ // }
143152
144- return $ this ->getUseAlias ($ fullClassName );
145- }
153+ // return $this->getUseAlias($fullClassName);
154+ // }
146155
147156 /**
148157 * @param string $qualifiedName
0 commit comments