File: D:/HostingSpaces/SBogers10/mountadvies.komma.pro/vendor/league/commonmark-ext-table/src/Table.php
<?php
declare(strict_types=1);
/*
* This is part of the league/commonmark-ext-table package.
*
* (c) Martin HasoĊ <martin.hason@gmail.com>
* (c) Webuni s.r.o. <info@webuni.cz>
* (c) Colin O'Dell <colinodell@gmail.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace League\CommonMark\Ext\Table;
use League\CommonMark\Block\Element\AbstractBlock;
use League\CommonMark\Block\Element\AbstractStringContainerBlock;
use League\CommonMark\Block\Element\InlineContainerInterface;
use League\CommonMark\ContextInterface;
use League\CommonMark\Cursor;
class Table extends AbstractStringContainerBlock implements InlineContainerInterface
{
private $caption;
private $head;
private $body;
private $parser;
public function __construct(\Closure $parser)
{
parent::__construct();
$this->appendChild($this->head = new TableSection(TableSection::TYPE_HEAD));
$this->appendChild($this->body = new TableSection(TableSection::TYPE_BODY));
$this->parser = $parser;
}
public function canContain(AbstractBlock $block): bool
{
return $block instanceof TableSection || $block instanceof TableCaption;
}
public function isCode(): bool
{
return false;
}
public function setCaption(TableCaption $caption = null): void
{
$node = $this->getCaption();
if ($node instanceof TableCaption) {
$node->detach();
}
$this->caption = $caption;
if (null !== $caption) {
$this->prependChild($caption);
}
}
public function getCaption(): ?TableCaption
{
return $this->caption;
}
public function getHead(): TableSection
{
return $this->head;
}
public function getBody(): TableSection
{
return $this->body;
}
public function matchesNextLine(Cursor $cursor): bool
{
return call_user_func($this->parser, $cursor, $this);
}
public function handleRemainingContents(ContextInterface $context, Cursor $cursor): void
{
}
}