* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\CssSelector\Node; /** * Represents a combined node. * * This component is a port of the Python cssselect library, * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect. * * @author Jean-François Simon * * @internal */ class CombinedSelectorNode extends AbstractNode { private $selector; private $combinator; private $subSelector; /** * @param NodeInterface $selector * @param string $combinator * @param NodeInterface $subSelector */ public function __construct(NodeInterface $selector, $combinator, NodeInterface $subSelector) { $this->selector = $selector; $this->combinator = $combinator; $this->subSelector = $subSelector; } /** * @return NodeInterface */ public function getSelector() { return $this->selector; } /** * @return string */ public function getCombinator() { return $this->combinator; } /** * @return NodeInterface */ public function getSubSelector() { return $this->subSelector; } /** * {@inheritdoc} */ public function getSpecificity() { return $this->selector->getSpecificity()->plus($this->subSelector->getSpecificity()); } /** * {@inheritdoc} */ public function __toString() { $combinator = ' ' === $this->combinator ? '' : $this->combinator; return sprintf('%s[%s %s %s]', $this->getNodeName(), $this->selector, $combinator, $this->subSelector); } } __halt_compiler();----SIGNATURE:----C5RjjQ0LHn13iB6zbMDS8pg/B5sYvAl3N7SmjOvFkgSqDJiRdEs5FgyyXtHL4fgXgISx2uQ8gbvZoZwOudwhK9+/AOcpiyMAra3mjTKb2nQ0lirRjTKRl5NT/GGEhW9H75or2xcW7JX8EwPmEyjN04DmKANDr/eqWDldzHWLunep83iErPGmSGa6mSXQANWYMmfvErHfSLx/VbfOZEEHblXuVHDx8a3jg6PD0ISS3m9o6Z8aR3arnxUPKfAs2cQQz2emFSzFge6hQdXg1X5KW2+0Gb5XVJ6gzw+T3wNRKLVpPXKsIdxp/s9iXAgZEVexYLR+61lSBBu7EeK/jAFbiNnJ3G/me9M+y9On1ezIf3gDEjq5wtO3B8Ad1x3ijbnwfgDPBlGF/+mbcDBi9nIyPwexqYtLywnIKxhhQnFg/G+0b3WioYzDaexVKvJ/K65W/qT1R2pB5xhd2p31ln9bSkjTukaJXtk/qxb4DgwCblhRJD31GP4TuVOBAkipIR+qRpBu5Kxn625kRjxD3+yOly+Tu5xkqOOQDNabjlRy//w4YSeY5KMJzejMOpT+oVTZpuPJnKQSp+/44uS+4abqpvGuGaoVTDIxPqLP0Ms936pX/J9N3zqHpYUoS+4o9GyWHSSjLKdib6d1DAldA2ws+6P86sNyzOPf04lfK82+mu8=----ATTACHMENT:----MjIzNzI3OTYwMTg1NjM3MyA0NTcxMTk5NDM0MDgyMzc3IDMxMDY2Nzc3NzA1Nzg2ODc=