Blame view
public/vendor/sabberworm/php-css-parser/src/Settings.php
2.38 KB
86143e36f Коммит вторник |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
<?php namespace Sabberworm\CSS; /** * Parser settings class. * * Configure parser behaviour here. */ class Settings { /** * Multi-byte string support. * * If `true` (`mbstring` extension must be enabled), will use (slower) `mb_strlen`, `mb_convert_case`, `mb_substr` * and `mb_strpos` functions. Otherwise, the normal (ASCII-Only) functions will be used. * * @var bool */ public $bMultibyteSupport; /** * The default charset for the CSS if no `@charset` declaration is found. Defaults to utf-8. * * @var string */ public $sDefaultCharset = 'utf-8'; /** * Whether the parser silently ignore invalid rules instead of choking on them. * * @var bool */ public $bLenientParsing = true; private function __construct() { $this->bMultibyteSupport = extension_loaded('mbstring'); } /** * @return self new instance */ public static function create() { return new Settings(); } /** * Enables/disables multi-byte string support. * * If `true` (`mbstring` extension must be enabled), will use (slower) `mb_strlen`, `mb_convert_case`, `mb_substr` * and `mb_strpos` functions. Otherwise, the normal (ASCII-Only) functions will be used. * * @param bool $bMultibyteSupport * * @return self fluent interface */ public function withMultibyteSupport($bMultibyteSupport = true) { $this->bMultibyteSupport = $bMultibyteSupport; return $this; } /** * Sets the charset to be used if the CSS does not contain an `@charset` declaration. * * @param string $sDefaultCharset * * @return self fluent interface */ public function withDefaultCharset($sDefaultCharset) { $this->sDefaultCharset = $sDefaultCharset; return $this; } /** * Configures whether the parser should silently ignore invalid rules. * * @param bool $bLenientParsing * * @return self fluent interface */ public function withLenientParsing($bLenientParsing = true) { $this->bLenientParsing = $bLenientParsing; return $this; } /** * Configures the parser to choke on invalid rules. * * @return self fluent interface */ public function beStrict() { return $this->withLenientParsing(false); } } |