Automattic\WooCommerce\Vendor\Symfony\Component\CssSelector\XPath\Extension

NodeExtension::translateNegationpublicWC 1.0

Method of the class: NodeExtension{}

No Hooks.

Returns

null. Nothing (null).

Usage

$NodeExtension = new NodeExtension();
$NodeExtension->translateNegation( $node, $translator ): XPathExpr;
$node([Node\NegationNode]()) (required)
.
$translator(Translator) (required)
.

NodeExtension::translateNegation() code WC 10.4.3

public function translateNegation(Node\NegationNode $node, Translator $translator): XPathExpr
{
    $xpath = $translator->nodeToXPath($node->getSelector());
    $subXpath = $translator->nodeToXPath($node->getSubSelector());
    $subXpath->addNameTest();

    if ($subXpath->getCondition()) {
        return $xpath->addCondition(sprintf('not(%s)', $subXpath->getCondition()));
    }

    return $xpath->addCondition('0');
}