PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / 4.17.1
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress v4.17.1
4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / third-party / vendor / sabberworm / php-css-parser / src / Value / CalcFunction.php
wp-user-avatar / third-party / vendor / sabberworm / php-css-parser / src / Value Last commit date
CSSFunction.php 2 months ago CSSString.php 2 months ago CalcFunction.php 2 months ago CalcRuleValueList.php 2 months ago Color.php 2 months ago LineName.php 2 months ago PrimitiveValue.php 2 months ago RuleValueList.php 2 months ago Size.php 2 months ago URL.php 2 months ago Value.php 2 months ago ValueList.php 2 months ago
CalcFunction.php
92 lines
1 <?php
2
3 namespace ProfilePressVendor\Sabberworm\CSS\Value;
4
5 use ProfilePressVendor\Sabberworm\CSS\Parsing\ParserState;
6 use ProfilePressVendor\Sabberworm\CSS\Parsing\UnexpectedEOFException;
7 use ProfilePressVendor\Sabberworm\CSS\Parsing\UnexpectedTokenException;
8 /**
9 * Support for `-webkit-calc` and `-moz-calc` is deprecated in version 8.8.0, and will be removed in version 9.0.0.
10 */
11 class CalcFunction extends CSSFunction
12 {
13 /**
14 * @var int
15 *
16 * @internal
17 */
18 const T_OPERAND = 1;
19 /**
20 * @var int
21 *
22 * @internal
23 */
24 const T_OPERATOR = 2;
25 /**
26 * @param ParserState $oParserState
27 * @param bool $bIgnoreCase
28 *
29 * @return CalcFunction
30 *
31 * @throws UnexpectedTokenException
32 * @throws UnexpectedEOFException
33 *
34 * @internal since V8.8.0
35 */
36 public static function parse(ParserState $oParserState, $bIgnoreCase = \false)
37 {
38 $aOperators = ['+', '-', '*', '/'];
39 $sFunction = $oParserState->parseIdentifier();
40 if ($oParserState->peek() != '(') {
41 // Found ; or end of line before an opening bracket
42 throw new UnexpectedTokenException('(', $oParserState->peek(), 'literal', $oParserState->currentLine());
43 } elseif (!in_array($sFunction, ['calc', '-moz-calc', '-webkit-calc'])) {
44 // Found invalid calc definition. Example calc (...
45 throw new UnexpectedTokenException('calc', $sFunction, 'literal', $oParserState->currentLine());
46 }
47 $oParserState->consume('(');
48 $oCalcList = new CalcRuleValueList($oParserState->currentLine());
49 $oList = new RuleValueList(',', $oParserState->currentLine());
50 $iNestingLevel = 0;
51 $iLastComponentType = null;
52 while (!$oParserState->comes(')') || $iNestingLevel > 0) {
53 if ($oParserState->isEnd() && $iNestingLevel === 0) {
54 break;
55 }
56 $oParserState->consumeWhiteSpace();
57 if ($oParserState->comes('(')) {
58 $iNestingLevel++;
59 $oCalcList->addListComponent($oParserState->consume(1));
60 $oParserState->consumeWhiteSpace();
61 continue;
62 } elseif ($oParserState->comes(')')) {
63 $iNestingLevel--;
64 $oCalcList->addListComponent($oParserState->consume(1));
65 $oParserState->consumeWhiteSpace();
66 continue;
67 }
68 if ($iLastComponentType != CalcFunction::T_OPERAND) {
69 $oVal = Value::parsePrimitiveValue($oParserState);
70 $oCalcList->addListComponent($oVal);
71 $iLastComponentType = CalcFunction::T_OPERAND;
72 } else if (in_array($oParserState->peek(), $aOperators)) {
73 if ($oParserState->comes('-') || $oParserState->comes('+')) {
74 if ($oParserState->peek(1, -1) != ' ' || !($oParserState->comes('- ') || $oParserState->comes('+ '))) {
75 throw new UnexpectedTokenException(" {$oParserState->peek()} ", $oParserState->peek(1, -1) . $oParserState->peek(2), 'literal', $oParserState->currentLine());
76 }
77 }
78 $oCalcList->addListComponent($oParserState->consume(1));
79 $iLastComponentType = CalcFunction::T_OPERATOR;
80 } else {
81 throw new UnexpectedTokenException(sprintf('Next token was expected to be an operand of type %s. Instead "%s" was found.', implode(', ', $aOperators), $oParserState->peek()), '', 'custom', $oParserState->currentLine());
82 }
83 $oParserState->consumeWhiteSpace();
84 }
85 $oList->addListComponent($oCalcList);
86 if (!$oParserState->isEnd()) {
87 $oParserState->consume(')');
88 }
89 return new CalcFunction($sFunction, $oList, ',', $oParserState->currentLine());
90 }
91 }
92