function getReturnedTypes() { $classes = array(); if ($this->noun == 'RESTRoot') { $classes = RESTRoot::get_registered(); } else { foreach ($this->methodBlocks as $name => $block) { $return = $block['return']['details']; $words = explode(' ', $return); $type = count($words) ? $words[0] : ''; $name = preg_replace('/^get([A-Z])/', '$1', $name); if ($name == 'Items') { $name = "{id}"; } $type = preg_replace('/^\\[([^\\]]+)\\]$/', '$1', $type); if ($type && ClassInfo::is_subclass_of($type, 'RESTNoun')) { $classes[$name] = $type; } } } // Build a new class inspector for each $res = new ArrayList(); foreach ($classes as $func => $class) { $inspect = new RESTDocGenerator_NestingInspector($class, $this, $func); $res->push($inspect); } return $res; }
function tearDown() { RESTRoot::unregister('Foo'); parent::tearDown(); }