Mercurial > hg > isophonics-drupal-site
comparison vendor/symfony/css-selector/XPath/Extension/NodeExtension.php @ 14:1fec387a4317
Update Drupal core to 8.5.2 via Composer
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:46:53 +0100 |
parents | 4c8ae668cc8c |
children | 129ea1e6d783 |
comparison
equal
deleted
inserted
replaced
13:5fb285c0d0e3 | 14:1fec387a4317 |
---|---|
29 { | 29 { |
30 const ELEMENT_NAME_IN_LOWER_CASE = 1; | 30 const ELEMENT_NAME_IN_LOWER_CASE = 1; |
31 const ATTRIBUTE_NAME_IN_LOWER_CASE = 2; | 31 const ATTRIBUTE_NAME_IN_LOWER_CASE = 2; |
32 const ATTRIBUTE_VALUE_IN_LOWER_CASE = 4; | 32 const ATTRIBUTE_VALUE_IN_LOWER_CASE = 4; |
33 | 33 |
34 /** | |
35 * @var int | |
36 */ | |
37 private $flags; | 34 private $flags; |
38 | 35 |
39 /** | 36 /** |
40 * Constructor. | |
41 * | |
42 * @param int $flags | 37 * @param int $flags |
43 */ | 38 */ |
44 public function __construct($flags = 0) | 39 public function __construct($flags = 0) |
45 { | 40 { |
46 $this->flags = $flags; | 41 $this->flags = $flags; |
92 'Element' => array($this, 'translateElement'), | 87 'Element' => array($this, 'translateElement'), |
93 ); | 88 ); |
94 } | 89 } |
95 | 90 |
96 /** | 91 /** |
97 * @param Node\SelectorNode $node | |
98 * @param Translator $translator | |
99 * | |
100 * @return XPathExpr | 92 * @return XPathExpr |
101 */ | 93 */ |
102 public function translateSelector(Node\SelectorNode $node, Translator $translator) | 94 public function translateSelector(Node\SelectorNode $node, Translator $translator) |
103 { | 95 { |
104 return $translator->nodeToXPath($node->getTree()); | 96 return $translator->nodeToXPath($node->getTree()); |
105 } | 97 } |
106 | 98 |
107 /** | 99 /** |
108 * @param Node\CombinedSelectorNode $node | |
109 * @param Translator $translator | |
110 * | |
111 * @return XPathExpr | 100 * @return XPathExpr |
112 */ | 101 */ |
113 public function translateCombinedSelector(Node\CombinedSelectorNode $node, Translator $translator) | 102 public function translateCombinedSelector(Node\CombinedSelectorNode $node, Translator $translator) |
114 { | 103 { |
115 return $translator->addCombination($node->getCombinator(), $node->getSelector(), $node->getSubSelector()); | 104 return $translator->addCombination($node->getCombinator(), $node->getSelector(), $node->getSubSelector()); |
116 } | 105 } |
117 | 106 |
118 /** | 107 /** |
119 * @param Node\NegationNode $node | |
120 * @param Translator $translator | |
121 * | |
122 * @return XPathExpr | 108 * @return XPathExpr |
123 */ | 109 */ |
124 public function translateNegation(Node\NegationNode $node, Translator $translator) | 110 public function translateNegation(Node\NegationNode $node, Translator $translator) |
125 { | 111 { |
126 $xpath = $translator->nodeToXPath($node->getSelector()); | 112 $xpath = $translator->nodeToXPath($node->getSelector()); |
133 | 119 |
134 return $xpath->addCondition('0'); | 120 return $xpath->addCondition('0'); |
135 } | 121 } |
136 | 122 |
137 /** | 123 /** |
138 * @param Node\FunctionNode $node | |
139 * @param Translator $translator | |
140 * | |
141 * @return XPathExpr | 124 * @return XPathExpr |
142 */ | 125 */ |
143 public function translateFunction(Node\FunctionNode $node, Translator $translator) | 126 public function translateFunction(Node\FunctionNode $node, Translator $translator) |
144 { | 127 { |
145 $xpath = $translator->nodeToXPath($node->getSelector()); | 128 $xpath = $translator->nodeToXPath($node->getSelector()); |
146 | 129 |
147 return $translator->addFunction($xpath, $node); | 130 return $translator->addFunction($xpath, $node); |
148 } | 131 } |
149 | 132 |
150 /** | 133 /** |
151 * @param Node\PseudoNode $node | |
152 * @param Translator $translator | |
153 * | |
154 * @return XPathExpr | 134 * @return XPathExpr |
155 */ | 135 */ |
156 public function translatePseudo(Node\PseudoNode $node, Translator $translator) | 136 public function translatePseudo(Node\PseudoNode $node, Translator $translator) |
157 { | 137 { |
158 $xpath = $translator->nodeToXPath($node->getSelector()); | 138 $xpath = $translator->nodeToXPath($node->getSelector()); |
159 | 139 |
160 return $translator->addPseudoClass($xpath, $node->getIdentifier()); | 140 return $translator->addPseudoClass($xpath, $node->getIdentifier()); |
161 } | 141 } |
162 | 142 |
163 /** | 143 /** |
164 * @param Node\AttributeNode $node | |
165 * @param Translator $translator | |
166 * | |
167 * @return XPathExpr | 144 * @return XPathExpr |
168 */ | 145 */ |
169 public function translateAttribute(Node\AttributeNode $node, Translator $translator) | 146 public function translateAttribute(Node\AttributeNode $node, Translator $translator) |
170 { | 147 { |
171 $name = $node->getAttribute(); | 148 $name = $node->getAttribute(); |
190 | 167 |
191 return $translator->addAttributeMatching($xpath, $node->getOperator(), $attribute, $value); | 168 return $translator->addAttributeMatching($xpath, $node->getOperator(), $attribute, $value); |
192 } | 169 } |
193 | 170 |
194 /** | 171 /** |
195 * @param Node\ClassNode $node | |
196 * @param Translator $translator | |
197 * | |
198 * @return XPathExpr | 172 * @return XPathExpr |
199 */ | 173 */ |
200 public function translateClass(Node\ClassNode $node, Translator $translator) | 174 public function translateClass(Node\ClassNode $node, Translator $translator) |
201 { | 175 { |
202 $xpath = $translator->nodeToXPath($node->getSelector()); | 176 $xpath = $translator->nodeToXPath($node->getSelector()); |
203 | 177 |
204 return $translator->addAttributeMatching($xpath, '~=', '@class', $node->getName()); | 178 return $translator->addAttributeMatching($xpath, '~=', '@class', $node->getName()); |
205 } | 179 } |
206 | 180 |
207 /** | 181 /** |
208 * @param Node\HashNode $node | |
209 * @param Translator $translator | |
210 * | |
211 * @return XPathExpr | 182 * @return XPathExpr |
212 */ | 183 */ |
213 public function translateHash(Node\HashNode $node, Translator $translator) | 184 public function translateHash(Node\HashNode $node, Translator $translator) |
214 { | 185 { |
215 $xpath = $translator->nodeToXPath($node->getSelector()); | 186 $xpath = $translator->nodeToXPath($node->getSelector()); |
216 | 187 |
217 return $translator->addAttributeMatching($xpath, '=', '@id', $node->getId()); | 188 return $translator->addAttributeMatching($xpath, '=', '@id', $node->getId()); |
218 } | 189 } |
219 | 190 |
220 /** | 191 /** |
221 * @param Node\ElementNode $node | |
222 * | |
223 * @return XPathExpr | 192 * @return XPathExpr |
224 */ | 193 */ |
225 public function translateElement(Node\ElementNode $node) | 194 public function translateElement(Node\ElementNode $node) |
226 { | 195 { |
227 $element = $node->getElement(); | 196 $element = $node->getElement(); |