Example #1
0
 private static function getMemberList(SimpleXMLElement $element)
 {
     $list = new MemberMetaDataList();
     foreach ($element->AST_member_list as $memberList) {
         $members = $memberList->children();
         foreach ($members as $key => $member) {
             if (strcasecmp($key, AttributeMetaData::NODE_NAME) === 0) {
                 $list->add(self::getAttributeMeta($member));
             }
             if (strcasecmp($key, MethodMetaData::NODE_NAME) === 0) {
                 $signature = $member->AST_signature;
                 $methodMeta = new MethodMetaData();
                 $methodMeta->setToken(new MethodTokenMetaData(self::getTokenValue($signature->Token_method_name)));
                 if (property_exists($signature, ParameterMetaDataList::NODE_NAME)) {
                     $methodMeta->setParameterMetaDataList(self::getParameterList($signature));
                 }
                 $list->add($methodMeta);
             }
         }
     }
     return $list;
 }
Example #2
0
 public function visitMethodMeta(MethodMetaData $meta)
 {
     $buf = new TreeOutput();
     $buf->add('[' . $meta->getNodeName() . ']');
     $buf->down();
     $buf->writeln($meta->getToken()->toJSValue($this));
     $buf->writeln($meta->getParameterList()->toJSValue($this));
     $buf->up();
     return $buf;
 }