<?php
declare(strict_types=1);
namespace League\CommonMark\Extension\TableOfContents;
use League\CommonMark\Node\Node;
use League\CommonMark\Renderer\ChildNodeRendererInterface;
use League\CommonMark\Renderer\NodeRendererInterface;
use League\CommonMark\Xml\XmlNodeRendererInterface;
final class TableOfContentsRenderer implements NodeRendererInterface, XmlNodeRendererInterface
{
private $innerRenderer;
public function __construct(NodeRendererInterface $innerRenderer)
{
$this->innerRenderer = $innerRenderer;
}
public function render(Node $node, ChildNodeRendererInterface $childRenderer)
{
return $this->innerRenderer->render($node, $childRenderer);
}
public function getXmlTagName(Node $node): string
{
return 'table_of_contents';
}
public function getXmlAttributes(Node $node): array
{
return $this->innerRenderer->getXmlAttributes($node);
}
}