for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* @package s9e\TextFormatter
* @copyright Copyright (c) 2010-2019 The s9e Authors
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
*/
namespace s9e\TextFormatter\Configurator\TemplateNormalizations;
use DOMElement;
* De-optimize xsl:if elements so that xsl:choose dead branch elimination can apply to them
class DeoptimizeIf extends AbstractNormalization
{
* {@inheritdoc}
protected $queries = ['//xsl:if[@test]'];
protected function normalizeElement(DOMElement $if)
$choose = $this->createElement('xsl:choose');
$when = $choose->appendChild($this->createElement('xsl:when'));
$when->setAttribute('test', $if->getAttribute('test'));
while ($if->firstChild)
$when->appendChild($if->firstChild);
}
$if->parentNode->replaceChild($choose, $if);