Mercurial > hg > isophonics-drupal-site
annotate vendor/phpunit/php-code-coverage/src/Report/Xml/Source.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 1fec387a4317 |
children |
rev | line source |
---|---|
Chris@14 | 1 <?php |
Chris@14 | 2 /* |
Chris@14 | 3 * This file is part of the php-code-coverage package. |
Chris@14 | 4 * |
Chris@14 | 5 * (c) Sebastian Bergmann <sebastian@phpunit.de> |
Chris@14 | 6 * |
Chris@14 | 7 * For the full copyright and license information, please view the LICENSE |
Chris@14 | 8 * file that was distributed with this source code. |
Chris@14 | 9 */ |
Chris@14 | 10 |
Chris@14 | 11 namespace SebastianBergmann\CodeCoverage\Report\Xml; |
Chris@14 | 12 |
Chris@14 | 13 use TheSeer\Tokenizer\NamespaceUri; |
Chris@14 | 14 use TheSeer\Tokenizer\Tokenizer; |
Chris@14 | 15 use TheSeer\Tokenizer\XMLSerializer; |
Chris@14 | 16 |
Chris@14 | 17 class Source |
Chris@14 | 18 { |
Chris@14 | 19 /** @var \DOMElement */ |
Chris@14 | 20 private $context; |
Chris@14 | 21 |
Chris@14 | 22 /** |
Chris@14 | 23 * @param \DOMElement $context |
Chris@14 | 24 */ |
Chris@14 | 25 public function __construct(\DOMElement $context) |
Chris@14 | 26 { |
Chris@14 | 27 $this->context = $context; |
Chris@14 | 28 } |
Chris@14 | 29 |
Chris@14 | 30 /** |
Chris@14 | 31 * @param string $source |
Chris@14 | 32 */ |
Chris@14 | 33 public function setSourceCode(string $source) |
Chris@14 | 34 { |
Chris@14 | 35 $context = $this->context; |
Chris@14 | 36 |
Chris@14 | 37 $tokens = (new Tokenizer())->parse($source); |
Chris@14 | 38 $srcDom = (new XMLSerializer(new NamespaceUri($context->namespaceURI)))->toDom($tokens); |
Chris@14 | 39 |
Chris@14 | 40 $context->parentNode->replaceChild( |
Chris@14 | 41 $context->ownerDocument->importNode($srcDom->documentElement, true), |
Chris@14 | 42 $context |
Chris@14 | 43 ); |
Chris@14 | 44 } |
Chris@14 | 45 } |