Mercurial > hg > isophonics-drupal-site
annotate vendor/symfony/css-selector/Node/HashNode.php @ 8:50b0d041100e
Further files for download
author | Chris Cannam |
---|---|
date | Mon, 05 Feb 2018 10:56:40 +0000 |
parents | 4c8ae668cc8c |
children | 1fec387a4317 |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 /* |
Chris@0 | 4 * This file is part of the Symfony package. |
Chris@0 | 5 * |
Chris@0 | 6 * (c) Fabien Potencier <fabien@symfony.com> |
Chris@0 | 7 * |
Chris@0 | 8 * For the full copyright and license information, please view the LICENSE |
Chris@0 | 9 * file that was distributed with this source code. |
Chris@0 | 10 */ |
Chris@0 | 11 |
Chris@0 | 12 namespace Symfony\Component\CssSelector\Node; |
Chris@0 | 13 |
Chris@0 | 14 /** |
Chris@0 | 15 * Represents a "<selector>#<id>" node. |
Chris@0 | 16 * |
Chris@0 | 17 * This component is a port of the Python cssselect library, |
Chris@0 | 18 * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect. |
Chris@0 | 19 * |
Chris@0 | 20 * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com> |
Chris@0 | 21 * |
Chris@0 | 22 * @internal |
Chris@0 | 23 */ |
Chris@0 | 24 class HashNode extends AbstractNode |
Chris@0 | 25 { |
Chris@0 | 26 /** |
Chris@0 | 27 * @var NodeInterface |
Chris@0 | 28 */ |
Chris@0 | 29 private $selector; |
Chris@0 | 30 |
Chris@0 | 31 /** |
Chris@0 | 32 * @var string |
Chris@0 | 33 */ |
Chris@0 | 34 private $id; |
Chris@0 | 35 |
Chris@0 | 36 /** |
Chris@0 | 37 * @param NodeInterface $selector |
Chris@0 | 38 * @param string $id |
Chris@0 | 39 */ |
Chris@0 | 40 public function __construct(NodeInterface $selector, $id) |
Chris@0 | 41 { |
Chris@0 | 42 $this->selector = $selector; |
Chris@0 | 43 $this->id = $id; |
Chris@0 | 44 } |
Chris@0 | 45 |
Chris@0 | 46 /** |
Chris@0 | 47 * @return NodeInterface |
Chris@0 | 48 */ |
Chris@0 | 49 public function getSelector() |
Chris@0 | 50 { |
Chris@0 | 51 return $this->selector; |
Chris@0 | 52 } |
Chris@0 | 53 |
Chris@0 | 54 /** |
Chris@0 | 55 * @return string |
Chris@0 | 56 */ |
Chris@0 | 57 public function getId() |
Chris@0 | 58 { |
Chris@0 | 59 return $this->id; |
Chris@0 | 60 } |
Chris@0 | 61 |
Chris@0 | 62 /** |
Chris@0 | 63 * {@inheritdoc} |
Chris@0 | 64 */ |
Chris@0 | 65 public function getSpecificity() |
Chris@0 | 66 { |
Chris@0 | 67 return $this->selector->getSpecificity()->plus(new Specificity(1, 0, 0)); |
Chris@0 | 68 } |
Chris@0 | 69 |
Chris@0 | 70 /** |
Chris@0 | 71 * {@inheritdoc} |
Chris@0 | 72 */ |
Chris@0 | 73 public function __toString() |
Chris@0 | 74 { |
Chris@0 | 75 return sprintf('%s[%s#%s]', $this->getNodeName(), $this->selector, $this->id); |
Chris@0 | 76 } |
Chris@0 | 77 } |