Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 9
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
DOMBuilder
0.00% covered (danger)
0.00%
0 / 9
0.00% covered (danger)
0.00%
0 / 2
12
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 1
6
 createDocument
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2declare( strict_types = 1 );
3
4namespace Wikimedia\Parsoid\Wt2Html\TreeBuilder;
5
6use Wikimedia\Parsoid\DOM\DOMException;
7use Wikimedia\Parsoid\DOM\DOMImplementation;
8use Wikimedia\Parsoid\Utils\DOMCompat;
9use Wikimedia\RemexHtml\DOM\DOMBuilder as RemexDOMBuilder;
10
11/**
12 * This is the DOMBuilder subclass used by Wt2Html
13 */
14class DOMBuilder extends RemexDOMBuilder {
15    public function __construct() {
16        parent::__construct( DOMCompat::isStandardsMode() ? [
17            'suppressIdAttribute' => !DOMCompat::isUsing84Dom(),
18            'domExceptionClass' => DOMException::class,
19            'domImplementationClass' => DOMImplementation::class,
20        ] : [
21            'suppressHtmlNamespace' => true,
22        ] );
23    }
24
25    /** @inheritDoc */
26    protected function createDocument(
27        ?string $doctypeName = null,
28        ?string $public = null,
29        ?string $system = null
30    ) {
31        $doctypeName ??= 'html';
32        // @phan-suppress-next-line PhanTypeMismatchReturn
33        return DOMCompat::newDocument( $doctypeName === 'html' );
34    }
35}