예제 #1
0
 public function returning()
 {
     preg_match('#@return (.+)#', $this->_doc, $groupMatches);
     $trimGroupMatches = array_map('trim', $groupMatches);
     $this->_rawReturn = $trimGroupMatches[1];
     $parameterParser = new ParameterParser($trimGroupMatches[1], $this->getName());
     return $parameterParser->parse();
 }
예제 #2
0
 /**
  * @param string $types
  * @return ComplexTypeParser[]
  */
 public static function create($types)
 {
     preg_match_all('#@(\\((?:.+)\\)|(?:.+?))(?: |$)#', $types, $matches);
     $typesArray = $matches[1];
     $obj = array_map(function ($type) {
         if (ComplexTypeParser::isReflectionType($type)) {
             $type = str_replace(array('(', ')'), '', $type);
         } else {
             $type = str_replace('=', ' ', $type);
         }
         $parser = new ParameterParser($type, '');
         return $parser->parse();
     }, $typesArray);
     return $obj;
 }
예제 #3
0
 /**
  * @return Type
  */
 public function returning()
 {
     preg_match_all('#@return (.+)#', $this->doc, $groupMatches);
     $this->rawReturn = $groupMatches[1];
     return ParameterParser::create($groupMatches[1], $this->getName());
     preg_match('#@return (.+)#', $this->doc, $groupMatches);
     $trimGroupMatches = array_map('trim', $groupMatches);
     if (isset($trimGroupMatches[1])) {
         $this->rawReturn = $trimGroupMatches[1];
     }
     $parameterParser = new ParameterParser($this->rawReturn, $this->getName());
     return $parameterParser->parse();
 }
예제 #4
0
 /**
  * @test
  */
 public function shouldParseObjectWrapperArray()
 {
     //given
     $parameter = 'wrapper[] $users @className=\\Mocks\\MockUserWrapper';
     $parser = new ParameterParser($parameter);
     //when
     $parser->parse();
     //then
     $this->assertEquals('users', $parser->getName());
     $this->assertEquals('MocksMockUserWrapper', $parser->getType());
 }