diff options
author | Matt Farina <[email protected]> | 2013-04-16 22:44:43 -0400 |
---|---|---|
committer | Matt Farina <[email protected]> | 2013-04-16 22:44:43 -0400 |
commit | 09de792de309eaaffe6153bf12e7a9b2bfe97f82 (patch) | |
tree | bd37b026611e9275810f7faf2fc7c1644f13f89c /src/HTML5/Serializer/Traverser.php | |
parent | d1ea5d11c015bbad698af0dd300eb658fa532c5e (diff) |
Converted the isBlock method to use a case insensitive mask and added tests for it.
Diffstat (limited to 'src/HTML5/Serializer/Traverser.php')
-rw-r--r-- | src/HTML5/Serializer/Traverser.php | 35 |
1 files changed, 8 insertions, 27 deletions
diff --git a/src/HTML5/Serializer/Traverser.php b/src/HTML5/Serializer/Traverser.php index 9acc617..34faf5c 100644 --- a/src/HTML5/Serializer/Traverser.php +++ b/src/HTML5/Serializer/Traverser.php @@ -12,32 +12,7 @@ namespace HTML5\Serializer; */ class Traverser { - // TODO: Refactor this into an element mask. - static $block_elements = array( - 'html' => 1, - 'body' => 1, - 'head' => 1, - 'p' => 1, - 'div' => 1, - 'h1' => 1, - 'h2' => 1, - 'h3' => 1, - 'h4' => 1, - 'h5' => 1, - 'h6' => 1, - 'title' => 1, - 'script' => 1, - 'link' => 1, - 'meta' => 1, - 'section' => 1, - 'article' => 1, - 'table' => 1, - 'tbody' => 1, - 'tr' => 1, - 'th' => 1, - 'td' => 1, - //'form' => 1, - ); + static $block_elements = 'html|body|head|p|div|h[1-6]|title|script|link|meta|section|article|table|tbody|tr|th|td'; // TODO: Refactor this into an element mask. static $literal_elements = array( @@ -300,9 +275,15 @@ class Traverser { /** * Is block element. + * + * @param string $name + * The name of the element to test if a block level element + * + * @return bool + * If the element is block level or not. */ protected function isBlock($name) { - return isset(self::$block_elements[$name]); + return (bool)preg_match('/^(' . self::$block_elements . ')$/i', $name); } protected function isLiteral($element) { |