new appraoch
This commit is contained in:
60
pancake/system/vendor/sabberworm/php-css-parser/src/Parser.php
vendored
Executable file
60
pancake/system/vendor/sabberworm/php-css-parser/src/Parser.php
vendored
Executable file
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
|
||||
namespace Sabberworm\CSS;
|
||||
|
||||
use Sabberworm\CSS\CSSList\Document;
|
||||
use Sabberworm\CSS\Parsing\ParserState;
|
||||
use Sabberworm\CSS\Parsing\SourceException;
|
||||
|
||||
/**
|
||||
* This class parses CSS from text into a data structure.
|
||||
*/
|
||||
class Parser
|
||||
{
|
||||
/**
|
||||
* @var ParserState
|
||||
*/
|
||||
private $oParserState;
|
||||
|
||||
/**
|
||||
* @param string $sText
|
||||
* @param Settings|null $oParserSettings
|
||||
* @param int $iLineNo the line number (starting from 1, not from 0)
|
||||
*/
|
||||
public function __construct($sText, Settings $oParserSettings = null, $iLineNo = 1)
|
||||
{
|
||||
if ($oParserSettings === null) {
|
||||
$oParserSettings = Settings::create();
|
||||
}
|
||||
$this->oParserState = new ParserState($sText, $oParserSettings, $iLineNo);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $sCharset
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setCharset($sCharset)
|
||||
{
|
||||
$this->oParserState->setCharset($sCharset);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return void
|
||||
*/
|
||||
public function getCharset()
|
||||
{
|
||||
// Note: The `return` statement is missing here. This is a bug that needs to be fixed.
|
||||
$this->oParserState->getCharset();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Document
|
||||
*
|
||||
* @throws SourceException
|
||||
*/
|
||||
public function parse()
|
||||
{
|
||||
return Document::parse($this->oParserState);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user