/** * Resolves $content value. * * @param ContentSet $content * @param array $matches * * @return mixed */ private function resolveContentSet(ContentSet $content, array $matches) { if ('ContentSet' === $matches[1]) { return $content->item($matches[3]); } $index = intval($matches[3]); $classname = AbstractClassContent::getFullClassname(str_replace('/', NAMESPACE_SEPARATOR, $matches[1])); foreach ($content as $subcontent) { if (get_class($subcontent) !== $classname) { continue; } if (0 === $index) { return $subcontent; } $index--; } return $content; }