MDL-55224 core: Import PHP-CSS-Parser into core

Part of MDL-55071
This commit is contained in:
Frederic Massart
2016-09-23 10:49:49 +01:00
committed by Dan Poltawski
parent e86eb6b80d
commit fbe18cc022
34 changed files with 3307 additions and 0 deletions
+66
View File
@@ -0,0 +1,66 @@
<?php
namespace Sabberworm\CSS\Property;
/**
* Class representing an @charset rule.
* The following restrictions apply:
* • May not be found in any CSSList other than the Document.
* • May only appear at the very top of a Document’s contents.
* • Must not appear more than once.
*/
class Charset implements AtRule {
private $sCharset;
protected $iLineNo;
protected $aComment;
public function __construct($sCharset, $iLineNo = 0) {
$this->sCharset = $sCharset;
$this->iLineNo = $iLineNo;
$this->aComments = array();
}
/**
* @return int
*/
public function getLineNo() {
return $this->iLineNo;
}
public function setCharset($sCharset) {
$this->sCharset = $sCharset;
}
public function getCharset() {
return $this->sCharset;
}
public function __toString() {
return $this->render(new \Sabberworm\CSS\OutputFormat());
}
public function render(\Sabberworm\CSS\OutputFormat $oOutputFormat) {
return "@charset {$this->sCharset->render($oOutputFormat)};";
}
public function atRuleName() {
return 'charset';
}
public function atRuleArgs() {
return $this->sCharset;
}
public function addComments(array $aComments) {
$this->aComments = array_merge($this->aComments, $aComments);
}
public function getComments() {
return $this->aComments;
}
public function setComments(array $aComments) {
$this->aComments = $aComments;
}
}