コード例 #1
0
 /**
  * @return Collection
  */
 public function getMagicMethods()
 {
     /** @var Collection $methodTags */
     $methodTags = clone $this->getTags()->get('method', new Collection());
     $methods = new Collection();
     /** @var Tag\MethodDescriptor $methodTag */
     foreach ($methodTags as $methodTag) {
         $method = new MethodDescriptor();
         $method->setName($methodTag->getMethodName());
         $method->setDescription($methodTag->getDescription());
         $method->setParent($this);
         $methods->add($method);
     }
     return $methods;
 }
コード例 #2
0
 /**
  * @return Collection
  */
 public function getMagicMethods()
 {
     /** @var Collection $methodTags */
     $methodTags = clone $this->getTags()->get('method', new Collection());
     $methods = new Collection();
     /** @var Tag\MethodDescriptor $methodTag */
     foreach ($methodTags as $methodTag) {
         $method = new MethodDescriptor();
         $method->setName($methodTag->getMethodName());
         $method->setDescription($methodTag->getDescription());
         $method->setParent($this);
         $returnTags = $method->getTags()->get('return', new Collection());
         $returnTags->add($methodTag->getResponse());
         foreach ($methodTag->getArguments() as $name => $argument) {
             $method->getArguments()->set($name, $argument);
         }
         $methods->add($method);
     }
     if ($this->getParent() instanceof static) {
         $methods = $methods->merge($this->getParent()->getMagicMethods());
     }
     return $methods;
 }