1<?php
2
3/*
4 * This file is part of the league/commonmark package.
5 *
6 * (c) Colin O'Dell <colinodell@gmail.com>
7 * (c) 2015 Martin Hasoň <martin.hason@gmail.com>
8 *
9 * For the full copyright and license information, please view the LICENSE
10 * file that was distributed with this source code.
11 */
12
13declare(strict_types=1);
14
15namespace League\CommonMark\Extension\Attributes\Node;
16
17use League\CommonMark\Node\Inline\AbstractInline;
18
19final class AttributesInline extends AbstractInline
20{
21    /** @var array<string, mixed> */
22    private array $attributes;
23
24    private bool $block;
25
26    /**
27     * @param array<string, mixed> $attributes
28     */
29    public function __construct(array $attributes, bool $block)
30    {
31        parent::__construct();
32
33        $this->attributes = $attributes;
34        $this->block      = $block;
35    }
36
37    /**
38     * @return array<string, mixed>
39     */
40    public function getAttributes(): array
41    {
42        return $this->attributes;
43    }
44
45    /**
46     * @param array<string, mixed> $attributes
47     */
48    public function setAttributes(array $attributes): void
49    {
50        $this->attributes = $attributes;
51    }
52
53    public function isBlock(): bool
54    {
55        return $this->block;
56    }
57}
58