4
4
5
5
use Sabberworm \CSS \OutputFormat ;
6
6
use Sabberworm \CSS \Parsing \ParserState ;
7
+ use Sabberworm \CSS \Parsing \UnexpectedEOFException ;
8
+ use Sabberworm \CSS \Parsing \UnexpectedTokenException ;
7
9
8
10
class Size extends PrimitiveValue
9
11
{
@@ -29,12 +31,27 @@ class Size extends PrimitiveValue
29
31
*/
30
32
private static $ SIZE_UNITS = null ;
31
33
34
+ /**
35
+ * @var float
36
+ */
32
37
private $ fSize ;
33
38
39
+ /**
40
+ * @var string|null
41
+ */
34
42
private $ sUnit ;
35
43
44
+ /**
45
+ * @var bool
46
+ */
36
47
private $ bIsColorComponent ;
37
48
49
+ /**
50
+ * @param float|int|string $fSize
51
+ * @param string|null $sUnit
52
+ * @param bool $bIsColorComponent
53
+ * @param int $iLineNo
54
+ */
38
55
public function __construct ($ fSize , $ sUnit = null , $ bIsColorComponent = false , $ iLineNo = 0 )
39
56
{
40
57
parent ::__construct ($ iLineNo );
@@ -43,6 +60,14 @@ public function __construct($fSize, $sUnit = null, $bIsColorComponent = false, $
43
60
$ this ->bIsColorComponent = $ bIsColorComponent ;
44
61
}
45
62
63
+ /**
64
+ * @param bool $bIsColorComponent
65
+ *
66
+ * @return Size
67
+ *
68
+ * @throws UnexpectedEOFException
69
+ * @throws UnexpectedTokenException
70
+ */
46
71
public static function parse (ParserState $ oParserState , $ bIsColorComponent = false )
47
72
{
48
73
$ sSize = '' ;
@@ -92,26 +117,43 @@ private static function getSizeUnits()
92
117
return self ::$ SIZE_UNITS ;
93
118
}
94
119
120
+ /**
121
+ * @param string $sUnit
122
+ *
123
+ * @return void
124
+ */
95
125
public function setUnit ($ sUnit )
96
126
{
97
127
$ this ->sUnit = $ sUnit ;
98
128
}
99
129
130
+ /**
131
+ * @return string|null
132
+ */
100
133
public function getUnit ()
101
134
{
102
135
return $ this ->sUnit ;
103
136
}
104
137
138
+ /**
139
+ * @param float|int|string $fSize
140
+ */
105
141
public function setSize ($ fSize )
106
142
{
107
143
$ this ->fSize = (float )$ fSize ;
108
144
}
109
145
146
+ /**
147
+ * @return float
148
+ */
110
149
public function getSize ()
111
150
{
112
151
return $ this ->fSize ;
113
152
}
114
153
154
+ /**
155
+ * @return bool
156
+ */
115
157
public function isColorComponent ()
116
158
{
117
159
return $ this ->bIsColorComponent ;
@@ -130,6 +172,9 @@ public function isSize()
130
172
return !$ this ->isColorComponent ();
131
173
}
132
174
175
+ /**
176
+ * @return bool
177
+ */
133
178
public function isRelative ()
134
179
{
135
180
if (in_array ($ this ->sUnit , self ::RELATIVE_SIZE_UNITS , true )) {
0 commit comments