1
|
|
|
<?php |
2
|
|
|
namespace Thunder\Shortcode\Syntax; |
3
|
|
|
|
4
|
|
|
/** |
5
|
|
|
* @author Tomasz Kowalczyk <[email protected]> |
6
|
|
|
*/ |
7
|
|
|
final class Syntax implements SyntaxInterface |
8
|
|
|
{ |
9
|
|
|
/** @var string|null */ |
10
|
|
|
private $openingTag; |
11
|
|
|
/** @var string|null */ |
12
|
|
|
private $closingTag; |
13
|
|
|
/** @var string|null */ |
14
|
|
|
private $closingTagMarker; |
15
|
|
|
/** @var string|null */ |
16
|
|
|
private $parameterValueSeparator; |
17
|
|
|
/** @var string|null */ |
18
|
|
|
private $parameterValueDelimiter; |
19
|
|
|
|
20
|
|
|
/** |
21
|
|
|
* @param string|null $openingTag |
22
|
|
|
* @param string|null $closingTag |
23
|
|
|
* @param string|null $closingTagMarker |
24
|
|
|
* @param string|null $parameterValueSeparator |
25
|
|
|
* @param string|null $parameterValueDelimiter |
26
|
|
|
*/ |
27
|
70 |
|
public function __construct( |
28
|
|
|
$openingTag = null, |
29
|
|
|
$closingTag = null, |
30
|
|
|
$closingTagMarker = null, |
31
|
|
|
$parameterValueSeparator = null, |
32
|
|
|
$parameterValueDelimiter = null |
33
|
|
|
) { |
34
|
70 |
|
$this->openingTag = $openingTag; |
35
|
70 |
|
$this->closingTag = $closingTag; |
36
|
70 |
|
$this->closingTagMarker = $closingTagMarker; |
37
|
70 |
|
$this->parameterValueSeparator = $parameterValueSeparator; |
38
|
70 |
|
$this->parameterValueDelimiter = $parameterValueDelimiter; |
39
|
70 |
|
} |
40
|
|
|
|
41
|
|
|
/** @return string */ |
42
|
69 |
|
public function getOpeningTag() |
43
|
|
|
{ |
44
|
69 |
|
return $this->openingTag ?: '['; |
45
|
|
|
} |
46
|
|
|
|
47
|
|
|
/** @return string */ |
48
|
69 |
|
public function getClosingTag() |
49
|
|
|
{ |
50
|
69 |
|
return $this->closingTag ?: ']'; |
51
|
|
|
} |
52
|
|
|
|
53
|
|
|
/** @return string */ |
54
|
69 |
|
public function getClosingTagMarker() |
55
|
|
|
{ |
56
|
69 |
|
return $this->closingTagMarker ?: '/'; |
57
|
|
|
} |
58
|
|
|
|
59
|
|
|
/** @return string */ |
60
|
71 |
|
public function getParameterValueSeparator() |
61
|
|
|
{ |
62
|
71 |
|
return $this->parameterValueSeparator ?: '='; |
63
|
|
|
} |
64
|
|
|
|
65
|
|
|
/** @return string */ |
66
|
71 |
|
public function getParameterValueDelimiter() |
67
|
|
|
{ |
68
|
71 |
|
return $this->parameterValueDelimiter ?: '"'; |
69
|
|
|
} |
70
|
|
|
} |
71
|
|
|
|