60 lines
1.0 KiB
PHP
60 lines
1.0 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Doctrine\RST\Nodes;
|
|
|
|
use Doctrine\RST\Environment;
|
|
|
|
class TitleNode extends Node
|
|
{
|
|
/** @var SpanNode */
|
|
protected $value;
|
|
|
|
/** @var int */
|
|
private $level;
|
|
|
|
/** @var string */
|
|
protected $token;
|
|
|
|
/** @var string */
|
|
private $id;
|
|
|
|
/** @var string */
|
|
private $target = '';
|
|
|
|
public function __construct(Node $value, int $level, string $token)
|
|
{
|
|
parent::__construct($value);
|
|
|
|
$this->level = $level;
|
|
$this->token = $token;
|
|
$this->id = Environment::slugify($this->value->getText());
|
|
}
|
|
|
|
public function getValue(): SpanNode
|
|
{
|
|
return $this->value;
|
|
}
|
|
|
|
public function getLevel(): int
|
|
{
|
|
return $this->level;
|
|
}
|
|
|
|
public function setTarget(string $target): void
|
|
{
|
|
$this->target = $target;
|
|
}
|
|
|
|
public function getTarget(): string
|
|
{
|
|
return $this->target;
|
|
}
|
|
|
|
public function getId(): string
|
|
{
|
|
return $this->id;
|
|
}
|
|
}
|