3 namespace Sabberworm\CSS\Value;
5 use Sabberworm\CSS\Parsing\ParserState;
7 class URL extends PrimitiveValue {
11 public function __construct(CSSString $oURL, $iLineNo = 0) {
12 parent::__construct($iLineNo);
16 public static function parse(ParserState $oParserState) {
17 $bUseUrl = $oParserState->comes('url', true);
19 $oParserState->consume('url');
20 $oParserState->consumeWhiteSpace();
21 $oParserState->consume('(');
23 $oParserState->consumeWhiteSpace();
24 $oResult = new URL(CSSString::parse($oParserState), $oParserState->currentLine());
26 $oParserState->consumeWhiteSpace();
27 $oParserState->consume(')');
33 public function setURL(CSSString $oURL) {
37 public function getURL() {
41 public function __toString() {
42 return $this->render(new \Sabberworm\CSS\OutputFormat());
45 public function render(\Sabberworm\CSS\OutputFormat $oOutputFormat) {
46 return "url({$this->oURL->render($oOutputFormat)})";