OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Alexey Proskuryakov <ap@nypop.com>. | 2 * Copyright (C) 2007 Alexey Proskuryakov <ap@nypop.com>. |
3 * Copyright (C) 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. | 3 * Copyright (C) 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. |
4 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 4 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
5 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com> | 5 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com> |
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
7 * | 7 * |
8 * Redistribution and use in source and binary forms, with or without | 8 * Redistribution and use in source and binary forms, with or without |
9 * modification, are permitted provided that the following conditions | 9 * modification, are permitted provided that the following conditions |
10 * are met: | 10 * are met: |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 #include "platform/text/TextDirection.h" | 49 #include "platform/text/TextDirection.h" |
50 #include "platform/text/TextRun.h" | 50 #include "platform/text/TextRun.h" |
51 #include "platform/text/UnicodeBidi.h" | 51 #include "platform/text/UnicodeBidi.h" |
52 #include "platform/text/WritingMode.h" | 52 #include "platform/text/WritingMode.h" |
53 #include "public/platform/WebBlendMode.h" | 53 #include "public/platform/WebBlendMode.h" |
54 #include "public/platform/WebScrollBlocksOn.h" | 54 #include "public/platform/WebScrollBlocksOn.h" |
55 #include "wtf/MathExtras.h" | 55 #include "wtf/MathExtras.h" |
56 | 56 |
57 namespace blink { | 57 namespace blink { |
58 | 58 |
59 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(short i) | 59 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(short i) |
60 : CSSValue(PrimitiveClass) | |
61 { | 60 { |
62 m_primitiveUnitType = CSS_NUMBER; | 61 return create(static_cast<double>(i), CSS_NUMBER); |
63 m_value.num = static_cast<double>(i); | |
64 } | 62 } |
65 | 63 |
66 template<> inline CSSPrimitiveValue::operator short() const | 64 template<> inline CSSPrimitiveValue::operator short() const |
67 { | 65 { |
68 ASSERT(isNumber()); | 66 ASSERT(isNumber()); |
69 return clampTo<short>(getDoubleValue()); | 67 return clampTo<short>(getDoubleValue()); |
70 } | 68 } |
71 | 69 |
72 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(unsigned short i) | 70 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(unsigned short i) |
73 : CSSValue(PrimitiveClass) | |
74 { | 71 { |
75 m_primitiveUnitType = CSS_NUMBER; | 72 return create(static_cast<double>(i), CSS_NUMBER); |
76 m_value.num = static_cast<double>(i); | |
77 } | 73 } |
78 | 74 |
79 template<> inline CSSPrimitiveValue::operator unsigned short() const | 75 template<> inline CSSPrimitiveValue::operator unsigned short() const |
80 { | 76 { |
81 ASSERT(isNumber()); | 77 ASSERT(isNumber()); |
82 return clampTo<unsigned short>(getDoubleValue()); | 78 return clampTo<unsigned short>(getDoubleValue()); |
83 } | 79 } |
84 | 80 |
85 template<> inline CSSPrimitiveValue::operator int() const | 81 template<> inline CSSPrimitiveValue::operator int() const |
86 { | 82 { |
87 ASSERT(isNumber()); | 83 ASSERT(isNumber()); |
88 return clampTo<int>(getDoubleValue()); | 84 return clampTo<int>(getDoubleValue()); |
89 } | 85 } |
90 | 86 |
91 template<> inline CSSPrimitiveValue::operator unsigned() const | 87 template<> inline CSSPrimitiveValue::operator unsigned() const |
92 { | 88 { |
93 ASSERT(isNumber()); | 89 ASSERT(isNumber()); |
94 return clampTo<unsigned>(getDoubleValue()); | 90 return clampTo<unsigned>(getDoubleValue()); |
95 } | 91 } |
96 | 92 |
97 | 93 |
98 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(float i) | 94 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(float i) |
99 : CSSValue(PrimitiveClass) | |
100 { | 95 { |
101 m_primitiveUnitType = CSS_NUMBER; | 96 return create(static_cast<double>(i), CSS_NUMBER); |
102 m_value.num = static_cast<double>(i); | |
103 } | 97 } |
104 | 98 |
105 template<> inline CSSPrimitiveValue::operator float() const | 99 template<> inline CSSPrimitiveValue::operator float() const |
106 { | 100 { |
107 ASSERT(isNumber()); | 101 ASSERT(isNumber()); |
108 return clampTo<float>(getDoubleValue()); | 102 return clampTo<float>(getDoubleValue()); |
109 } | 103 } |
110 | 104 |
111 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineClampValue i) | 105 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(LineClampValue i) |
112 : CSSValue(PrimitiveClass) | |
113 { | 106 { |
114 m_primitiveUnitType = i.isPercentage() ? CSS_PERCENTAGE : CSS_NUMBER; | 107 return create(static_cast<double>(i.value()), i.isPercentage() ? CSS_PERCENT
AGE : CSS_NUMBER); |
115 m_value.num = static_cast<double>(i.value()); | |
116 } | 108 } |
117 | 109 |
118 template<> inline CSSPrimitiveValue::operator LineClampValue() const | 110 template<> inline CSSPrimitiveValue::operator LineClampValue() const |
119 { | 111 { |
120 if (type() == CSS_NUMBER) | 112 if (type() == CSS_NUMBER) |
121 return LineClampValue(clampTo<int>(value().num), LineClampLineCount); | 113 return LineClampValue(clampTo<int>(value().num), LineClampLineCount); |
122 | 114 |
123 if (type() == CSS_PERCENTAGE) | 115 if (type() == CSS_PERCENTAGE) |
124 return LineClampValue(clampTo<int>(value().num), LineClampPercentage); | 116 return LineClampValue(clampTo<int>(value().num), LineClampPercentage); |
125 | 117 |
126 ASSERT_NOT_REACHED(); | 118 ASSERT_NOT_REACHED(); |
127 return LineClampValue(); | 119 return LineClampValue(); |
128 } | 120 } |
129 | 121 |
130 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(CSSReflectionDirection e) | 122 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(CSSReflectionDirection e) |
131 : CSSValue(PrimitiveClass) | |
132 { | 123 { |
133 m_primitiveUnitType = CSS_VALUE_ID; | 124 CSSValueID valueID = CSSValueInvalid; |
134 switch (e) { | 125 switch (e) { |
135 case ReflectionAbove: | 126 case ReflectionAbove: |
136 m_value.valueID = CSSValueAbove; | 127 valueID = CSSValueAbove; |
137 break; | 128 break; |
138 case ReflectionBelow: | 129 case ReflectionBelow: |
139 m_value.valueID = CSSValueBelow; | 130 valueID = CSSValueBelow; |
140 break; | 131 break; |
141 case ReflectionLeft: | 132 case ReflectionLeft: |
142 m_value.valueID = CSSValueLeft; | 133 valueID = CSSValueLeft; |
143 break; | 134 break; |
144 case ReflectionRight: | 135 case ReflectionRight: |
145 m_value.valueID = CSSValueRight; | 136 valueID = CSSValueRight; |
146 } | 137 } |
| 138 return create(valueID); |
147 } | 139 } |
148 | 140 |
149 template<> inline CSSPrimitiveValue::operator CSSReflectionDirection() const | 141 template<> inline CSSPrimitiveValue::operator CSSReflectionDirection() const |
150 { | 142 { |
151 ASSERT(isValueID()); | 143 ASSERT(isValueID()); |
152 switch (value().valueID) { | 144 switch (value().valueID) { |
153 case CSSValueAbove: | 145 case CSSValueAbove: |
154 return ReflectionAbove; | 146 return ReflectionAbove; |
155 case CSSValueBelow: | 147 case CSSValueBelow: |
156 return ReflectionBelow; | 148 return ReflectionBelow; |
157 case CSSValueLeft: | 149 case CSSValueLeft: |
158 return ReflectionLeft; | 150 return ReflectionLeft; |
159 case CSSValueRight: | 151 case CSSValueRight: |
160 return ReflectionRight; | 152 return ReflectionRight; |
161 default: | 153 default: |
162 break; | 154 break; |
163 } | 155 } |
164 | 156 |
165 ASSERT_NOT_REACHED(); | 157 ASSERT_NOT_REACHED(); |
166 return ReflectionBelow; | 158 return ReflectionBelow; |
167 } | 159 } |
168 | 160 |
169 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ColumnFill columnFill) | 161 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ColumnFill columnFill) |
170 : CSSValue(PrimitiveClass) | |
171 { | 162 { |
172 m_primitiveUnitType = CSS_VALUE_ID; | 163 CSSValueID valueID = CSSValueInvalid; |
173 switch (columnFill) { | 164 switch (columnFill) { |
174 case ColumnFillAuto: | 165 case ColumnFillAuto: |
175 m_value.valueID = CSSValueAuto; | 166 valueID = CSSValueAuto; |
176 break; | 167 break; |
177 case ColumnFillBalance: | 168 case ColumnFillBalance: |
178 m_value.valueID = CSSValueBalance; | 169 valueID = CSSValueBalance; |
179 break; | 170 break; |
180 } | 171 } |
| 172 return create(valueID); |
181 } | 173 } |
182 | 174 |
183 template<> inline CSSPrimitiveValue::operator ColumnFill() const | 175 template<> inline CSSPrimitiveValue::operator ColumnFill() const |
184 { | 176 { |
185 if (type() == CSS_VALUE_ID) { | 177 if (type() == CSS_VALUE_ID) { |
186 if (value().valueID == CSSValueBalance) | 178 if (value().valueID == CSSValueBalance) |
187 return ColumnFillBalance; | 179 return ColumnFillBalance; |
188 if (value().valueID == CSSValueAuto) | 180 if (value().valueID == CSSValueAuto) |
189 return ColumnFillAuto; | 181 return ColumnFillAuto; |
190 } | 182 } |
191 ASSERT_NOT_REACHED(); | 183 ASSERT_NOT_REACHED(); |
192 return ColumnFillBalance; | 184 return ColumnFillBalance; |
193 } | 185 } |
194 | 186 |
195 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ColumnSpan columnSpan) | 187 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ColumnSpan columnSpan) |
196 : CSSValue(PrimitiveClass) | |
197 { | 188 { |
198 m_primitiveUnitType = CSS_VALUE_ID; | 189 CSSValueID valueID = CSSValueInvalid; |
199 switch (columnSpan) { | 190 switch (columnSpan) { |
200 case ColumnSpanAll: | 191 case ColumnSpanAll: |
201 m_value.valueID = CSSValueAll; | 192 valueID = CSSValueAll; |
202 break; | 193 break; |
203 case ColumnSpanNone: | 194 case ColumnSpanNone: |
204 m_value.valueID = CSSValueNone; | 195 valueID = CSSValueNone; |
205 break; | 196 break; |
206 } | 197 } |
| 198 return create(valueID); |
207 } | 199 } |
208 | 200 |
209 template<> inline CSSPrimitiveValue::operator ColumnSpan() const | 201 template<> inline CSSPrimitiveValue::operator ColumnSpan() const |
210 { | 202 { |
211 // Map 1 to none for compatibility reasons. | 203 // Map 1 to none for compatibility reasons. |
212 if (type() == CSS_NUMBER && value().num == 1) | 204 if (type() == CSS_NUMBER && value().num == 1) |
213 return ColumnSpanNone; | 205 return ColumnSpanNone; |
214 | 206 |
215 ASSERT(isValueID()); | 207 ASSERT(isValueID()); |
216 switch (value().valueID) { | 208 switch (value().valueID) { |
217 case CSSValueAll: | 209 case CSSValueAll: |
218 return ColumnSpanAll; | 210 return ColumnSpanAll; |
219 case CSSValueNone: | 211 case CSSValueNone: |
220 return ColumnSpanNone; | 212 return ColumnSpanNone; |
221 default: | 213 default: |
222 break; | 214 break; |
223 } | 215 } |
224 | 216 |
225 ASSERT_NOT_REACHED(); | 217 ASSERT_NOT_REACHED(); |
226 return ColumnSpanNone; | 218 return ColumnSpanNone; |
227 } | 219 } |
228 | 220 |
229 | 221 |
230 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(PrintColorAdjust value) | 222 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(PrintColorAdjust value) |
231 : CSSValue(PrimitiveClass) | |
232 { | 223 { |
233 m_primitiveUnitType = CSS_VALUE_ID; | 224 CSSValueID valueID = CSSValueInvalid; |
234 switch (value) { | 225 switch (value) { |
235 case PrintColorAdjustExact: | 226 case PrintColorAdjustExact: |
236 m_value.valueID = CSSValueExact; | 227 valueID = CSSValueExact; |
237 break; | 228 break; |
238 case PrintColorAdjustEconomy: | 229 case PrintColorAdjustEconomy: |
239 m_value.valueID = CSSValueEconomy; | 230 valueID = CSSValueEconomy; |
240 break; | 231 break; |
241 } | 232 } |
| 233 return create(valueID); |
242 } | 234 } |
243 | 235 |
244 template<> inline CSSPrimitiveValue::operator PrintColorAdjust() const | 236 template<> inline CSSPrimitiveValue::operator PrintColorAdjust() const |
245 { | 237 { |
246 ASSERT(isValueID()); | 238 ASSERT(isValueID()); |
247 switch (value().valueID) { | 239 switch (value().valueID) { |
248 case CSSValueEconomy: | 240 case CSSValueEconomy: |
249 return PrintColorAdjustEconomy; | 241 return PrintColorAdjustEconomy; |
250 case CSSValueExact: | 242 case CSSValueExact: |
251 return PrintColorAdjustExact; | 243 return PrintColorAdjustExact; |
252 default: | 244 default: |
253 break; | 245 break; |
254 } | 246 } |
255 | 247 |
256 ASSERT_NOT_REACHED(); | 248 ASSERT_NOT_REACHED(); |
257 return PrintColorAdjustEconomy; | 249 return PrintColorAdjustEconomy; |
258 } | 250 } |
259 | 251 |
260 | 252 |
261 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBorderStyle e) | 253 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBorderStyle e) |
262 : CSSValue(PrimitiveClass) | |
263 { | 254 { |
264 m_primitiveUnitType = CSS_VALUE_ID; | 255 CSSValueID valueID = CSSValueInvalid; |
265 switch (e) { | 256 switch (e) { |
266 case BNONE: | 257 case BNONE: |
267 m_value.valueID = CSSValueNone; | 258 valueID = CSSValueNone; |
268 break; | 259 break; |
269 case BHIDDEN: | 260 case BHIDDEN: |
270 m_value.valueID = CSSValueHidden; | 261 valueID = CSSValueHidden; |
271 break; | 262 break; |
272 case INSET: | 263 case INSET: |
273 m_value.valueID = CSSValueInset; | 264 valueID = CSSValueInset; |
274 break; | 265 break; |
275 case GROOVE: | 266 case GROOVE: |
276 m_value.valueID = CSSValueGroove; | 267 valueID = CSSValueGroove; |
277 break; | 268 break; |
278 case RIDGE: | 269 case RIDGE: |
279 m_value.valueID = CSSValueRidge; | 270 valueID = CSSValueRidge; |
280 break; | 271 break; |
281 case OUTSET: | 272 case OUTSET: |
282 m_value.valueID = CSSValueOutset; | 273 valueID = CSSValueOutset; |
283 break; | 274 break; |
284 case DOTTED: | 275 case DOTTED: |
285 m_value.valueID = CSSValueDotted; | 276 valueID = CSSValueDotted; |
286 break; | 277 break; |
287 case DASHED: | 278 case DASHED: |
288 m_value.valueID = CSSValueDashed; | 279 valueID = CSSValueDashed; |
289 break; | 280 break; |
290 case SOLID: | 281 case SOLID: |
291 m_value.valueID = CSSValueSolid; | 282 valueID = CSSValueSolid; |
292 break; | 283 break; |
293 case DOUBLE: | 284 case DOUBLE: |
294 m_value.valueID = CSSValueDouble; | 285 valueID = CSSValueDouble; |
295 break; | 286 break; |
296 } | 287 } |
| 288 return create(valueID); |
297 } | 289 } |
298 | 290 |
299 template<> inline CSSPrimitiveValue::operator EBorderStyle() const | 291 template<> inline CSSPrimitiveValue::operator EBorderStyle() const |
300 { | 292 { |
301 ASSERT(isValueID()); | 293 ASSERT(isValueID()); |
302 if (value().valueID == CSSValueAuto) // Valid for CSS outline-style | 294 if (value().valueID == CSSValueAuto) // Valid for CSS outline-style |
303 return DOTTED; | 295 return DOTTED; |
304 return (EBorderStyle)(value().valueID - CSSValueNone); | 296 return (EBorderStyle)(value().valueID - CSSValueNone); |
305 } | 297 } |
306 | 298 |
307 template<> inline CSSPrimitiveValue::operator OutlineIsAuto() const | 299 template<> inline CSSPrimitiveValue::operator OutlineIsAuto() const |
308 { | 300 { |
309 if (value().valueID == CSSValueAuto) | 301 if (value().valueID == CSSValueAuto) |
310 return AUTO_ON; | 302 return AUTO_ON; |
311 return AUTO_OFF; | 303 return AUTO_OFF; |
312 } | 304 } |
313 | 305 |
314 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(CompositeOperator e) | 306 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(CompositeOperator e) |
315 : CSSValue(PrimitiveClass) | |
316 { | 307 { |
317 m_primitiveUnitType = CSS_VALUE_ID; | 308 CSSValueID valueID = CSSValueInvalid; |
318 switch (e) { | 309 switch (e) { |
319 case CompositeClear: | 310 case CompositeClear: |
320 m_value.valueID = CSSValueClear; | 311 valueID = CSSValueClear; |
321 break; | 312 break; |
322 case CompositeCopy: | 313 case CompositeCopy: |
323 m_value.valueID = CSSValueCopy; | 314 valueID = CSSValueCopy; |
324 break; | 315 break; |
325 case CompositeSourceOver: | 316 case CompositeSourceOver: |
326 m_value.valueID = CSSValueSourceOver; | 317 valueID = CSSValueSourceOver; |
327 break; | 318 break; |
328 case CompositeSourceIn: | 319 case CompositeSourceIn: |
329 m_value.valueID = CSSValueSourceIn; | 320 valueID = CSSValueSourceIn; |
330 break; | 321 break; |
331 case CompositeSourceOut: | 322 case CompositeSourceOut: |
332 m_value.valueID = CSSValueSourceOut; | 323 valueID = CSSValueSourceOut; |
333 break; | 324 break; |
334 case CompositeSourceAtop: | 325 case CompositeSourceAtop: |
335 m_value.valueID = CSSValueSourceAtop; | 326 valueID = CSSValueSourceAtop; |
336 break; | 327 break; |
337 case CompositeDestinationOver: | 328 case CompositeDestinationOver: |
338 m_value.valueID = CSSValueDestinationOver; | 329 valueID = CSSValueDestinationOver; |
339 break; | 330 break; |
340 case CompositeDestinationIn: | 331 case CompositeDestinationIn: |
341 m_value.valueID = CSSValueDestinationIn; | 332 valueID = CSSValueDestinationIn; |
342 break; | 333 break; |
343 case CompositeDestinationOut: | 334 case CompositeDestinationOut: |
344 m_value.valueID = CSSValueDestinationOut; | 335 valueID = CSSValueDestinationOut; |
345 break; | 336 break; |
346 case CompositeDestinationAtop: | 337 case CompositeDestinationAtop: |
347 m_value.valueID = CSSValueDestinationAtop; | 338 valueID = CSSValueDestinationAtop; |
348 break; | 339 break; |
349 case CompositeXOR: | 340 case CompositeXOR: |
350 m_value.valueID = CSSValueXor; | 341 valueID = CSSValueXor; |
351 break; | 342 break; |
352 case CompositePlusLighter: | 343 case CompositePlusLighter: |
353 m_value.valueID = CSSValuePlusLighter; | 344 valueID = CSSValuePlusLighter; |
354 break; | 345 break; |
355 default: | 346 default: |
356 ASSERT_NOT_REACHED(); | 347 ASSERT_NOT_REACHED(); |
357 break; | 348 break; |
358 } | 349 } |
| 350 return create(valueID); |
359 } | 351 } |
360 | 352 |
361 template<> inline CSSPrimitiveValue::operator CompositeOperator() const | 353 template<> inline CSSPrimitiveValue::operator CompositeOperator() const |
362 { | 354 { |
363 ASSERT(isValueID()); | 355 ASSERT(isValueID()); |
364 switch (value().valueID) { | 356 switch (value().valueID) { |
365 case CSSValueClear: | 357 case CSSValueClear: |
366 return CompositeClear; | 358 return CompositeClear; |
367 case CSSValueCopy: | 359 case CSSValueCopy: |
368 return CompositeCopy; | 360 return CompositeCopy; |
(...skipping 18 matching lines...) Expand all Loading... |
387 case CSSValuePlusLighter: | 379 case CSSValuePlusLighter: |
388 return CompositePlusLighter; | 380 return CompositePlusLighter; |
389 default: | 381 default: |
390 break; | 382 break; |
391 } | 383 } |
392 | 384 |
393 ASSERT_NOT_REACHED(); | 385 ASSERT_NOT_REACHED(); |
394 return CompositeClear; | 386 return CompositeClear; |
395 } | 387 } |
396 | 388 |
397 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ControlPart e) | 389 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ControlPart e) |
398 : CSSValue(PrimitiveClass) | |
399 { | 390 { |
400 m_primitiveUnitType = CSS_VALUE_ID; | 391 CSSValueID valueID = CSSValueInvalid; |
401 switch (e) { | 392 switch (e) { |
402 case NoControlPart: | 393 case NoControlPart: |
403 m_value.valueID = CSSValueNone; | 394 valueID = CSSValueNone; |
404 break; | 395 break; |
405 case CheckboxPart: | 396 case CheckboxPart: |
406 m_value.valueID = CSSValueCheckbox; | 397 valueID = CSSValueCheckbox; |
407 break; | 398 break; |
408 case RadioPart: | 399 case RadioPart: |
409 m_value.valueID = CSSValueRadio; | 400 valueID = CSSValueRadio; |
410 break; | 401 break; |
411 case PushButtonPart: | 402 case PushButtonPart: |
412 m_value.valueID = CSSValuePushButton; | 403 valueID = CSSValuePushButton; |
413 break; | 404 break; |
414 case SquareButtonPart: | 405 case SquareButtonPart: |
415 m_value.valueID = CSSValueSquareButton; | 406 valueID = CSSValueSquareButton; |
416 break; | 407 break; |
417 case ButtonPart: | 408 case ButtonPart: |
418 m_value.valueID = CSSValueButton; | 409 valueID = CSSValueButton; |
419 break; | 410 break; |
420 case ButtonBevelPart: | 411 case ButtonBevelPart: |
421 m_value.valueID = CSSValueButtonBevel; | 412 valueID = CSSValueButtonBevel; |
422 break; | 413 break; |
423 case InnerSpinButtonPart: | 414 case InnerSpinButtonPart: |
424 m_value.valueID = CSSValueInnerSpinButton; | 415 valueID = CSSValueInnerSpinButton; |
425 break; | 416 break; |
426 case ListboxPart: | 417 case ListboxPart: |
427 m_value.valueID = CSSValueListbox; | 418 valueID = CSSValueListbox; |
428 break; | 419 break; |
429 case ListItemPart: | 420 case ListItemPart: |
430 m_value.valueID = CSSValueListitem; | 421 valueID = CSSValueListitem; |
431 break; | 422 break; |
432 case MediaEnterFullscreenButtonPart: | 423 case MediaEnterFullscreenButtonPart: |
433 m_value.valueID = CSSValueMediaEnterFullscreenButton; | 424 valueID = CSSValueMediaEnterFullscreenButton; |
434 break; | 425 break; |
435 case MediaExitFullscreenButtonPart: | 426 case MediaExitFullscreenButtonPart: |
436 m_value.valueID = CSSValueMediaExitFullscreenButton; | 427 valueID = CSSValueMediaExitFullscreenButton; |
437 break; | 428 break; |
438 case MediaPlayButtonPart: | 429 case MediaPlayButtonPart: |
439 m_value.valueID = CSSValueMediaPlayButton; | 430 valueID = CSSValueMediaPlayButton; |
440 break; | 431 break; |
441 case MediaOverlayPlayButtonPart: | 432 case MediaOverlayPlayButtonPart: |
442 m_value.valueID = CSSValueMediaOverlayPlayButton; | 433 valueID = CSSValueMediaOverlayPlayButton; |
443 break; | 434 break; |
444 case MediaMuteButtonPart: | 435 case MediaMuteButtonPart: |
445 m_value.valueID = CSSValueMediaMuteButton; | 436 valueID = CSSValueMediaMuteButton; |
446 break; | 437 break; |
447 case MediaToggleClosedCaptionsButtonPart: | 438 case MediaToggleClosedCaptionsButtonPart: |
448 m_value.valueID = CSSValueMediaToggleClosedCaptionsButton; | 439 valueID = CSSValueMediaToggleClosedCaptionsButton; |
449 break; | 440 break; |
450 case MediaCastOffButtonPart: | 441 case MediaCastOffButtonPart: |
451 m_value.valueID = CSSValueInternalMediaCastOffButton; | 442 valueID = CSSValueInternalMediaCastOffButton; |
452 break; | 443 break; |
453 case MediaOverlayCastOffButtonPart: | 444 case MediaOverlayCastOffButtonPart: |
454 m_value.valueID = CSSValueInternalMediaOverlayCastOffButton; | 445 valueID = CSSValueInternalMediaOverlayCastOffButton; |
455 break; | 446 break; |
456 case MediaSliderPart: | 447 case MediaSliderPart: |
457 m_value.valueID = CSSValueMediaSlider; | 448 valueID = CSSValueMediaSlider; |
458 break; | 449 break; |
459 case MediaSliderThumbPart: | 450 case MediaSliderThumbPart: |
460 m_value.valueID = CSSValueMediaSliderthumb; | 451 valueID = CSSValueMediaSliderthumb; |
461 break; | 452 break; |
462 case MediaVolumeSliderContainerPart: | 453 case MediaVolumeSliderContainerPart: |
463 m_value.valueID = CSSValueMediaVolumeSliderContainer; | 454 valueID = CSSValueMediaVolumeSliderContainer; |
464 break; | 455 break; |
465 case MediaVolumeSliderPart: | 456 case MediaVolumeSliderPart: |
466 m_value.valueID = CSSValueMediaVolumeSlider; | 457 valueID = CSSValueMediaVolumeSlider; |
467 break; | 458 break; |
468 case MediaVolumeSliderThumbPart: | 459 case MediaVolumeSliderThumbPart: |
469 m_value.valueID = CSSValueMediaVolumeSliderthumb; | 460 valueID = CSSValueMediaVolumeSliderthumb; |
470 break; | 461 break; |
471 case MediaControlsBackgroundPart: | 462 case MediaControlsBackgroundPart: |
472 m_value.valueID = CSSValueMediaControlsBackground; | 463 valueID = CSSValueMediaControlsBackground; |
473 break; | 464 break; |
474 case MediaControlsFullscreenBackgroundPart: | 465 case MediaControlsFullscreenBackgroundPart: |
475 m_value.valueID = CSSValueMediaControlsFullscreenBackground; | 466 valueID = CSSValueMediaControlsFullscreenBackground; |
476 break; | 467 break; |
477 case MediaFullScreenVolumeSliderPart: | 468 case MediaFullScreenVolumeSliderPart: |
478 m_value.valueID = CSSValueMediaFullscreenVolumeSlider; | 469 valueID = CSSValueMediaFullscreenVolumeSlider; |
479 break; | 470 break; |
480 case MediaFullScreenVolumeSliderThumbPart: | 471 case MediaFullScreenVolumeSliderThumbPart: |
481 m_value.valueID = CSSValueMediaFullscreenVolumeSliderThumb; | 472 valueID = CSSValueMediaFullscreenVolumeSliderThumb; |
482 break; | 473 break; |
483 case MediaCurrentTimePart: | 474 case MediaCurrentTimePart: |
484 m_value.valueID = CSSValueMediaCurrentTimeDisplay; | 475 valueID = CSSValueMediaCurrentTimeDisplay; |
485 break; | 476 break; |
486 case MediaTimeRemainingPart: | 477 case MediaTimeRemainingPart: |
487 m_value.valueID = CSSValueMediaTimeRemainingDisplay; | 478 valueID = CSSValueMediaTimeRemainingDisplay; |
488 break; | 479 break; |
489 case MenulistPart: | 480 case MenulistPart: |
490 m_value.valueID = CSSValueMenulist; | 481 valueID = CSSValueMenulist; |
491 break; | 482 break; |
492 case MenulistButtonPart: | 483 case MenulistButtonPart: |
493 m_value.valueID = CSSValueMenulistButton; | 484 valueID = CSSValueMenulistButton; |
494 break; | 485 break; |
495 case MenulistTextPart: | 486 case MenulistTextPart: |
496 m_value.valueID = CSSValueMenulistText; | 487 valueID = CSSValueMenulistText; |
497 break; | 488 break; |
498 case MenulistTextFieldPart: | 489 case MenulistTextFieldPart: |
499 m_value.valueID = CSSValueMenulistTextfield; | 490 valueID = CSSValueMenulistTextfield; |
500 break; | 491 break; |
501 case MeterPart: | 492 case MeterPart: |
502 m_value.valueID = CSSValueMeter; | 493 valueID = CSSValueMeter; |
503 break; | 494 break; |
504 case RelevancyLevelIndicatorPart: | 495 case RelevancyLevelIndicatorPart: |
505 m_value.valueID = CSSValueRelevancyLevelIndicator; | 496 valueID = CSSValueRelevancyLevelIndicator; |
506 break; | 497 break; |
507 case ContinuousCapacityLevelIndicatorPart: | 498 case ContinuousCapacityLevelIndicatorPart: |
508 m_value.valueID = CSSValueContinuousCapacityLevelIndicator; | 499 valueID = CSSValueContinuousCapacityLevelIndicator; |
509 break; | 500 break; |
510 case DiscreteCapacityLevelIndicatorPart: | 501 case DiscreteCapacityLevelIndicatorPart: |
511 m_value.valueID = CSSValueDiscreteCapacityLevelIndicator; | 502 valueID = CSSValueDiscreteCapacityLevelIndicator; |
512 break; | 503 break; |
513 case RatingLevelIndicatorPart: | 504 case RatingLevelIndicatorPart: |
514 m_value.valueID = CSSValueRatingLevelIndicator; | 505 valueID = CSSValueRatingLevelIndicator; |
515 break; | 506 break; |
516 case ProgressBarPart: | 507 case ProgressBarPart: |
517 m_value.valueID = CSSValueProgressBar; | 508 valueID = CSSValueProgressBar; |
518 break; | 509 break; |
519 case ProgressBarValuePart: | 510 case ProgressBarValuePart: |
520 m_value.valueID = CSSValueProgressBarValue; | 511 valueID = CSSValueProgressBarValue; |
521 break; | 512 break; |
522 case SliderHorizontalPart: | 513 case SliderHorizontalPart: |
523 m_value.valueID = CSSValueSliderHorizontal; | 514 valueID = CSSValueSliderHorizontal; |
524 break; | 515 break; |
525 case SliderVerticalPart: | 516 case SliderVerticalPart: |
526 m_value.valueID = CSSValueSliderVertical; | 517 valueID = CSSValueSliderVertical; |
527 break; | 518 break; |
528 case SliderThumbHorizontalPart: | 519 case SliderThumbHorizontalPart: |
529 m_value.valueID = CSSValueSliderthumbHorizontal; | 520 valueID = CSSValueSliderthumbHorizontal; |
530 break; | 521 break; |
531 case SliderThumbVerticalPart: | 522 case SliderThumbVerticalPart: |
532 m_value.valueID = CSSValueSliderthumbVertical; | 523 valueID = CSSValueSliderthumbVertical; |
533 break; | 524 break; |
534 case CaretPart: | 525 case CaretPart: |
535 m_value.valueID = CSSValueCaret; | 526 valueID = CSSValueCaret; |
536 break; | 527 break; |
537 case SearchFieldPart: | 528 case SearchFieldPart: |
538 m_value.valueID = CSSValueSearchfield; | 529 valueID = CSSValueSearchfield; |
539 break; | 530 break; |
540 case SearchFieldDecorationPart: | 531 case SearchFieldDecorationPart: |
541 m_value.valueID = CSSValueSearchfieldDecoration; | 532 valueID = CSSValueSearchfieldDecoration; |
542 break; | 533 break; |
543 case SearchFieldResultsDecorationPart: | 534 case SearchFieldResultsDecorationPart: |
544 m_value.valueID = CSSValueSearchfieldResultsDecoration; | 535 valueID = CSSValueSearchfieldResultsDecoration; |
545 break; | 536 break; |
546 case SearchFieldCancelButtonPart: | 537 case SearchFieldCancelButtonPart: |
547 m_value.valueID = CSSValueSearchfieldCancelButton; | 538 valueID = CSSValueSearchfieldCancelButton; |
548 break; | 539 break; |
549 case TextFieldPart: | 540 case TextFieldPart: |
550 m_value.valueID = CSSValueTextfield; | 541 valueID = CSSValueTextfield; |
551 break; | 542 break; |
552 case TextAreaPart: | 543 case TextAreaPart: |
553 m_value.valueID = CSSValueTextarea; | 544 valueID = CSSValueTextarea; |
554 break; | 545 break; |
555 case CapsLockIndicatorPart: | 546 case CapsLockIndicatorPart: |
556 m_value.valueID = CSSValueCapsLockIndicator; | 547 valueID = CSSValueCapsLockIndicator; |
557 break; | 548 break; |
558 } | 549 } |
| 550 return create(valueID); |
| 551 return create(valueID); |
559 } | 552 } |
560 | 553 |
561 template<> inline CSSPrimitiveValue::operator ControlPart() const | 554 template<> inline CSSPrimitiveValue::operator ControlPart() const |
562 { | 555 { |
563 ASSERT(isValueID()); | 556 ASSERT(isValueID()); |
564 if (value().valueID == CSSValueNone) | 557 if (value().valueID == CSSValueNone) |
565 return NoControlPart; | 558 return NoControlPart; |
566 return ControlPart(value().valueID - CSSValueCheckbox + 1); | 559 return ControlPart(value().valueID - CSSValueCheckbox + 1); |
567 } | 560 } |
568 | 561 |
569 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBackfaceVisibility e) | 562 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBackfaceVisibility e) |
570 : CSSValue(PrimitiveClass) | |
571 { | 563 { |
572 m_primitiveUnitType = CSS_VALUE_ID; | 564 CSSValueID valueID = CSSValueInvalid; |
573 switch (e) { | 565 switch (e) { |
574 case BackfaceVisibilityVisible: | 566 case BackfaceVisibilityVisible: |
575 m_value.valueID = CSSValueVisible; | 567 valueID = CSSValueVisible; |
576 break; | 568 break; |
577 case BackfaceVisibilityHidden: | 569 case BackfaceVisibilityHidden: |
578 m_value.valueID = CSSValueHidden; | 570 valueID = CSSValueHidden; |
579 break; | 571 break; |
580 } | 572 } |
| 573 return create(valueID); |
581 } | 574 } |
582 | 575 |
583 template<> inline CSSPrimitiveValue::operator EBackfaceVisibility() const | 576 template<> inline CSSPrimitiveValue::operator EBackfaceVisibility() const |
584 { | 577 { |
585 ASSERT(isValueID()); | 578 ASSERT(isValueID()); |
586 switch (value().valueID) { | 579 switch (value().valueID) { |
587 case CSSValueVisible: | 580 case CSSValueVisible: |
588 return BackfaceVisibilityVisible; | 581 return BackfaceVisibilityVisible; |
589 case CSSValueHidden: | 582 case CSSValueHidden: |
590 return BackfaceVisibilityHidden; | 583 return BackfaceVisibilityHidden; |
591 default: | 584 default: |
592 break; | 585 break; |
593 } | 586 } |
594 | 587 |
595 ASSERT_NOT_REACHED(); | 588 ASSERT_NOT_REACHED(); |
596 return BackfaceVisibilityHidden; | 589 return BackfaceVisibilityHidden; |
597 } | 590 } |
598 | 591 |
599 | 592 |
600 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillAttachment e) | 593 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFillAttachment e) |
601 : CSSValue(PrimitiveClass) | |
602 { | 594 { |
603 m_primitiveUnitType = CSS_VALUE_ID; | 595 CSSValueID valueID = CSSValueInvalid; |
604 switch (e) { | 596 switch (e) { |
605 case ScrollBackgroundAttachment: | 597 case ScrollBackgroundAttachment: |
606 m_value.valueID = CSSValueScroll; | 598 valueID = CSSValueScroll; |
607 break; | 599 break; |
608 case LocalBackgroundAttachment: | 600 case LocalBackgroundAttachment: |
609 m_value.valueID = CSSValueLocal; | 601 valueID = CSSValueLocal; |
610 break; | 602 break; |
611 case FixedBackgroundAttachment: | 603 case FixedBackgroundAttachment: |
612 m_value.valueID = CSSValueFixed; | 604 valueID = CSSValueFixed; |
613 break; | 605 break; |
614 } | 606 } |
| 607 return create(valueID); |
615 } | 608 } |
616 | 609 |
617 template<> inline CSSPrimitiveValue::operator EFillAttachment() const | 610 template<> inline CSSPrimitiveValue::operator EFillAttachment() const |
618 { | 611 { |
619 ASSERT(isValueID()); | 612 ASSERT(isValueID()); |
620 switch (value().valueID) { | 613 switch (value().valueID) { |
621 case CSSValueScroll: | 614 case CSSValueScroll: |
622 return ScrollBackgroundAttachment; | 615 return ScrollBackgroundAttachment; |
623 case CSSValueLocal: | 616 case CSSValueLocal: |
624 return LocalBackgroundAttachment; | 617 return LocalBackgroundAttachment; |
625 case CSSValueFixed: | 618 case CSSValueFixed: |
626 return FixedBackgroundAttachment; | 619 return FixedBackgroundAttachment; |
627 default: | 620 default: |
628 break; | 621 break; |
629 } | 622 } |
630 | 623 |
631 ASSERT_NOT_REACHED(); | 624 ASSERT_NOT_REACHED(); |
632 return ScrollBackgroundAttachment; | 625 return ScrollBackgroundAttachment; |
633 } | 626 } |
634 | 627 |
635 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillBox e) | 628 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFillBox e) |
636 : CSSValue(PrimitiveClass) | |
637 { | 629 { |
638 m_primitiveUnitType = CSS_VALUE_ID; | 630 CSSValueID valueID = CSSValueInvalid; |
639 switch (e) { | 631 switch (e) { |
640 case BorderFillBox: | 632 case BorderFillBox: |
641 m_value.valueID = CSSValueBorderBox; | 633 valueID = CSSValueBorderBox; |
642 break; | 634 break; |
643 case PaddingFillBox: | 635 case PaddingFillBox: |
644 m_value.valueID = CSSValuePaddingBox; | 636 valueID = CSSValuePaddingBox; |
645 break; | 637 break; |
646 case ContentFillBox: | 638 case ContentFillBox: |
647 m_value.valueID = CSSValueContentBox; | 639 valueID = CSSValueContentBox; |
648 break; | 640 break; |
649 case TextFillBox: | 641 case TextFillBox: |
650 m_value.valueID = CSSValueText; | 642 valueID = CSSValueText; |
651 break; | 643 break; |
652 } | 644 } |
| 645 return create(valueID); |
653 } | 646 } |
654 | 647 |
655 template<> inline CSSPrimitiveValue::operator EFillBox() const | 648 template<> inline CSSPrimitiveValue::operator EFillBox() const |
656 { | 649 { |
657 ASSERT(isValueID()); | 650 ASSERT(isValueID()); |
658 switch (value().valueID) { | 651 switch (value().valueID) { |
659 case CSSValueBorder: | 652 case CSSValueBorder: |
660 case CSSValueBorderBox: | 653 case CSSValueBorderBox: |
661 return BorderFillBox; | 654 return BorderFillBox; |
662 case CSSValuePadding: | 655 case CSSValuePadding: |
663 case CSSValuePaddingBox: | 656 case CSSValuePaddingBox: |
664 return PaddingFillBox; | 657 return PaddingFillBox; |
665 case CSSValueContent: | 658 case CSSValueContent: |
666 case CSSValueContentBox: | 659 case CSSValueContentBox: |
667 return ContentFillBox; | 660 return ContentFillBox; |
668 case CSSValueText: | 661 case CSSValueText: |
669 case CSSValueWebkitText: | 662 case CSSValueWebkitText: |
670 return TextFillBox; | 663 return TextFillBox; |
671 default: | 664 default: |
672 break; | 665 break; |
673 } | 666 } |
674 | 667 |
675 ASSERT_NOT_REACHED(); | 668 ASSERT_NOT_REACHED(); |
676 return BorderFillBox; | 669 return BorderFillBox; |
677 } | 670 } |
678 | 671 |
679 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillRepeat e) | 672 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFillRepeat e) |
680 : CSSValue(PrimitiveClass) | |
681 { | 673 { |
682 m_primitiveUnitType = CSS_VALUE_ID; | 674 CSSValueID valueID = CSSValueInvalid; |
683 switch (e) { | 675 switch (e) { |
684 case RepeatFill: | 676 case RepeatFill: |
685 m_value.valueID = CSSValueRepeat; | 677 valueID = CSSValueRepeat; |
686 break; | 678 break; |
687 case NoRepeatFill: | 679 case NoRepeatFill: |
688 m_value.valueID = CSSValueNoRepeat; | 680 valueID = CSSValueNoRepeat; |
689 break; | 681 break; |
690 case RoundFill: | 682 case RoundFill: |
691 m_value.valueID = CSSValueRound; | 683 valueID = CSSValueRound; |
692 break; | 684 break; |
693 case SpaceFill: | 685 case SpaceFill: |
694 m_value.valueID = CSSValueSpace; | 686 valueID = CSSValueSpace; |
695 break; | 687 break; |
696 } | 688 } |
| 689 return create(valueID); |
697 } | 690 } |
698 | 691 |
699 template<> inline CSSPrimitiveValue::operator EFillRepeat() const | 692 template<> inline CSSPrimitiveValue::operator EFillRepeat() const |
700 { | 693 { |
701 ASSERT(isValueID()); | 694 ASSERT(isValueID()); |
702 switch (value().valueID) { | 695 switch (value().valueID) { |
703 case CSSValueRepeat: | 696 case CSSValueRepeat: |
704 return RepeatFill; | 697 return RepeatFill; |
705 case CSSValueNoRepeat: | 698 case CSSValueNoRepeat: |
706 return NoRepeatFill; | 699 return NoRepeatFill; |
707 case CSSValueRound: | 700 case CSSValueRound: |
708 return RoundFill; | 701 return RoundFill; |
709 case CSSValueSpace: | 702 case CSSValueSpace: |
710 return SpaceFill; | 703 return SpaceFill; |
711 default: | 704 default: |
712 break; | 705 break; |
713 } | 706 } |
714 | 707 |
715 ASSERT_NOT_REACHED(); | 708 ASSERT_NOT_REACHED(); |
716 return RepeatFill; | 709 return RepeatFill; |
717 } | 710 } |
718 | 711 |
719 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxPack e) | 712 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxPack e) |
720 : CSSValue(PrimitiveClass) | |
721 { | 713 { |
722 m_primitiveUnitType = CSS_VALUE_ID; | 714 CSSValueID valueID = CSSValueInvalid; |
723 switch (e) { | 715 switch (e) { |
724 case Start: | 716 case Start: |
725 m_value.valueID = CSSValueStart; | 717 valueID = CSSValueStart; |
726 break; | 718 break; |
727 case Center: | 719 case Center: |
728 m_value.valueID = CSSValueCenter; | 720 valueID = CSSValueCenter; |
729 break; | 721 break; |
730 case End: | 722 case End: |
731 m_value.valueID = CSSValueEnd; | 723 valueID = CSSValueEnd; |
732 break; | 724 break; |
733 case Justify: | 725 case Justify: |
734 m_value.valueID = CSSValueJustify; | 726 valueID = CSSValueJustify; |
735 break; | 727 break; |
736 } | 728 } |
| 729 return create(valueID); |
737 } | 730 } |
738 | 731 |
739 template<> inline CSSPrimitiveValue::operator EBoxPack() const | 732 template<> inline CSSPrimitiveValue::operator EBoxPack() const |
740 { | 733 { |
741 ASSERT(isValueID()); | 734 ASSERT(isValueID()); |
742 switch (value().valueID) { | 735 switch (value().valueID) { |
743 case CSSValueStart: | 736 case CSSValueStart: |
744 return Start; | 737 return Start; |
745 case CSSValueEnd: | 738 case CSSValueEnd: |
746 return End; | 739 return End; |
747 case CSSValueCenter: | 740 case CSSValueCenter: |
748 return Center; | 741 return Center; |
749 case CSSValueJustify: | 742 case CSSValueJustify: |
750 return Justify; | 743 return Justify; |
751 default: | 744 default: |
752 break; | 745 break; |
753 } | 746 } |
754 | 747 |
755 ASSERT_NOT_REACHED(); | 748 ASSERT_NOT_REACHED(); |
756 return Justify; | 749 return Justify; |
757 } | 750 } |
758 | 751 |
759 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxAlignment e) | 752 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxAlignment e) |
760 : CSSValue(PrimitiveClass) | |
761 { | 753 { |
762 m_primitiveUnitType = CSS_VALUE_ID; | 754 CSSValueID valueID = CSSValueInvalid; |
763 switch (e) { | 755 switch (e) { |
764 case BSTRETCH: | 756 case BSTRETCH: |
765 m_value.valueID = CSSValueStretch; | 757 valueID = CSSValueStretch; |
766 break; | 758 break; |
767 case BSTART: | 759 case BSTART: |
768 m_value.valueID = CSSValueStart; | 760 valueID = CSSValueStart; |
769 break; | 761 break; |
770 case BCENTER: | 762 case BCENTER: |
771 m_value.valueID = CSSValueCenter; | 763 valueID = CSSValueCenter; |
772 break; | 764 break; |
773 case BEND: | 765 case BEND: |
774 m_value.valueID = CSSValueEnd; | 766 valueID = CSSValueEnd; |
775 break; | 767 break; |
776 case BBASELINE: | 768 case BBASELINE: |
777 m_value.valueID = CSSValueBaseline; | 769 valueID = CSSValueBaseline; |
778 break; | 770 break; |
779 } | 771 } |
| 772 return create(valueID); |
780 } | 773 } |
781 | 774 |
782 template<> inline CSSPrimitiveValue::operator EBoxAlignment() const | 775 template<> inline CSSPrimitiveValue::operator EBoxAlignment() const |
783 { | 776 { |
784 ASSERT(isValueID()); | 777 ASSERT(isValueID()); |
785 switch (value().valueID) { | 778 switch (value().valueID) { |
786 case CSSValueStretch: | 779 case CSSValueStretch: |
787 return BSTRETCH; | 780 return BSTRETCH; |
788 case CSSValueStart: | 781 case CSSValueStart: |
789 return BSTART; | 782 return BSTART; |
790 case CSSValueEnd: | 783 case CSSValueEnd: |
791 return BEND; | 784 return BEND; |
792 case CSSValueCenter: | 785 case CSSValueCenter: |
793 return BCENTER; | 786 return BCENTER; |
794 case CSSValueBaseline: | 787 case CSSValueBaseline: |
795 return BBASELINE; | 788 return BBASELINE; |
796 default: | 789 default: |
797 break; | 790 break; |
798 } | 791 } |
799 | 792 |
800 ASSERT_NOT_REACHED(); | 793 ASSERT_NOT_REACHED(); |
801 return BSTRETCH; | 794 return BSTRETCH; |
802 } | 795 } |
803 | 796 |
804 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxDecorationBreak e) | 797 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxDecorationBreak e) |
805 : CSSValue(PrimitiveClass) | |
806 { | 798 { |
807 m_primitiveUnitType = CSS_VALUE_ID; | 799 CSSValueID valueID = CSSValueInvalid; |
808 switch (e) { | 800 switch (e) { |
809 case DSLICE: | 801 case DSLICE: |
810 m_value.valueID = CSSValueSlice; | 802 valueID = CSSValueSlice; |
811 break; | 803 break; |
812 case DCLONE: | 804 case DCLONE: |
813 m_value.valueID = CSSValueClone; | 805 valueID = CSSValueClone; |
814 break; | 806 break; |
815 } | 807 } |
| 808 return create(valueID); |
816 } | 809 } |
817 | 810 |
818 template<> inline CSSPrimitiveValue::operator EBoxDecorationBreak() const | 811 template<> inline CSSPrimitiveValue::operator EBoxDecorationBreak() const |
819 { | 812 { |
820 ASSERT(isValueID()); | 813 ASSERT(isValueID()); |
821 switch (value().valueID) { | 814 switch (value().valueID) { |
822 case CSSValueSlice: | 815 case CSSValueSlice: |
823 return DSLICE; | 816 return DSLICE; |
824 case CSSValueClone: | 817 case CSSValueClone: |
825 return DCLONE; | 818 return DCLONE; |
826 default: | 819 default: |
827 break; | 820 break; |
828 } | 821 } |
829 | 822 |
830 ASSERT_NOT_REACHED(); | 823 ASSERT_NOT_REACHED(); |
831 return DSLICE; | 824 return DSLICE; |
832 } | 825 } |
833 | 826 |
834 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(BackgroundEdgeOrigin e) | 827 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(BackgroundEdgeOrigin e) |
835 : CSSValue(PrimitiveClass) | |
836 { | 828 { |
837 m_primitiveUnitType = CSS_VALUE_ID; | 829 CSSValueID valueID = CSSValueInvalid; |
838 switch (e) { | 830 switch (e) { |
839 case TopEdge: | 831 case TopEdge: |
840 m_value.valueID = CSSValueTop; | 832 valueID = CSSValueTop; |
841 break; | 833 break; |
842 case RightEdge: | 834 case RightEdge: |
843 m_value.valueID = CSSValueRight; | 835 valueID = CSSValueRight; |
844 break; | 836 break; |
845 case BottomEdge: | 837 case BottomEdge: |
846 m_value.valueID = CSSValueBottom; | 838 valueID = CSSValueBottom; |
847 break; | 839 break; |
848 case LeftEdge: | 840 case LeftEdge: |
849 m_value.valueID = CSSValueLeft; | 841 valueID = CSSValueLeft; |
850 break; | 842 break; |
851 } | 843 } |
| 844 return create(valueID); |
852 } | 845 } |
853 | 846 |
854 template<> inline CSSPrimitiveValue::operator BackgroundEdgeOrigin() const | 847 template<> inline CSSPrimitiveValue::operator BackgroundEdgeOrigin() const |
855 { | 848 { |
856 ASSERT(isValueID()); | 849 ASSERT(isValueID()); |
857 switch (value().valueID) { | 850 switch (value().valueID) { |
858 case CSSValueTop: | 851 case CSSValueTop: |
859 return TopEdge; | 852 return TopEdge; |
860 case CSSValueRight: | 853 case CSSValueRight: |
861 return RightEdge; | 854 return RightEdge; |
862 case CSSValueBottom: | 855 case CSSValueBottom: |
863 return BottomEdge; | 856 return BottomEdge; |
864 case CSSValueLeft: | 857 case CSSValueLeft: |
865 return LeftEdge; | 858 return LeftEdge; |
866 default: | 859 default: |
867 break; | 860 break; |
868 } | 861 } |
869 | 862 |
870 ASSERT_NOT_REACHED(); | 863 ASSERT_NOT_REACHED(); |
871 return TopEdge; | 864 return TopEdge; |
872 } | 865 } |
873 | 866 |
874 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxSizing e) | 867 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxSizing e) |
875 : CSSValue(PrimitiveClass) | |
876 { | 868 { |
877 m_primitiveUnitType = CSS_VALUE_ID; | 869 CSSValueID valueID = CSSValueInvalid; |
878 switch (e) { | 870 switch (e) { |
879 case BORDER_BOX: | 871 case BORDER_BOX: |
880 m_value.valueID = CSSValueBorderBox; | 872 valueID = CSSValueBorderBox; |
881 break; | 873 break; |
882 case CONTENT_BOX: | 874 case CONTENT_BOX: |
883 m_value.valueID = CSSValueContentBox; | 875 valueID = CSSValueContentBox; |
884 break; | 876 break; |
885 } | 877 } |
| 878 return create(valueID); |
886 } | 879 } |
887 | 880 |
888 template<> inline CSSPrimitiveValue::operator EBoxSizing() const | 881 template<> inline CSSPrimitiveValue::operator EBoxSizing() const |
889 { | 882 { |
890 ASSERT(isValueID()); | 883 ASSERT(isValueID()); |
891 switch (value().valueID) { | 884 switch (value().valueID) { |
892 case CSSValueBorderBox: | 885 case CSSValueBorderBox: |
893 return BORDER_BOX; | 886 return BORDER_BOX; |
894 case CSSValueContentBox: | 887 case CSSValueContentBox: |
895 return CONTENT_BOX; | 888 return CONTENT_BOX; |
896 default: | 889 default: |
897 break; | 890 break; |
898 } | 891 } |
899 | 892 |
900 ASSERT_NOT_REACHED(); | 893 ASSERT_NOT_REACHED(); |
901 return BORDER_BOX; | 894 return BORDER_BOX; |
902 } | 895 } |
903 | 896 |
904 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxDirection e) | 897 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxDirection e) |
905 : CSSValue(PrimitiveClass) | |
906 { | 898 { |
907 m_primitiveUnitType = CSS_VALUE_ID; | 899 CSSValueID valueID = CSSValueInvalid; |
908 switch (e) { | 900 switch (e) { |
909 case BNORMAL: | 901 case BNORMAL: |
910 m_value.valueID = CSSValueNormal; | 902 valueID = CSSValueNormal; |
911 break; | 903 break; |
912 case BREVERSE: | 904 case BREVERSE: |
913 m_value.valueID = CSSValueReverse; | 905 valueID = CSSValueReverse; |
914 break; | 906 break; |
915 } | 907 } |
| 908 return create(valueID); |
916 } | 909 } |
917 | 910 |
918 template<> inline CSSPrimitiveValue::operator EBoxDirection() const | 911 template<> inline CSSPrimitiveValue::operator EBoxDirection() const |
919 { | 912 { |
920 ASSERT(isValueID()); | 913 ASSERT(isValueID()); |
921 switch (value().valueID) { | 914 switch (value().valueID) { |
922 case CSSValueNormal: | 915 case CSSValueNormal: |
923 return BNORMAL; | 916 return BNORMAL; |
924 case CSSValueReverse: | 917 case CSSValueReverse: |
925 return BREVERSE; | 918 return BREVERSE; |
926 default: | 919 default: |
927 break; | 920 break; |
928 } | 921 } |
929 | 922 |
930 ASSERT_NOT_REACHED(); | 923 ASSERT_NOT_REACHED(); |
931 return BNORMAL; | 924 return BNORMAL; |
932 } | 925 } |
933 | 926 |
934 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxLines e) | 927 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxLines e) |
935 : CSSValue(PrimitiveClass) | |
936 { | 928 { |
937 m_primitiveUnitType = CSS_VALUE_ID; | 929 CSSValueID valueID = CSSValueInvalid; |
938 switch (e) { | 930 switch (e) { |
939 case SINGLE: | 931 case SINGLE: |
940 m_value.valueID = CSSValueSingle; | 932 valueID = CSSValueSingle; |
941 break; | 933 break; |
942 case MULTIPLE: | 934 case MULTIPLE: |
943 m_value.valueID = CSSValueMultiple; | 935 valueID = CSSValueMultiple; |
944 break; | 936 break; |
945 } | 937 } |
| 938 return create(valueID); |
946 } | 939 } |
947 | 940 |
948 template<> inline CSSPrimitiveValue::operator EBoxLines() const | 941 template<> inline CSSPrimitiveValue::operator EBoxLines() const |
949 { | 942 { |
950 ASSERT(isValueID()); | 943 ASSERT(isValueID()); |
951 switch (value().valueID) { | 944 switch (value().valueID) { |
952 case CSSValueSingle: | 945 case CSSValueSingle: |
953 return SINGLE; | 946 return SINGLE; |
954 case CSSValueMultiple: | 947 case CSSValueMultiple: |
955 return MULTIPLE; | 948 return MULTIPLE; |
956 default: | 949 default: |
957 break; | 950 break; |
958 } | 951 } |
959 | 952 |
960 ASSERT_NOT_REACHED(); | 953 ASSERT_NOT_REACHED(); |
961 return SINGLE; | 954 return SINGLE; |
962 } | 955 } |
963 | 956 |
964 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxOrient e) | 957 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBoxOrient e) |
965 : CSSValue(PrimitiveClass) | |
966 { | 958 { |
967 m_primitiveUnitType = CSS_VALUE_ID; | 959 CSSValueID valueID = CSSValueInvalid; |
968 switch (e) { | 960 switch (e) { |
969 case HORIZONTAL: | 961 case HORIZONTAL: |
970 m_value.valueID = CSSValueHorizontal; | 962 valueID = CSSValueHorizontal; |
971 break; | 963 break; |
972 case VERTICAL: | 964 case VERTICAL: |
973 m_value.valueID = CSSValueVertical; | 965 valueID = CSSValueVertical; |
974 break; | 966 break; |
975 } | 967 } |
| 968 return create(valueID); |
976 } | 969 } |
977 | 970 |
978 template<> inline CSSPrimitiveValue::operator EBoxOrient() const | 971 template<> inline CSSPrimitiveValue::operator EBoxOrient() const |
979 { | 972 { |
980 ASSERT(isValueID()); | 973 ASSERT(isValueID()); |
981 switch (value().valueID) { | 974 switch (value().valueID) { |
982 case CSSValueHorizontal: | 975 case CSSValueHorizontal: |
983 case CSSValueInlineAxis: | 976 case CSSValueInlineAxis: |
984 return HORIZONTAL; | 977 return HORIZONTAL; |
985 case CSSValueVertical: | 978 case CSSValueVertical: |
986 case CSSValueBlockAxis: | 979 case CSSValueBlockAxis: |
987 return VERTICAL; | 980 return VERTICAL; |
988 default: | 981 default: |
989 break; | 982 break; |
990 } | 983 } |
991 | 984 |
992 ASSERT_NOT_REACHED(); | 985 ASSERT_NOT_REACHED(); |
993 return HORIZONTAL; | 986 return HORIZONTAL; |
994 } | 987 } |
995 | 988 |
996 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ECaptionSide e) | 989 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ECaptionSide e) |
997 : CSSValue(PrimitiveClass) | |
998 { | 990 { |
999 m_primitiveUnitType = CSS_VALUE_ID; | 991 CSSValueID valueID = CSSValueInvalid; |
1000 switch (e) { | 992 switch (e) { |
1001 case CAPLEFT: | 993 case CAPLEFT: |
1002 m_value.valueID = CSSValueLeft; | 994 valueID = CSSValueLeft; |
1003 break; | 995 break; |
1004 case CAPRIGHT: | 996 case CAPRIGHT: |
1005 m_value.valueID = CSSValueRight; | 997 valueID = CSSValueRight; |
1006 break; | 998 break; |
1007 case CAPTOP: | 999 case CAPTOP: |
1008 m_value.valueID = CSSValueTop; | 1000 valueID = CSSValueTop; |
1009 break; | 1001 break; |
1010 case CAPBOTTOM: | 1002 case CAPBOTTOM: |
1011 m_value.valueID = CSSValueBottom; | 1003 valueID = CSSValueBottom; |
1012 break; | 1004 break; |
1013 } | 1005 } |
| 1006 return create(valueID); |
1014 } | 1007 } |
1015 | 1008 |
1016 template<> inline CSSPrimitiveValue::operator ECaptionSide() const | 1009 template<> inline CSSPrimitiveValue::operator ECaptionSide() const |
1017 { | 1010 { |
1018 ASSERT(isValueID()); | 1011 ASSERT(isValueID()); |
1019 switch (value().valueID) { | 1012 switch (value().valueID) { |
1020 case CSSValueLeft: | 1013 case CSSValueLeft: |
1021 return CAPLEFT; | 1014 return CAPLEFT; |
1022 case CSSValueRight: | 1015 case CSSValueRight: |
1023 return CAPRIGHT; | 1016 return CAPRIGHT; |
1024 case CSSValueTop: | 1017 case CSSValueTop: |
1025 return CAPTOP; | 1018 return CAPTOP; |
1026 case CSSValueBottom: | 1019 case CSSValueBottom: |
1027 return CAPBOTTOM; | 1020 return CAPBOTTOM; |
1028 default: | 1021 default: |
1029 break; | 1022 break; |
1030 } | 1023 } |
1031 | 1024 |
1032 ASSERT_NOT_REACHED(); | 1025 ASSERT_NOT_REACHED(); |
1033 return CAPTOP; | 1026 return CAPTOP; |
1034 } | 1027 } |
1035 | 1028 |
1036 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EClear e) | 1029 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EClear e) |
1037 : CSSValue(PrimitiveClass) | |
1038 { | 1030 { |
1039 m_primitiveUnitType = CSS_VALUE_ID; | 1031 CSSValueID valueID = CSSValueInvalid; |
1040 switch (e) { | 1032 switch (e) { |
1041 case CNONE: | 1033 case CNONE: |
1042 m_value.valueID = CSSValueNone; | 1034 valueID = CSSValueNone; |
1043 break; | 1035 break; |
1044 case CLEFT: | 1036 case CLEFT: |
1045 m_value.valueID = CSSValueLeft; | 1037 valueID = CSSValueLeft; |
1046 break; | 1038 break; |
1047 case CRIGHT: | 1039 case CRIGHT: |
1048 m_value.valueID = CSSValueRight; | 1040 valueID = CSSValueRight; |
1049 break; | 1041 break; |
1050 case CBOTH: | 1042 case CBOTH: |
1051 m_value.valueID = CSSValueBoth; | 1043 valueID = CSSValueBoth; |
1052 break; | 1044 break; |
1053 } | 1045 } |
| 1046 return create(valueID); |
1054 } | 1047 } |
1055 | 1048 |
1056 template<> inline CSSPrimitiveValue::operator EClear() const | 1049 template<> inline CSSPrimitiveValue::operator EClear() const |
1057 { | 1050 { |
1058 ASSERT(isValueID()); | 1051 ASSERT(isValueID()); |
1059 switch (value().valueID) { | 1052 switch (value().valueID) { |
1060 case CSSValueNone: | 1053 case CSSValueNone: |
1061 return CNONE; | 1054 return CNONE; |
1062 case CSSValueLeft: | 1055 case CSSValueLeft: |
1063 return CLEFT; | 1056 return CLEFT; |
1064 case CSSValueRight: | 1057 case CSSValueRight: |
1065 return CRIGHT; | 1058 return CRIGHT; |
1066 case CSSValueBoth: | 1059 case CSSValueBoth: |
1067 return CBOTH; | 1060 return CBOTH; |
1068 default: | 1061 default: |
1069 break; | 1062 break; |
1070 } | 1063 } |
1071 | 1064 |
1072 ASSERT_NOT_REACHED(); | 1065 ASSERT_NOT_REACHED(); |
1073 return CNONE; | 1066 return CNONE; |
1074 } | 1067 } |
1075 | 1068 |
1076 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ECursor e) | 1069 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ECursor e) |
1077 : CSSValue(PrimitiveClass) | |
1078 { | 1070 { |
1079 m_primitiveUnitType = CSS_VALUE_ID; | 1071 CSSValueID valueID = CSSValueInvalid; |
1080 switch (e) { | 1072 switch (e) { |
1081 case CURSOR_AUTO: | 1073 case CURSOR_AUTO: |
1082 m_value.valueID = CSSValueAuto; | 1074 valueID = CSSValueAuto; |
1083 break; | 1075 break; |
1084 case CURSOR_CROSS: | 1076 case CURSOR_CROSS: |
1085 m_value.valueID = CSSValueCrosshair; | 1077 valueID = CSSValueCrosshair; |
1086 break; | 1078 break; |
1087 case CURSOR_DEFAULT: | 1079 case CURSOR_DEFAULT: |
1088 m_value.valueID = CSSValueDefault; | 1080 valueID = CSSValueDefault; |
1089 break; | 1081 break; |
1090 case CURSOR_POINTER: | 1082 case CURSOR_POINTER: |
1091 m_value.valueID = CSSValuePointer; | 1083 valueID = CSSValuePointer; |
1092 break; | 1084 break; |
1093 case CURSOR_MOVE: | 1085 case CURSOR_MOVE: |
1094 m_value.valueID = CSSValueMove; | 1086 valueID = CSSValueMove; |
1095 break; | 1087 break; |
1096 case CURSOR_CELL: | 1088 case CURSOR_CELL: |
1097 m_value.valueID = CSSValueCell; | 1089 valueID = CSSValueCell; |
1098 break; | 1090 break; |
1099 case CURSOR_VERTICAL_TEXT: | 1091 case CURSOR_VERTICAL_TEXT: |
1100 m_value.valueID = CSSValueVerticalText; | 1092 valueID = CSSValueVerticalText; |
1101 break; | 1093 break; |
1102 case CURSOR_CONTEXT_MENU: | 1094 case CURSOR_CONTEXT_MENU: |
1103 m_value.valueID = CSSValueContextMenu; | 1095 valueID = CSSValueContextMenu; |
1104 break; | 1096 break; |
1105 case CURSOR_ALIAS: | 1097 case CURSOR_ALIAS: |
1106 m_value.valueID = CSSValueAlias; | 1098 valueID = CSSValueAlias; |
1107 break; | 1099 break; |
1108 case CURSOR_COPY: | 1100 case CURSOR_COPY: |
1109 m_value.valueID = CSSValueCopy; | 1101 valueID = CSSValueCopy; |
1110 break; | 1102 break; |
1111 case CURSOR_NONE: | 1103 case CURSOR_NONE: |
1112 m_value.valueID = CSSValueNone; | 1104 valueID = CSSValueNone; |
1113 break; | 1105 break; |
1114 case CURSOR_PROGRESS: | 1106 case CURSOR_PROGRESS: |
1115 m_value.valueID = CSSValueProgress; | 1107 valueID = CSSValueProgress; |
1116 break; | 1108 break; |
1117 case CURSOR_NO_DROP: | 1109 case CURSOR_NO_DROP: |
1118 m_value.valueID = CSSValueNoDrop; | 1110 valueID = CSSValueNoDrop; |
1119 break; | 1111 break; |
1120 case CURSOR_NOT_ALLOWED: | 1112 case CURSOR_NOT_ALLOWED: |
1121 m_value.valueID = CSSValueNotAllowed; | 1113 valueID = CSSValueNotAllowed; |
1122 break; | 1114 break; |
1123 case CURSOR_ZOOM_IN: | 1115 case CURSOR_ZOOM_IN: |
1124 m_value.valueID = CSSValueZoomIn; | 1116 valueID = CSSValueZoomIn; |
1125 break; | 1117 break; |
1126 case CURSOR_ZOOM_OUT: | 1118 case CURSOR_ZOOM_OUT: |
1127 m_value.valueID = CSSValueZoomOut; | 1119 valueID = CSSValueZoomOut; |
1128 break; | 1120 break; |
1129 case CURSOR_E_RESIZE: | 1121 case CURSOR_E_RESIZE: |
1130 m_value.valueID = CSSValueEResize; | 1122 valueID = CSSValueEResize; |
1131 break; | 1123 break; |
1132 case CURSOR_NE_RESIZE: | 1124 case CURSOR_NE_RESIZE: |
1133 m_value.valueID = CSSValueNeResize; | 1125 valueID = CSSValueNeResize; |
1134 break; | 1126 break; |
1135 case CURSOR_NW_RESIZE: | 1127 case CURSOR_NW_RESIZE: |
1136 m_value.valueID = CSSValueNwResize; | 1128 valueID = CSSValueNwResize; |
1137 break; | 1129 break; |
1138 case CURSOR_N_RESIZE: | 1130 case CURSOR_N_RESIZE: |
1139 m_value.valueID = CSSValueNResize; | 1131 valueID = CSSValueNResize; |
1140 break; | 1132 break; |
1141 case CURSOR_SE_RESIZE: | 1133 case CURSOR_SE_RESIZE: |
1142 m_value.valueID = CSSValueSeResize; | 1134 valueID = CSSValueSeResize; |
1143 break; | 1135 break; |
1144 case CURSOR_SW_RESIZE: | 1136 case CURSOR_SW_RESIZE: |
1145 m_value.valueID = CSSValueSwResize; | 1137 valueID = CSSValueSwResize; |
1146 break; | 1138 break; |
1147 case CURSOR_S_RESIZE: | 1139 case CURSOR_S_RESIZE: |
1148 m_value.valueID = CSSValueSResize; | 1140 valueID = CSSValueSResize; |
1149 break; | 1141 break; |
1150 case CURSOR_W_RESIZE: | 1142 case CURSOR_W_RESIZE: |
1151 m_value.valueID = CSSValueWResize; | 1143 valueID = CSSValueWResize; |
1152 break; | 1144 break; |
1153 case CURSOR_EW_RESIZE: | 1145 case CURSOR_EW_RESIZE: |
1154 m_value.valueID = CSSValueEwResize; | 1146 valueID = CSSValueEwResize; |
1155 break; | 1147 break; |
1156 case CURSOR_NS_RESIZE: | 1148 case CURSOR_NS_RESIZE: |
1157 m_value.valueID = CSSValueNsResize; | 1149 valueID = CSSValueNsResize; |
1158 break; | 1150 break; |
1159 case CURSOR_NESW_RESIZE: | 1151 case CURSOR_NESW_RESIZE: |
1160 m_value.valueID = CSSValueNeswResize; | 1152 valueID = CSSValueNeswResize; |
1161 break; | 1153 break; |
1162 case CURSOR_NWSE_RESIZE: | 1154 case CURSOR_NWSE_RESIZE: |
1163 m_value.valueID = CSSValueNwseResize; | 1155 valueID = CSSValueNwseResize; |
1164 break; | 1156 break; |
1165 case CURSOR_COL_RESIZE: | 1157 case CURSOR_COL_RESIZE: |
1166 m_value.valueID = CSSValueColResize; | 1158 valueID = CSSValueColResize; |
1167 break; | 1159 break; |
1168 case CURSOR_ROW_RESIZE: | 1160 case CURSOR_ROW_RESIZE: |
1169 m_value.valueID = CSSValueRowResize; | 1161 valueID = CSSValueRowResize; |
1170 break; | 1162 break; |
1171 case CURSOR_TEXT: | 1163 case CURSOR_TEXT: |
1172 m_value.valueID = CSSValueText; | 1164 valueID = CSSValueText; |
1173 break; | 1165 break; |
1174 case CURSOR_WAIT: | 1166 case CURSOR_WAIT: |
1175 m_value.valueID = CSSValueWait; | 1167 valueID = CSSValueWait; |
1176 break; | 1168 break; |
1177 case CURSOR_HELP: | 1169 case CURSOR_HELP: |
1178 m_value.valueID = CSSValueHelp; | 1170 valueID = CSSValueHelp; |
1179 break; | 1171 break; |
1180 case CURSOR_ALL_SCROLL: | 1172 case CURSOR_ALL_SCROLL: |
1181 m_value.valueID = CSSValueAllScroll; | 1173 valueID = CSSValueAllScroll; |
1182 break; | 1174 break; |
1183 case CURSOR_WEBKIT_GRAB: | 1175 case CURSOR_WEBKIT_GRAB: |
1184 m_value.valueID = CSSValueWebkitGrab; | 1176 valueID = CSSValueWebkitGrab; |
1185 break; | 1177 break; |
1186 case CURSOR_WEBKIT_GRABBING: | 1178 case CURSOR_WEBKIT_GRABBING: |
1187 m_value.valueID = CSSValueWebkitGrabbing; | 1179 valueID = CSSValueWebkitGrabbing; |
1188 break; | 1180 break; |
1189 } | 1181 } |
| 1182 return create(valueID); |
1190 } | 1183 } |
1191 | 1184 |
1192 template<> inline CSSPrimitiveValue::operator ECursor() const | 1185 template<> inline CSSPrimitiveValue::operator ECursor() const |
1193 { | 1186 { |
1194 ASSERT(isValueID()); | 1187 ASSERT(isValueID()); |
1195 switch (value().valueID) { | 1188 switch (value().valueID) { |
1196 case CSSValueCopy: | 1189 case CSSValueCopy: |
1197 return CURSOR_COPY; | 1190 return CURSOR_COPY; |
1198 case CSSValueWebkitZoomIn: | 1191 case CSSValueWebkitZoomIn: |
1199 return CURSOR_ZOOM_IN; | 1192 return CURSOR_ZOOM_IN; |
1200 case CSSValueWebkitZoomOut: | 1193 case CSSValueWebkitZoomOut: |
1201 return CURSOR_ZOOM_OUT; | 1194 return CURSOR_ZOOM_OUT; |
1202 case CSSValueNone: | 1195 case CSSValueNone: |
1203 return CURSOR_NONE; | 1196 return CURSOR_NONE; |
1204 default: | 1197 default: |
1205 return static_cast<ECursor>(value().valueID - CSSValueAuto); | 1198 return static_cast<ECursor>(value().valueID - CSSValueAuto); |
1206 } | 1199 } |
1207 } | 1200 } |
1208 | 1201 |
1209 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EDisplay e) | 1202 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EDisplay e) |
1210 : CSSValue(PrimitiveClass) | |
1211 { | 1203 { |
1212 m_primitiveUnitType = CSS_VALUE_ID; | 1204 CSSValueID valueID = CSSValueInvalid; |
1213 switch (e) { | 1205 switch (e) { |
1214 case INLINE: | 1206 case INLINE: |
1215 m_value.valueID = CSSValueInline; | 1207 valueID = CSSValueInline; |
1216 break; | 1208 break; |
1217 case BLOCK: | 1209 case BLOCK: |
1218 m_value.valueID = CSSValueBlock; | 1210 valueID = CSSValueBlock; |
1219 break; | 1211 break; |
1220 case LIST_ITEM: | 1212 case LIST_ITEM: |
1221 m_value.valueID = CSSValueListItem; | 1213 valueID = CSSValueListItem; |
1222 break; | 1214 break; |
1223 case INLINE_BLOCK: | 1215 case INLINE_BLOCK: |
1224 m_value.valueID = CSSValueInlineBlock; | 1216 valueID = CSSValueInlineBlock; |
1225 break; | 1217 break; |
1226 case TABLE: | 1218 case TABLE: |
1227 m_value.valueID = CSSValueTable; | 1219 valueID = CSSValueTable; |
1228 break; | 1220 break; |
1229 case INLINE_TABLE: | 1221 case INLINE_TABLE: |
1230 m_value.valueID = CSSValueInlineTable; | 1222 valueID = CSSValueInlineTable; |
1231 break; | 1223 break; |
1232 case TABLE_ROW_GROUP: | 1224 case TABLE_ROW_GROUP: |
1233 m_value.valueID = CSSValueTableRowGroup; | 1225 valueID = CSSValueTableRowGroup; |
1234 break; | 1226 break; |
1235 case TABLE_HEADER_GROUP: | 1227 case TABLE_HEADER_GROUP: |
1236 m_value.valueID = CSSValueTableHeaderGroup; | 1228 valueID = CSSValueTableHeaderGroup; |
1237 break; | 1229 break; |
1238 case TABLE_FOOTER_GROUP: | 1230 case TABLE_FOOTER_GROUP: |
1239 m_value.valueID = CSSValueTableFooterGroup; | 1231 valueID = CSSValueTableFooterGroup; |
1240 break; | 1232 break; |
1241 case TABLE_ROW: | 1233 case TABLE_ROW: |
1242 m_value.valueID = CSSValueTableRow; | 1234 valueID = CSSValueTableRow; |
1243 break; | 1235 break; |
1244 case TABLE_COLUMN_GROUP: | 1236 case TABLE_COLUMN_GROUP: |
1245 m_value.valueID = CSSValueTableColumnGroup; | 1237 valueID = CSSValueTableColumnGroup; |
1246 break; | 1238 break; |
1247 case TABLE_COLUMN: | 1239 case TABLE_COLUMN: |
1248 m_value.valueID = CSSValueTableColumn; | 1240 valueID = CSSValueTableColumn; |
1249 break; | 1241 break; |
1250 case TABLE_CELL: | 1242 case TABLE_CELL: |
1251 m_value.valueID = CSSValueTableCell; | 1243 valueID = CSSValueTableCell; |
1252 break; | 1244 break; |
1253 case TABLE_CAPTION: | 1245 case TABLE_CAPTION: |
1254 m_value.valueID = CSSValueTableCaption; | 1246 valueID = CSSValueTableCaption; |
1255 break; | 1247 break; |
1256 case BOX: | 1248 case BOX: |
1257 m_value.valueID = CSSValueWebkitBox; | 1249 valueID = CSSValueWebkitBox; |
1258 break; | 1250 break; |
1259 case INLINE_BOX: | 1251 case INLINE_BOX: |
1260 m_value.valueID = CSSValueWebkitInlineBox; | 1252 valueID = CSSValueWebkitInlineBox; |
1261 break; | 1253 break; |
1262 case FLEX: | 1254 case FLEX: |
1263 m_value.valueID = CSSValueFlex; | 1255 valueID = CSSValueFlex; |
1264 break; | 1256 break; |
1265 case INLINE_FLEX: | 1257 case INLINE_FLEX: |
1266 m_value.valueID = CSSValueInlineFlex; | 1258 valueID = CSSValueInlineFlex; |
1267 break; | 1259 break; |
1268 case GRID: | 1260 case GRID: |
1269 m_value.valueID = CSSValueGrid; | 1261 valueID = CSSValueGrid; |
1270 break; | 1262 break; |
1271 case INLINE_GRID: | 1263 case INLINE_GRID: |
1272 m_value.valueID = CSSValueInlineGrid; | 1264 valueID = CSSValueInlineGrid; |
1273 break; | 1265 break; |
1274 case NONE: | 1266 case NONE: |
1275 m_value.valueID = CSSValueNone; | 1267 valueID = CSSValueNone; |
1276 break; | 1268 break; |
1277 } | 1269 } |
| 1270 return create(valueID); |
1278 } | 1271 } |
1279 | 1272 |
1280 template<> inline CSSPrimitiveValue::operator EDisplay() const | 1273 template<> inline CSSPrimitiveValue::operator EDisplay() const |
1281 { | 1274 { |
1282 ASSERT(isValueID()); | 1275 ASSERT(isValueID()); |
1283 if (value().valueID == CSSValueNone) | 1276 if (value().valueID == CSSValueNone) |
1284 return NONE; | 1277 return NONE; |
1285 | 1278 |
1286 if (value().valueID == CSSValueWebkitFlex) | 1279 if (value().valueID == CSSValueWebkitFlex) |
1287 return FLEX; | 1280 return FLEX; |
1288 if (value().valueID == CSSValueWebkitInlineFlex) | 1281 if (value().valueID == CSSValueWebkitInlineFlex) |
1289 return INLINE_FLEX; | 1282 return INLINE_FLEX; |
1290 | 1283 |
1291 EDisplay display = static_cast<EDisplay>(value().valueID - CSSValueInline); | 1284 EDisplay display = static_cast<EDisplay>(value().valueID - CSSValueInline); |
1292 ASSERT(display >= INLINE && display <= NONE); | 1285 ASSERT(display >= INLINE && display <= NONE); |
1293 return display; | 1286 return display; |
1294 } | 1287 } |
1295 | 1288 |
1296 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EEmptyCell e) | 1289 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EEmptyCell e) |
1297 : CSSValue(PrimitiveClass) | |
1298 { | 1290 { |
1299 m_primitiveUnitType = CSS_VALUE_ID; | 1291 CSSValueID valueID = CSSValueInvalid; |
1300 switch (e) { | 1292 switch (e) { |
1301 case SHOW: | 1293 case SHOW: |
1302 m_value.valueID = CSSValueShow; | 1294 valueID = CSSValueShow; |
1303 break; | 1295 break; |
1304 case HIDE: | 1296 case HIDE: |
1305 m_value.valueID = CSSValueHide; | 1297 valueID = CSSValueHide; |
1306 break; | 1298 break; |
1307 } | 1299 } |
| 1300 return create(valueID); |
1308 } | 1301 } |
1309 | 1302 |
1310 template<> inline CSSPrimitiveValue::operator EEmptyCell() const | 1303 template<> inline CSSPrimitiveValue::operator EEmptyCell() const |
1311 { | 1304 { |
1312 ASSERT(isValueID()); | 1305 ASSERT(isValueID()); |
1313 switch (value().valueID) { | 1306 switch (value().valueID) { |
1314 case CSSValueShow: | 1307 case CSSValueShow: |
1315 return SHOW; | 1308 return SHOW; |
1316 case CSSValueHide: | 1309 case CSSValueHide: |
1317 return HIDE; | 1310 return HIDE; |
1318 default: | 1311 default: |
1319 break; | 1312 break; |
1320 } | 1313 } |
1321 | 1314 |
1322 ASSERT_NOT_REACHED(); | 1315 ASSERT_NOT_REACHED(); |
1323 return SHOW; | 1316 return SHOW; |
1324 } | 1317 } |
1325 | 1318 |
1326 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFlexDirection e) | 1319 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFlexDirection e) |
1327 : CSSValue(PrimitiveClass) | |
1328 { | 1320 { |
1329 m_primitiveUnitType = CSS_VALUE_ID; | 1321 CSSValueID valueID = CSSValueInvalid; |
1330 switch (e) { | 1322 switch (e) { |
1331 case FlowRow: | 1323 case FlowRow: |
1332 m_value.valueID = CSSValueRow; | 1324 valueID = CSSValueRow; |
1333 break; | 1325 break; |
1334 case FlowRowReverse: | 1326 case FlowRowReverse: |
1335 m_value.valueID = CSSValueRowReverse; | 1327 valueID = CSSValueRowReverse; |
1336 break; | 1328 break; |
1337 case FlowColumn: | 1329 case FlowColumn: |
1338 m_value.valueID = CSSValueColumn; | 1330 valueID = CSSValueColumn; |
1339 break; | 1331 break; |
1340 case FlowColumnReverse: | 1332 case FlowColumnReverse: |
1341 m_value.valueID = CSSValueColumnReverse; | 1333 valueID = CSSValueColumnReverse; |
1342 break; | 1334 break; |
1343 } | 1335 } |
| 1336 return create(valueID); |
1344 } | 1337 } |
1345 | 1338 |
1346 template<> inline CSSPrimitiveValue::operator EFlexDirection() const | 1339 template<> inline CSSPrimitiveValue::operator EFlexDirection() const |
1347 { | 1340 { |
1348 ASSERT(isValueID()); | 1341 ASSERT(isValueID()); |
1349 switch (value().valueID) { | 1342 switch (value().valueID) { |
1350 case CSSValueRow: | 1343 case CSSValueRow: |
1351 return FlowRow; | 1344 return FlowRow; |
1352 case CSSValueRowReverse: | 1345 case CSSValueRowReverse: |
1353 return FlowRowReverse; | 1346 return FlowRowReverse; |
1354 case CSSValueColumn: | 1347 case CSSValueColumn: |
1355 return FlowColumn; | 1348 return FlowColumn; |
1356 case CSSValueColumnReverse: | 1349 case CSSValueColumnReverse: |
1357 return FlowColumnReverse; | 1350 return FlowColumnReverse; |
1358 default: | 1351 default: |
1359 break; | 1352 break; |
1360 } | 1353 } |
1361 | 1354 |
1362 ASSERT_NOT_REACHED(); | 1355 ASSERT_NOT_REACHED(); |
1363 return FlowRow; | 1356 return FlowRow; |
1364 } | 1357 } |
1365 | 1358 |
1366 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFlexWrap e) | 1359 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFlexWrap e) |
1367 : CSSValue(PrimitiveClass) | |
1368 { | 1360 { |
1369 m_primitiveUnitType = CSS_VALUE_ID; | 1361 CSSValueID valueID = CSSValueInvalid; |
1370 switch (e) { | 1362 switch (e) { |
1371 case FlexNoWrap: | 1363 case FlexNoWrap: |
1372 m_value.valueID = CSSValueNowrap; | 1364 valueID = CSSValueNowrap; |
1373 break; | 1365 break; |
1374 case FlexWrap: | 1366 case FlexWrap: |
1375 m_value.valueID = CSSValueWrap; | 1367 valueID = CSSValueWrap; |
1376 break; | 1368 break; |
1377 case FlexWrapReverse: | 1369 case FlexWrapReverse: |
1378 m_value.valueID = CSSValueWrapReverse; | 1370 valueID = CSSValueWrapReverse; |
1379 break; | 1371 break; |
1380 } | 1372 } |
| 1373 return create(valueID); |
1381 } | 1374 } |
1382 | 1375 |
1383 template<> inline CSSPrimitiveValue::operator EFlexWrap() const | 1376 template<> inline CSSPrimitiveValue::operator EFlexWrap() const |
1384 { | 1377 { |
1385 ASSERT(isValueID()); | 1378 ASSERT(isValueID()); |
1386 switch (value().valueID) { | 1379 switch (value().valueID) { |
1387 case CSSValueNowrap: | 1380 case CSSValueNowrap: |
1388 return FlexNoWrap; | 1381 return FlexNoWrap; |
1389 case CSSValueWrap: | 1382 case CSSValueWrap: |
1390 return FlexWrap; | 1383 return FlexWrap; |
1391 case CSSValueWrapReverse: | 1384 case CSSValueWrapReverse: |
1392 return FlexWrapReverse; | 1385 return FlexWrapReverse; |
1393 default: | 1386 default: |
1394 break; | 1387 break; |
1395 } | 1388 } |
1396 | 1389 |
1397 ASSERT_NOT_REACHED(); | 1390 ASSERT_NOT_REACHED(); |
1398 return FlexNoWrap; | 1391 return FlexNoWrap; |
1399 } | 1392 } |
1400 | 1393 |
1401 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFloat e) | 1394 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFloat e) |
1402 : CSSValue(PrimitiveClass) | |
1403 { | 1395 { |
1404 m_primitiveUnitType = CSS_VALUE_ID; | 1396 CSSValueID valueID = CSSValueInvalid; |
1405 switch (e) { | 1397 switch (e) { |
1406 case NoFloat: | 1398 case NoFloat: |
1407 m_value.valueID = CSSValueNone; | 1399 valueID = CSSValueNone; |
1408 break; | 1400 break; |
1409 case LeftFloat: | 1401 case LeftFloat: |
1410 m_value.valueID = CSSValueLeft; | 1402 valueID = CSSValueLeft; |
1411 break; | 1403 break; |
1412 case RightFloat: | 1404 case RightFloat: |
1413 m_value.valueID = CSSValueRight; | 1405 valueID = CSSValueRight; |
1414 break; | 1406 break; |
1415 } | 1407 } |
| 1408 return create(valueID); |
1416 } | 1409 } |
1417 | 1410 |
1418 template<> inline CSSPrimitiveValue::operator EFloat() const | 1411 template<> inline CSSPrimitiveValue::operator EFloat() const |
1419 { | 1412 { |
1420 ASSERT(isValueID()); | 1413 ASSERT(isValueID()); |
1421 switch (value().valueID) { | 1414 switch (value().valueID) { |
1422 case CSSValueLeft: | 1415 case CSSValueLeft: |
1423 return LeftFloat; | 1416 return LeftFloat; |
1424 case CSSValueRight: | 1417 case CSSValueRight: |
1425 return RightFloat; | 1418 return RightFloat; |
1426 case CSSValueNone: | 1419 case CSSValueNone: |
1427 return NoFloat; | 1420 return NoFloat; |
1428 default: | 1421 default: |
1429 break; | 1422 break; |
1430 } | 1423 } |
1431 | 1424 |
1432 ASSERT_NOT_REACHED(); | 1425 ASSERT_NOT_REACHED(); |
1433 return NoFloat; | 1426 return NoFloat; |
1434 } | 1427 } |
1435 | 1428 |
1436 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineBreak e) | 1429 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(LineBreak e) |
1437 : CSSValue(PrimitiveClass) | |
1438 { | 1430 { |
1439 m_primitiveUnitType = CSS_VALUE_ID; | 1431 CSSValueID valueID = CSSValueInvalid; |
1440 switch (e) { | 1432 switch (e) { |
1441 case LineBreakAuto: | 1433 case LineBreakAuto: |
1442 m_value.valueID = CSSValueAuto; | 1434 valueID = CSSValueAuto; |
1443 break; | 1435 break; |
1444 case LineBreakLoose: | 1436 case LineBreakLoose: |
1445 m_value.valueID = CSSValueLoose; | 1437 valueID = CSSValueLoose; |
1446 break; | 1438 break; |
1447 case LineBreakNormal: | 1439 case LineBreakNormal: |
1448 m_value.valueID = CSSValueNormal; | 1440 valueID = CSSValueNormal; |
1449 break; | 1441 break; |
1450 case LineBreakStrict: | 1442 case LineBreakStrict: |
1451 m_value.valueID = CSSValueStrict; | 1443 valueID = CSSValueStrict; |
1452 break; | 1444 break; |
1453 case LineBreakAfterWhiteSpace: | 1445 case LineBreakAfterWhiteSpace: |
1454 m_value.valueID = CSSValueAfterWhiteSpace; | 1446 valueID = CSSValueAfterWhiteSpace; |
1455 break; | 1447 break; |
1456 } | 1448 } |
| 1449 return create(valueID); |
1457 } | 1450 } |
1458 | 1451 |
1459 template<> inline CSSPrimitiveValue::operator LineBreak() const | 1452 template<> inline CSSPrimitiveValue::operator LineBreak() const |
1460 { | 1453 { |
1461 ASSERT(isValueID()); | 1454 ASSERT(isValueID()); |
1462 switch (value().valueID) { | 1455 switch (value().valueID) { |
1463 case CSSValueAuto: | 1456 case CSSValueAuto: |
1464 return LineBreakAuto; | 1457 return LineBreakAuto; |
1465 case CSSValueLoose: | 1458 case CSSValueLoose: |
1466 return LineBreakLoose; | 1459 return LineBreakLoose; |
1467 case CSSValueNormal: | 1460 case CSSValueNormal: |
1468 return LineBreakNormal; | 1461 return LineBreakNormal; |
1469 case CSSValueStrict: | 1462 case CSSValueStrict: |
1470 return LineBreakStrict; | 1463 return LineBreakStrict; |
1471 case CSSValueAfterWhiteSpace: | 1464 case CSSValueAfterWhiteSpace: |
1472 return LineBreakAfterWhiteSpace; | 1465 return LineBreakAfterWhiteSpace; |
1473 default: | 1466 default: |
1474 break; | 1467 break; |
1475 } | 1468 } |
1476 | 1469 |
1477 ASSERT_NOT_REACHED(); | 1470 ASSERT_NOT_REACHED(); |
1478 return LineBreakAuto; | 1471 return LineBreakAuto; |
1479 } | 1472 } |
1480 | 1473 |
1481 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EListStylePosition e) | 1474 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EListStylePosition e) |
1482 : CSSValue(PrimitiveClass) | |
1483 { | 1475 { |
1484 m_primitiveUnitType = CSS_VALUE_ID; | 1476 CSSValueID valueID = CSSValueInvalid; |
1485 switch (e) { | 1477 switch (e) { |
1486 case OUTSIDE: | 1478 case OUTSIDE: |
1487 m_value.valueID = CSSValueOutside; | 1479 valueID = CSSValueOutside; |
1488 break; | 1480 break; |
1489 case INSIDE: | 1481 case INSIDE: |
1490 m_value.valueID = CSSValueInside; | 1482 valueID = CSSValueInside; |
1491 break; | 1483 break; |
1492 } | 1484 } |
| 1485 return create(valueID); |
1493 } | 1486 } |
1494 | 1487 |
1495 template<> inline CSSPrimitiveValue::operator EListStylePosition() const | 1488 template<> inline CSSPrimitiveValue::operator EListStylePosition() const |
1496 { | 1489 { |
1497 ASSERT(isValueID()); | 1490 ASSERT(isValueID()); |
1498 switch (value().valueID) { | 1491 switch (value().valueID) { |
1499 case CSSValueOutside: | 1492 case CSSValueOutside: |
1500 return OUTSIDE; | 1493 return OUTSIDE; |
1501 case CSSValueInside: | 1494 case CSSValueInside: |
1502 return INSIDE; | 1495 return INSIDE; |
1503 default: | 1496 default: |
1504 break; | 1497 break; |
1505 } | 1498 } |
1506 | 1499 |
1507 ASSERT_NOT_REACHED(); | 1500 ASSERT_NOT_REACHED(); |
1508 return OUTSIDE; | 1501 return OUTSIDE; |
1509 } | 1502 } |
1510 | 1503 |
1511 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EListStyleType e) | 1504 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EListStyleType e) |
1512 : CSSValue(PrimitiveClass) | |
1513 { | 1505 { |
1514 m_primitiveUnitType = CSS_VALUE_ID; | 1506 CSSValueID valueID = CSSValueInvalid; |
1515 switch (e) { | 1507 switch (e) { |
1516 case ArabicIndic: | 1508 case ArabicIndic: |
1517 m_value.valueID = CSSValueArabicIndic; | 1509 valueID = CSSValueArabicIndic; |
1518 break; | 1510 break; |
1519 case Armenian: | 1511 case Armenian: |
1520 m_value.valueID = CSSValueArmenian; | 1512 valueID = CSSValueArmenian; |
1521 break; | 1513 break; |
1522 case Bengali: | 1514 case Bengali: |
1523 m_value.valueID = CSSValueBengali; | 1515 valueID = CSSValueBengali; |
1524 break; | 1516 break; |
1525 case Cambodian: | 1517 case Cambodian: |
1526 m_value.valueID = CSSValueCambodian; | 1518 valueID = CSSValueCambodian; |
1527 break; | 1519 break; |
1528 case Circle: | 1520 case Circle: |
1529 m_value.valueID = CSSValueCircle; | 1521 valueID = CSSValueCircle; |
1530 break; | 1522 break; |
1531 case CjkEarthlyBranch: | 1523 case CjkEarthlyBranch: |
1532 m_value.valueID = CSSValueCjkEarthlyBranch; | 1524 valueID = CSSValueCjkEarthlyBranch; |
1533 break; | 1525 break; |
1534 case CjkHeavenlyStem: | 1526 case CjkHeavenlyStem: |
1535 m_value.valueID = CSSValueCjkHeavenlyStem; | 1527 valueID = CSSValueCjkHeavenlyStem; |
1536 break; | 1528 break; |
1537 case CJKIdeographic: | 1529 case CJKIdeographic: |
1538 m_value.valueID = CSSValueCjkIdeographic; | 1530 valueID = CSSValueCjkIdeographic; |
1539 break; | 1531 break; |
1540 case DecimalLeadingZero: | 1532 case DecimalLeadingZero: |
1541 m_value.valueID = CSSValueDecimalLeadingZero; | 1533 valueID = CSSValueDecimalLeadingZero; |
1542 break; | 1534 break; |
1543 case DecimalListStyle: | 1535 case DecimalListStyle: |
1544 m_value.valueID = CSSValueDecimal; | 1536 valueID = CSSValueDecimal; |
1545 break; | 1537 break; |
1546 case Devanagari: | 1538 case Devanagari: |
1547 m_value.valueID = CSSValueDevanagari; | 1539 valueID = CSSValueDevanagari; |
1548 break; | 1540 break; |
1549 case Disc: | 1541 case Disc: |
1550 m_value.valueID = CSSValueDisc; | 1542 valueID = CSSValueDisc; |
1551 break; | 1543 break; |
1552 case EthiopicHalehame: | 1544 case EthiopicHalehame: |
1553 m_value.valueID = CSSValueEthiopicHalehame; | 1545 valueID = CSSValueEthiopicHalehame; |
1554 break; | 1546 break; |
1555 case EthiopicHalehameAm: | 1547 case EthiopicHalehameAm: |
1556 m_value.valueID = CSSValueEthiopicHalehameAm; | 1548 valueID = CSSValueEthiopicHalehameAm; |
1557 break; | 1549 break; |
1558 case EthiopicHalehameTiEt: | 1550 case EthiopicHalehameTiEt: |
1559 m_value.valueID = CSSValueEthiopicHalehameTiEt; | 1551 valueID = CSSValueEthiopicHalehameTiEt; |
1560 break; | 1552 break; |
1561 case EthiopicHalehameTiEr: | 1553 case EthiopicHalehameTiEr: |
1562 m_value.valueID = CSSValueEthiopicHalehameTiEr; | 1554 valueID = CSSValueEthiopicHalehameTiEr; |
1563 break; | 1555 break; |
1564 case Georgian: | 1556 case Georgian: |
1565 m_value.valueID = CSSValueGeorgian; | 1557 valueID = CSSValueGeorgian; |
1566 break; | 1558 break; |
1567 case Gujarati: | 1559 case Gujarati: |
1568 m_value.valueID = CSSValueGujarati; | 1560 valueID = CSSValueGujarati; |
1569 break; | 1561 break; |
1570 case Gurmukhi: | 1562 case Gurmukhi: |
1571 m_value.valueID = CSSValueGurmukhi; | 1563 valueID = CSSValueGurmukhi; |
1572 break; | 1564 break; |
1573 case Hangul: | 1565 case Hangul: |
1574 m_value.valueID = CSSValueHangul; | 1566 valueID = CSSValueHangul; |
1575 break; | 1567 break; |
1576 case HangulConsonant: | 1568 case HangulConsonant: |
1577 m_value.valueID = CSSValueHangulConsonant; | 1569 valueID = CSSValueHangulConsonant; |
1578 break; | 1570 break; |
1579 case KoreanHangulFormal: | 1571 case KoreanHangulFormal: |
1580 m_value.valueID = CSSValueKoreanHangulFormal; | 1572 valueID = CSSValueKoreanHangulFormal; |
1581 break; | 1573 break; |
1582 case KoreanHanjaFormal: | 1574 case KoreanHanjaFormal: |
1583 m_value.valueID = CSSValueKoreanHanjaFormal; | 1575 valueID = CSSValueKoreanHanjaFormal; |
1584 break; | 1576 break; |
1585 case KoreanHanjaInformal: | 1577 case KoreanHanjaInformal: |
1586 m_value.valueID = CSSValueKoreanHanjaInformal; | 1578 valueID = CSSValueKoreanHanjaInformal; |
1587 break; | 1579 break; |
1588 case Hebrew: | 1580 case Hebrew: |
1589 m_value.valueID = CSSValueHebrew; | 1581 valueID = CSSValueHebrew; |
1590 break; | 1582 break; |
1591 case Hiragana: | 1583 case Hiragana: |
1592 m_value.valueID = CSSValueHiragana; | 1584 valueID = CSSValueHiragana; |
1593 break; | 1585 break; |
1594 case HiraganaIroha: | 1586 case HiraganaIroha: |
1595 m_value.valueID = CSSValueHiraganaIroha; | 1587 valueID = CSSValueHiraganaIroha; |
1596 break; | 1588 break; |
1597 case Kannada: | 1589 case Kannada: |
1598 m_value.valueID = CSSValueKannada; | 1590 valueID = CSSValueKannada; |
1599 break; | 1591 break; |
1600 case Katakana: | 1592 case Katakana: |
1601 m_value.valueID = CSSValueKatakana; | 1593 valueID = CSSValueKatakana; |
1602 break; | 1594 break; |
1603 case KatakanaIroha: | 1595 case KatakanaIroha: |
1604 m_value.valueID = CSSValueKatakanaIroha; | 1596 valueID = CSSValueKatakanaIroha; |
1605 break; | 1597 break; |
1606 case Khmer: | 1598 case Khmer: |
1607 m_value.valueID = CSSValueKhmer; | 1599 valueID = CSSValueKhmer; |
1608 break; | 1600 break; |
1609 case Lao: | 1601 case Lao: |
1610 m_value.valueID = CSSValueLao; | 1602 valueID = CSSValueLao; |
1611 break; | 1603 break; |
1612 case LowerAlpha: | 1604 case LowerAlpha: |
1613 m_value.valueID = CSSValueLowerAlpha; | 1605 valueID = CSSValueLowerAlpha; |
1614 break; | 1606 break; |
1615 case LowerArmenian: | 1607 case LowerArmenian: |
1616 m_value.valueID = CSSValueLowerArmenian; | 1608 valueID = CSSValueLowerArmenian; |
1617 break; | 1609 break; |
1618 case LowerGreek: | 1610 case LowerGreek: |
1619 m_value.valueID = CSSValueLowerGreek; | 1611 valueID = CSSValueLowerGreek; |
1620 break; | 1612 break; |
1621 case LowerLatin: | 1613 case LowerLatin: |
1622 m_value.valueID = CSSValueLowerLatin; | 1614 valueID = CSSValueLowerLatin; |
1623 break; | 1615 break; |
1624 case LowerRoman: | 1616 case LowerRoman: |
1625 m_value.valueID = CSSValueLowerRoman; | 1617 valueID = CSSValueLowerRoman; |
1626 break; | 1618 break; |
1627 case Malayalam: | 1619 case Malayalam: |
1628 m_value.valueID = CSSValueMalayalam; | 1620 valueID = CSSValueMalayalam; |
1629 break; | 1621 break; |
1630 case Mongolian: | 1622 case Mongolian: |
1631 m_value.valueID = CSSValueMongolian; | 1623 valueID = CSSValueMongolian; |
1632 break; | 1624 break; |
1633 case Myanmar: | 1625 case Myanmar: |
1634 m_value.valueID = CSSValueMyanmar; | 1626 valueID = CSSValueMyanmar; |
1635 break; | 1627 break; |
1636 case NoneListStyle: | 1628 case NoneListStyle: |
1637 m_value.valueID = CSSValueNone; | 1629 valueID = CSSValueNone; |
1638 break; | 1630 break; |
1639 case Oriya: | 1631 case Oriya: |
1640 m_value.valueID = CSSValueOriya; | 1632 valueID = CSSValueOriya; |
1641 break; | 1633 break; |
1642 case Persian: | 1634 case Persian: |
1643 m_value.valueID = CSSValuePersian; | 1635 valueID = CSSValuePersian; |
1644 break; | 1636 break; |
1645 case SimpChineseFormal: | 1637 case SimpChineseFormal: |
1646 m_value.valueID = CSSValueSimpChineseFormal; | 1638 valueID = CSSValueSimpChineseFormal; |
1647 break; | 1639 break; |
1648 case SimpChineseInformal: | 1640 case SimpChineseInformal: |
1649 m_value.valueID = CSSValueSimpChineseInformal; | 1641 valueID = CSSValueSimpChineseInformal; |
1650 break; | 1642 break; |
1651 case Square: | 1643 case Square: |
1652 m_value.valueID = CSSValueSquare; | 1644 valueID = CSSValueSquare; |
1653 break; | 1645 break; |
1654 case Telugu: | 1646 case Telugu: |
1655 m_value.valueID = CSSValueTelugu; | 1647 valueID = CSSValueTelugu; |
1656 break; | 1648 break; |
1657 case Thai: | 1649 case Thai: |
1658 m_value.valueID = CSSValueThai; | 1650 valueID = CSSValueThai; |
1659 break; | 1651 break; |
1660 case Tibetan: | 1652 case Tibetan: |
1661 m_value.valueID = CSSValueTibetan; | 1653 valueID = CSSValueTibetan; |
1662 break; | 1654 break; |
1663 case TradChineseFormal: | 1655 case TradChineseFormal: |
1664 m_value.valueID = CSSValueTradChineseFormal; | 1656 valueID = CSSValueTradChineseFormal; |
1665 break; | 1657 break; |
1666 case TradChineseInformal: | 1658 case TradChineseInformal: |
1667 m_value.valueID = CSSValueTradChineseInformal; | 1659 valueID = CSSValueTradChineseInformal; |
1668 break; | 1660 break; |
1669 case UpperAlpha: | 1661 case UpperAlpha: |
1670 m_value.valueID = CSSValueUpperAlpha; | 1662 valueID = CSSValueUpperAlpha; |
1671 break; | 1663 break; |
1672 case UpperArmenian: | 1664 case UpperArmenian: |
1673 m_value.valueID = CSSValueUpperArmenian; | 1665 valueID = CSSValueUpperArmenian; |
1674 break; | 1666 break; |
1675 case UpperLatin: | 1667 case UpperLatin: |
1676 m_value.valueID = CSSValueUpperLatin; | 1668 valueID = CSSValueUpperLatin; |
1677 break; | 1669 break; |
1678 case UpperRoman: | 1670 case UpperRoman: |
1679 m_value.valueID = CSSValueUpperRoman; | 1671 valueID = CSSValueUpperRoman; |
1680 break; | 1672 break; |
1681 case Urdu: | 1673 case Urdu: |
1682 m_value.valueID = CSSValueUrdu; | 1674 valueID = CSSValueUrdu; |
1683 break; | 1675 break; |
1684 } | 1676 } |
| 1677 return create(valueID); |
1685 } | 1678 } |
1686 | 1679 |
1687 template<> inline CSSPrimitiveValue::operator EListStyleType() const | 1680 template<> inline CSSPrimitiveValue::operator EListStyleType() const |
1688 { | 1681 { |
1689 ASSERT(isValueID()); | 1682 ASSERT(isValueID()); |
1690 switch (value().valueID) { | 1683 switch (value().valueID) { |
1691 case CSSValueNone: | 1684 case CSSValueNone: |
1692 return NoneListStyle; | 1685 return NoneListStyle; |
1693 default: | 1686 default: |
1694 return static_cast<EListStyleType>(value().valueID - CSSValueDisc); | 1687 return static_cast<EListStyleType>(value().valueID - CSSValueDisc); |
1695 } | 1688 } |
1696 } | 1689 } |
1697 | 1690 |
1698 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMarginCollapse e) | 1691 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EMarginCollapse e) |
1699 : CSSValue(PrimitiveClass) | |
1700 { | 1692 { |
1701 m_primitiveUnitType = CSS_VALUE_ID; | 1693 CSSValueID valueID = CSSValueInvalid; |
1702 switch (e) { | 1694 switch (e) { |
1703 case MCOLLAPSE: | 1695 case MCOLLAPSE: |
1704 m_value.valueID = CSSValueCollapse; | 1696 valueID = CSSValueCollapse; |
1705 break; | 1697 break; |
1706 case MSEPARATE: | 1698 case MSEPARATE: |
1707 m_value.valueID = CSSValueSeparate; | 1699 valueID = CSSValueSeparate; |
1708 break; | 1700 break; |
1709 case MDISCARD: | 1701 case MDISCARD: |
1710 m_value.valueID = CSSValueDiscard; | 1702 valueID = CSSValueDiscard; |
1711 break; | 1703 break; |
1712 } | 1704 } |
| 1705 return create(valueID); |
1713 } | 1706 } |
1714 | 1707 |
1715 template<> inline CSSPrimitiveValue::operator EMarginCollapse() const | 1708 template<> inline CSSPrimitiveValue::operator EMarginCollapse() const |
1716 { | 1709 { |
1717 ASSERT(isValueID()); | 1710 ASSERT(isValueID()); |
1718 switch (value().valueID) { | 1711 switch (value().valueID) { |
1719 case CSSValueCollapse: | 1712 case CSSValueCollapse: |
1720 return MCOLLAPSE; | 1713 return MCOLLAPSE; |
1721 case CSSValueSeparate: | 1714 case CSSValueSeparate: |
1722 return MSEPARATE; | 1715 return MSEPARATE; |
1723 case CSSValueDiscard: | 1716 case CSSValueDiscard: |
1724 return MDISCARD; | 1717 return MDISCARD; |
1725 default: | 1718 default: |
1726 break; | 1719 break; |
1727 } | 1720 } |
1728 | 1721 |
1729 ASSERT_NOT_REACHED(); | 1722 ASSERT_NOT_REACHED(); |
1730 return MCOLLAPSE; | 1723 return MCOLLAPSE; |
1731 } | 1724 } |
1732 | 1725 |
1733 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EOverflow e) | 1726 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EOverflow e) |
1734 : CSSValue(PrimitiveClass) | |
1735 { | 1727 { |
1736 m_primitiveUnitType = CSS_VALUE_ID; | 1728 CSSValueID valueID = CSSValueInvalid; |
1737 switch (e) { | 1729 switch (e) { |
1738 case OVISIBLE: | 1730 case OVISIBLE: |
1739 m_value.valueID = CSSValueVisible; | 1731 valueID = CSSValueVisible; |
1740 break; | 1732 break; |
1741 case OHIDDEN: | 1733 case OHIDDEN: |
1742 m_value.valueID = CSSValueHidden; | 1734 valueID = CSSValueHidden; |
1743 break; | 1735 break; |
1744 case OSCROLL: | 1736 case OSCROLL: |
1745 m_value.valueID = CSSValueScroll; | 1737 valueID = CSSValueScroll; |
1746 break; | 1738 break; |
1747 case OAUTO: | 1739 case OAUTO: |
1748 m_value.valueID = CSSValueAuto; | 1740 valueID = CSSValueAuto; |
1749 break; | 1741 break; |
1750 case OOVERLAY: | 1742 case OOVERLAY: |
1751 m_value.valueID = CSSValueOverlay; | 1743 valueID = CSSValueOverlay; |
1752 break; | 1744 break; |
1753 case OPAGEDX: | 1745 case OPAGEDX: |
1754 m_value.valueID = CSSValueWebkitPagedX; | 1746 valueID = CSSValueWebkitPagedX; |
1755 break; | 1747 break; |
1756 case OPAGEDY: | 1748 case OPAGEDY: |
1757 m_value.valueID = CSSValueWebkitPagedY; | 1749 valueID = CSSValueWebkitPagedY; |
1758 break; | 1750 break; |
1759 } | 1751 } |
| 1752 return create(valueID); |
1760 } | 1753 } |
1761 | 1754 |
1762 template<> inline CSSPrimitiveValue::operator EOverflow() const | 1755 template<> inline CSSPrimitiveValue::operator EOverflow() const |
1763 { | 1756 { |
1764 ASSERT(isValueID()); | 1757 ASSERT(isValueID()); |
1765 switch (value().valueID) { | 1758 switch (value().valueID) { |
1766 case CSSValueVisible: | 1759 case CSSValueVisible: |
1767 return OVISIBLE; | 1760 return OVISIBLE; |
1768 case CSSValueHidden: | 1761 case CSSValueHidden: |
1769 return OHIDDEN; | 1762 return OHIDDEN; |
1770 case CSSValueScroll: | 1763 case CSSValueScroll: |
1771 return OSCROLL; | 1764 return OSCROLL; |
1772 case CSSValueAuto: | 1765 case CSSValueAuto: |
1773 return OAUTO; | 1766 return OAUTO; |
1774 case CSSValueOverlay: | 1767 case CSSValueOverlay: |
1775 return OOVERLAY; | 1768 return OOVERLAY; |
1776 case CSSValueWebkitPagedX: | 1769 case CSSValueWebkitPagedX: |
1777 return OPAGEDX; | 1770 return OPAGEDX; |
1778 case CSSValueWebkitPagedY: | 1771 case CSSValueWebkitPagedY: |
1779 return OPAGEDY; | 1772 return OPAGEDY; |
1780 default: | 1773 default: |
1781 break; | 1774 break; |
1782 } | 1775 } |
1783 | 1776 |
1784 ASSERT_NOT_REACHED(); | 1777 ASSERT_NOT_REACHED(); |
1785 return OVISIBLE; | 1778 return OVISIBLE; |
1786 } | 1779 } |
1787 | 1780 |
1788 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPageBreak e) | 1781 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EPageBreak e) |
1789 : CSSValue(PrimitiveClass) | |
1790 { | 1782 { |
1791 m_primitiveUnitType = CSS_VALUE_ID; | 1783 CSSValueID valueID = CSSValueInvalid; |
1792 switch (e) { | 1784 switch (e) { |
1793 case PBAUTO: | 1785 case PBAUTO: |
1794 m_value.valueID = CSSValueAuto; | 1786 valueID = CSSValueAuto; |
1795 break; | 1787 break; |
1796 case PBALWAYS: | 1788 case PBALWAYS: |
1797 m_value.valueID = CSSValueAlways; | 1789 valueID = CSSValueAlways; |
1798 break; | 1790 break; |
1799 case PBAVOID: | 1791 case PBAVOID: |
1800 m_value.valueID = CSSValueAvoid; | 1792 valueID = CSSValueAvoid; |
1801 break; | 1793 break; |
1802 } | 1794 } |
| 1795 return create(valueID); |
1803 } | 1796 } |
1804 | 1797 |
1805 template<> inline CSSPrimitiveValue::operator EPageBreak() const | 1798 template<> inline CSSPrimitiveValue::operator EPageBreak() const |
1806 { | 1799 { |
1807 ASSERT(isValueID()); | 1800 ASSERT(isValueID()); |
1808 switch (value().valueID) { | 1801 switch (value().valueID) { |
1809 case CSSValueAuto: | 1802 case CSSValueAuto: |
1810 return PBAUTO; | 1803 return PBAUTO; |
1811 case CSSValueLeft: | 1804 case CSSValueLeft: |
1812 case CSSValueRight: | 1805 case CSSValueRight: |
1813 case CSSValueAlways: | 1806 case CSSValueAlways: |
1814 return PBALWAYS; // CSS2.1: "Conforming user agents may map left/right t
o always." | 1807 return PBALWAYS; // CSS2.1: "Conforming user agents may map left/right t
o always." |
1815 case CSSValueAvoid: | 1808 case CSSValueAvoid: |
1816 return PBAVOID; | 1809 return PBAVOID; |
1817 default: | 1810 default: |
1818 break; | 1811 break; |
1819 } | 1812 } |
1820 | 1813 |
1821 ASSERT_NOT_REACHED(); | 1814 ASSERT_NOT_REACHED(); |
1822 return PBAUTO; | 1815 return PBAUTO; |
1823 } | 1816 } |
1824 | 1817 |
1825 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPosition e) | 1818 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EPosition e) |
1826 : CSSValue(PrimitiveClass) | |
1827 { | 1819 { |
1828 m_primitiveUnitType = CSS_VALUE_ID; | 1820 CSSValueID valueID = CSSValueInvalid; |
1829 switch (e) { | 1821 switch (e) { |
1830 case StaticPosition: | 1822 case StaticPosition: |
1831 m_value.valueID = CSSValueStatic; | 1823 valueID = CSSValueStatic; |
1832 break; | 1824 break; |
1833 case RelativePosition: | 1825 case RelativePosition: |
1834 m_value.valueID = CSSValueRelative; | 1826 valueID = CSSValueRelative; |
1835 break; | 1827 break; |
1836 case AbsolutePosition: | 1828 case AbsolutePosition: |
1837 m_value.valueID = CSSValueAbsolute; | 1829 valueID = CSSValueAbsolute; |
1838 break; | 1830 break; |
1839 case FixedPosition: | 1831 case FixedPosition: |
1840 m_value.valueID = CSSValueFixed; | 1832 valueID = CSSValueFixed; |
1841 break; | 1833 break; |
1842 case StickyPosition: | 1834 case StickyPosition: |
1843 m_value.valueID = CSSValueSticky; | 1835 valueID = CSSValueSticky; |
1844 break; | 1836 break; |
1845 } | 1837 } |
| 1838 return create(valueID); |
1846 } | 1839 } |
1847 | 1840 |
1848 template<> inline CSSPrimitiveValue::operator EPosition() const | 1841 template<> inline CSSPrimitiveValue::operator EPosition() const |
1849 { | 1842 { |
1850 ASSERT(isValueID()); | 1843 ASSERT(isValueID()); |
1851 switch (value().valueID) { | 1844 switch (value().valueID) { |
1852 case CSSValueStatic: | 1845 case CSSValueStatic: |
1853 return StaticPosition; | 1846 return StaticPosition; |
1854 case CSSValueRelative: | 1847 case CSSValueRelative: |
1855 return RelativePosition; | 1848 return RelativePosition; |
1856 case CSSValueAbsolute: | 1849 case CSSValueAbsolute: |
1857 return AbsolutePosition; | 1850 return AbsolutePosition; |
1858 case CSSValueFixed: | 1851 case CSSValueFixed: |
1859 return FixedPosition; | 1852 return FixedPosition; |
1860 case CSSValueSticky: | 1853 case CSSValueSticky: |
1861 return StickyPosition; | 1854 return StickyPosition; |
1862 default: | 1855 default: |
1863 break; | 1856 break; |
1864 } | 1857 } |
1865 | 1858 |
1866 ASSERT_NOT_REACHED(); | 1859 ASSERT_NOT_REACHED(); |
1867 return StaticPosition; | 1860 return StaticPosition; |
1868 } | 1861 } |
1869 | 1862 |
1870 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EResize e) | 1863 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EResize e) |
1871 : CSSValue(PrimitiveClass) | |
1872 { | 1864 { |
1873 m_primitiveUnitType = CSS_VALUE_ID; | 1865 CSSValueID valueID = CSSValueInvalid; |
1874 switch (e) { | 1866 switch (e) { |
1875 case RESIZE_BOTH: | 1867 case RESIZE_BOTH: |
1876 m_value.valueID = CSSValueBoth; | 1868 valueID = CSSValueBoth; |
1877 break; | 1869 break; |
1878 case RESIZE_HORIZONTAL: | 1870 case RESIZE_HORIZONTAL: |
1879 m_value.valueID = CSSValueHorizontal; | 1871 valueID = CSSValueHorizontal; |
1880 break; | 1872 break; |
1881 case RESIZE_VERTICAL: | 1873 case RESIZE_VERTICAL: |
1882 m_value.valueID = CSSValueVertical; | 1874 valueID = CSSValueVertical; |
1883 break; | 1875 break; |
1884 case RESIZE_NONE: | 1876 case RESIZE_NONE: |
1885 m_value.valueID = CSSValueNone; | 1877 valueID = CSSValueNone; |
1886 break; | 1878 break; |
1887 } | 1879 } |
| 1880 return create(valueID); |
1888 } | 1881 } |
1889 | 1882 |
1890 template<> inline CSSPrimitiveValue::operator EResize() const | 1883 template<> inline CSSPrimitiveValue::operator EResize() const |
1891 { | 1884 { |
1892 ASSERT(isValueID()); | 1885 ASSERT(isValueID()); |
1893 switch (value().valueID) { | 1886 switch (value().valueID) { |
1894 case CSSValueBoth: | 1887 case CSSValueBoth: |
1895 return RESIZE_BOTH; | 1888 return RESIZE_BOTH; |
1896 case CSSValueHorizontal: | 1889 case CSSValueHorizontal: |
1897 return RESIZE_HORIZONTAL; | 1890 return RESIZE_HORIZONTAL; |
1898 case CSSValueVertical: | 1891 case CSSValueVertical: |
1899 return RESIZE_VERTICAL; | 1892 return RESIZE_VERTICAL; |
1900 case CSSValueAuto: | 1893 case CSSValueAuto: |
1901 ASSERT_NOT_REACHED(); // Depends on settings, thus should be handled by
the caller. | 1894 ASSERT_NOT_REACHED(); // Depends on settings, thus should be handled by
the caller. |
1902 return RESIZE_NONE; | 1895 return RESIZE_NONE; |
1903 case CSSValueNone: | 1896 case CSSValueNone: |
1904 return RESIZE_NONE; | 1897 return RESIZE_NONE; |
1905 default: | 1898 default: |
1906 break; | 1899 break; |
1907 } | 1900 } |
1908 | 1901 |
1909 ASSERT_NOT_REACHED(); | 1902 ASSERT_NOT_REACHED(); |
1910 return RESIZE_NONE; | 1903 return RESIZE_NONE; |
1911 } | 1904 } |
1912 | 1905 |
1913 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETableLayout e) | 1906 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETableLayout e) |
1914 : CSSValue(PrimitiveClass) | |
1915 { | 1907 { |
1916 m_primitiveUnitType = CSS_VALUE_ID; | 1908 CSSValueID valueID = CSSValueInvalid; |
1917 switch (e) { | 1909 switch (e) { |
1918 case TAUTO: | 1910 case TAUTO: |
1919 m_value.valueID = CSSValueAuto; | 1911 valueID = CSSValueAuto; |
1920 break; | 1912 break; |
1921 case TFIXED: | 1913 case TFIXED: |
1922 m_value.valueID = CSSValueFixed; | 1914 valueID = CSSValueFixed; |
1923 break; | 1915 break; |
1924 } | 1916 } |
| 1917 return create(valueID); |
1925 } | 1918 } |
1926 | 1919 |
1927 template<> inline CSSPrimitiveValue::operator ETableLayout() const | 1920 template<> inline CSSPrimitiveValue::operator ETableLayout() const |
1928 { | 1921 { |
1929 ASSERT(isValueID()); | 1922 ASSERT(isValueID()); |
1930 switch (value().valueID) { | 1923 switch (value().valueID) { |
1931 case CSSValueFixed: | 1924 case CSSValueFixed: |
1932 return TFIXED; | 1925 return TFIXED; |
1933 case CSSValueAuto: | 1926 case CSSValueAuto: |
1934 return TAUTO; | 1927 return TAUTO; |
1935 default: | 1928 default: |
1936 break; | 1929 break; |
1937 } | 1930 } |
1938 | 1931 |
1939 ASSERT_NOT_REACHED(); | 1932 ASSERT_NOT_REACHED(); |
1940 return TAUTO; | 1933 return TAUTO; |
1941 } | 1934 } |
1942 | 1935 |
1943 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextAlign e) | 1936 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETextAlign e) |
1944 : CSSValue(PrimitiveClass) | |
1945 { | 1937 { |
1946 m_primitiveUnitType = CSS_VALUE_ID; | 1938 CSSValueID valueID = CSSValueInvalid; |
1947 switch (e) { | 1939 switch (e) { |
1948 case TASTART: | 1940 case TASTART: |
1949 m_value.valueID = CSSValueStart; | 1941 valueID = CSSValueStart; |
1950 break; | 1942 break; |
1951 case TAEND: | 1943 case TAEND: |
1952 m_value.valueID = CSSValueEnd; | 1944 valueID = CSSValueEnd; |
1953 break; | 1945 break; |
1954 case LEFT: | 1946 case LEFT: |
1955 m_value.valueID = CSSValueLeft; | 1947 valueID = CSSValueLeft; |
1956 break; | 1948 break; |
1957 case RIGHT: | 1949 case RIGHT: |
1958 m_value.valueID = CSSValueRight; | 1950 valueID = CSSValueRight; |
1959 break; | 1951 break; |
1960 case CENTER: | 1952 case CENTER: |
1961 m_value.valueID = CSSValueCenter; | 1953 valueID = CSSValueCenter; |
1962 break; | 1954 break; |
1963 case JUSTIFY: | 1955 case JUSTIFY: |
1964 m_value.valueID = CSSValueJustify; | 1956 valueID = CSSValueJustify; |
1965 break; | 1957 break; |
1966 case WEBKIT_LEFT: | 1958 case WEBKIT_LEFT: |
1967 m_value.valueID = CSSValueWebkitLeft; | 1959 valueID = CSSValueWebkitLeft; |
1968 break; | 1960 break; |
1969 case WEBKIT_RIGHT: | 1961 case WEBKIT_RIGHT: |
1970 m_value.valueID = CSSValueWebkitRight; | 1962 valueID = CSSValueWebkitRight; |
1971 break; | 1963 break; |
1972 case WEBKIT_CENTER: | 1964 case WEBKIT_CENTER: |
1973 m_value.valueID = CSSValueWebkitCenter; | 1965 valueID = CSSValueWebkitCenter; |
1974 break; | 1966 break; |
1975 } | 1967 } |
| 1968 return create(valueID); |
1976 } | 1969 } |
1977 | 1970 |
1978 template<> inline CSSPrimitiveValue::operator ETextAlign() const | 1971 template<> inline CSSPrimitiveValue::operator ETextAlign() const |
1979 { | 1972 { |
1980 ASSERT(isValueID()); | 1973 ASSERT(isValueID()); |
1981 switch (value().valueID) { | 1974 switch (value().valueID) { |
1982 case CSSValueWebkitAuto: // Legacy -webkit-auto. Eqiuvalent to start. | 1975 case CSSValueWebkitAuto: // Legacy -webkit-auto. Eqiuvalent to start. |
1983 case CSSValueStart: | 1976 case CSSValueStart: |
1984 return TASTART; | 1977 return TASTART; |
1985 case CSSValueEnd: | 1978 case CSSValueEnd: |
1986 return TAEND; | 1979 return TAEND; |
1987 default: | 1980 default: |
1988 return static_cast<ETextAlign>(value().valueID - CSSValueLeft); | 1981 return static_cast<ETextAlign>(value().valueID - CSSValueLeft); |
1989 } | 1982 } |
1990 } | 1983 } |
1991 | 1984 |
1992 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextAlignLast e) | 1985 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextAlignLast e) |
1993 : CSSValue(PrimitiveClass) | |
1994 { | 1986 { |
1995 m_primitiveUnitType = CSS_VALUE_ID; | 1987 CSSValueID valueID = CSSValueInvalid; |
1996 switch (e) { | 1988 switch (e) { |
1997 case TextAlignLastStart: | 1989 case TextAlignLastStart: |
1998 m_value.valueID = CSSValueStart; | 1990 valueID = CSSValueStart; |
1999 break; | 1991 break; |
2000 case TextAlignLastEnd: | 1992 case TextAlignLastEnd: |
2001 m_value.valueID = CSSValueEnd; | 1993 valueID = CSSValueEnd; |
2002 break; | 1994 break; |
2003 case TextAlignLastLeft: | 1995 case TextAlignLastLeft: |
2004 m_value.valueID = CSSValueLeft; | 1996 valueID = CSSValueLeft; |
2005 break; | 1997 break; |
2006 case TextAlignLastRight: | 1998 case TextAlignLastRight: |
2007 m_value.valueID = CSSValueRight; | 1999 valueID = CSSValueRight; |
2008 break; | 2000 break; |
2009 case TextAlignLastCenter: | 2001 case TextAlignLastCenter: |
2010 m_value.valueID = CSSValueCenter; | 2002 valueID = CSSValueCenter; |
2011 break; | 2003 break; |
2012 case TextAlignLastJustify: | 2004 case TextAlignLastJustify: |
2013 m_value.valueID = CSSValueJustify; | 2005 valueID = CSSValueJustify; |
2014 break; | 2006 break; |
2015 case TextAlignLastAuto: | 2007 case TextAlignLastAuto: |
2016 m_value.valueID = CSSValueAuto; | 2008 valueID = CSSValueAuto; |
2017 break; | 2009 break; |
2018 } | 2010 } |
| 2011 return create(valueID); |
2019 } | 2012 } |
2020 | 2013 |
2021 template<> inline CSSPrimitiveValue::operator TextAlignLast() const | 2014 template<> inline CSSPrimitiveValue::operator TextAlignLast() const |
2022 { | 2015 { |
2023 ASSERT(isValueID()); | 2016 ASSERT(isValueID()); |
2024 switch (value().valueID) { | 2017 switch (value().valueID) { |
2025 case CSSValueAuto: | 2018 case CSSValueAuto: |
2026 return TextAlignLastAuto; | 2019 return TextAlignLastAuto; |
2027 case CSSValueStart: | 2020 case CSSValueStart: |
2028 return TextAlignLastStart; | 2021 return TextAlignLastStart; |
2029 case CSSValueEnd: | 2022 case CSSValueEnd: |
2030 return TextAlignLastEnd; | 2023 return TextAlignLastEnd; |
2031 case CSSValueLeft: | 2024 case CSSValueLeft: |
2032 return TextAlignLastLeft; | 2025 return TextAlignLastLeft; |
2033 case CSSValueRight: | 2026 case CSSValueRight: |
2034 return TextAlignLastRight; | 2027 return TextAlignLastRight; |
2035 case CSSValueCenter: | 2028 case CSSValueCenter: |
2036 return TextAlignLastCenter; | 2029 return TextAlignLastCenter; |
2037 case CSSValueJustify: | 2030 case CSSValueJustify: |
2038 return TextAlignLastJustify; | 2031 return TextAlignLastJustify; |
2039 default: | 2032 default: |
2040 break; | 2033 break; |
2041 } | 2034 } |
2042 | 2035 |
2043 ASSERT_NOT_REACHED(); | 2036 ASSERT_NOT_REACHED(); |
2044 return TextAlignLastAuto; | 2037 return TextAlignLastAuto; |
2045 } | 2038 } |
2046 | 2039 |
2047 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextJustify e) | 2040 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextJustify e) |
2048 : CSSValue(PrimitiveClass) | |
2049 { | 2041 { |
2050 m_primitiveUnitType = CSS_VALUE_ID; | 2042 CSSValueID valueID = CSSValueInvalid; |
2051 switch (e) { | 2043 switch (e) { |
2052 case TextJustifyAuto: | 2044 case TextJustifyAuto: |
2053 m_value.valueID = CSSValueAuto; | 2045 valueID = CSSValueAuto; |
2054 break; | 2046 break; |
2055 case TextJustifyNone: | 2047 case TextJustifyNone: |
2056 m_value.valueID = CSSValueNone; | 2048 valueID = CSSValueNone; |
2057 break; | 2049 break; |
2058 case TextJustifyInterWord: | 2050 case TextJustifyInterWord: |
2059 m_value.valueID = CSSValueInterWord; | 2051 valueID = CSSValueInterWord; |
2060 break; | 2052 break; |
2061 case TextJustifyDistribute: | 2053 case TextJustifyDistribute: |
2062 m_value.valueID = CSSValueDistribute; | 2054 valueID = CSSValueDistribute; |
2063 break; | 2055 break; |
2064 } | 2056 } |
| 2057 return create(valueID); |
2065 } | 2058 } |
2066 | 2059 |
2067 template<> inline CSSPrimitiveValue::operator TextJustify() const | 2060 template<> inline CSSPrimitiveValue::operator TextJustify() const |
2068 { | 2061 { |
2069 switch (value().valueID) { | 2062 switch (value().valueID) { |
2070 case CSSValueAuto: | 2063 case CSSValueAuto: |
2071 return TextJustifyAuto; | 2064 return TextJustifyAuto; |
2072 case CSSValueNone: | 2065 case CSSValueNone: |
2073 return TextJustifyNone; | 2066 return TextJustifyNone; |
2074 case CSSValueInterWord: | 2067 case CSSValueInterWord: |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2120 case CSSValueWavy: | 2113 case CSSValueWavy: |
2121 return TextDecorationStyleWavy; | 2114 return TextDecorationStyleWavy; |
2122 default: | 2115 default: |
2123 break; | 2116 break; |
2124 } | 2117 } |
2125 | 2118 |
2126 ASSERT_NOT_REACHED(); | 2119 ASSERT_NOT_REACHED(); |
2127 return TextDecorationStyleSolid; | 2120 return TextDecorationStyleSolid; |
2128 } | 2121 } |
2129 | 2122 |
2130 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextUnderlinePosition e) | 2123 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextUnderlinePosition e) |
2131 : CSSValue(PrimitiveClass) | |
2132 { | 2124 { |
2133 m_primitiveUnitType = CSS_VALUE_ID; | 2125 CSSValueID valueID = CSSValueInvalid; |
2134 switch (e) { | 2126 switch (e) { |
2135 case TextUnderlinePositionAuto: | 2127 case TextUnderlinePositionAuto: |
2136 m_value.valueID = CSSValueAuto; | 2128 valueID = CSSValueAuto; |
2137 break; | 2129 break; |
2138 case TextUnderlinePositionUnder: | 2130 case TextUnderlinePositionUnder: |
2139 m_value.valueID = CSSValueUnder; | 2131 valueID = CSSValueUnder; |
2140 break; | 2132 break; |
2141 } | 2133 } |
2142 | 2134 |
2143 // FIXME: Implement support for 'under left' and 'under right' values. | 2135 // FIXME: Implement support for 'under left' and 'under right' values. |
| 2136 return create(valueID); |
2144 } | 2137 } |
2145 | 2138 |
2146 template<> inline CSSPrimitiveValue::operator TextUnderlinePosition() const | 2139 template<> inline CSSPrimitiveValue::operator TextUnderlinePosition() const |
2147 { | 2140 { |
2148 ASSERT(isValueID()); | 2141 ASSERT(isValueID()); |
2149 switch (value().valueID) { | 2142 switch (value().valueID) { |
2150 case CSSValueAuto: | 2143 case CSSValueAuto: |
2151 return TextUnderlinePositionAuto; | 2144 return TextUnderlinePositionAuto; |
2152 case CSSValueUnder: | 2145 case CSSValueUnder: |
2153 return TextUnderlinePositionUnder; | 2146 return TextUnderlinePositionUnder; |
2154 default: | 2147 default: |
2155 break; | 2148 break; |
2156 } | 2149 } |
2157 | 2150 |
2158 // FIXME: Implement support for 'under left' and 'under right' values. | 2151 // FIXME: Implement support for 'under left' and 'under right' values. |
2159 | 2152 |
2160 ASSERT_NOT_REACHED(); | 2153 ASSERT_NOT_REACHED(); |
2161 return TextUnderlinePositionAuto; | 2154 return TextUnderlinePositionAuto; |
2162 } | 2155 } |
2163 | 2156 |
2164 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextSecurity e) | 2157 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETextSecurity e) |
2165 : CSSValue(PrimitiveClass) | |
2166 { | 2158 { |
2167 m_primitiveUnitType = CSS_VALUE_ID; | 2159 CSSValueID valueID = CSSValueInvalid; |
2168 switch (e) { | 2160 switch (e) { |
2169 case TSNONE: | 2161 case TSNONE: |
2170 m_value.valueID = CSSValueNone; | 2162 valueID = CSSValueNone; |
2171 break; | 2163 break; |
2172 case TSDISC: | 2164 case TSDISC: |
2173 m_value.valueID = CSSValueDisc; | 2165 valueID = CSSValueDisc; |
2174 break; | 2166 break; |
2175 case TSCIRCLE: | 2167 case TSCIRCLE: |
2176 m_value.valueID = CSSValueCircle; | 2168 valueID = CSSValueCircle; |
2177 break; | 2169 break; |
2178 case TSSQUARE: | 2170 case TSSQUARE: |
2179 m_value.valueID = CSSValueSquare; | 2171 valueID = CSSValueSquare; |
2180 break; | 2172 break; |
2181 } | 2173 } |
| 2174 return create(valueID); |
2182 } | 2175 } |
2183 | 2176 |
2184 template<> inline CSSPrimitiveValue::operator ETextSecurity() const | 2177 template<> inline CSSPrimitiveValue::operator ETextSecurity() const |
2185 { | 2178 { |
2186 ASSERT(isValueID()); | 2179 ASSERT(isValueID()); |
2187 switch (value().valueID) { | 2180 switch (value().valueID) { |
2188 case CSSValueNone: | 2181 case CSSValueNone: |
2189 return TSNONE; | 2182 return TSNONE; |
2190 case CSSValueDisc: | 2183 case CSSValueDisc: |
2191 return TSDISC; | 2184 return TSDISC; |
2192 case CSSValueCircle: | 2185 case CSSValueCircle: |
2193 return TSCIRCLE; | 2186 return TSCIRCLE; |
2194 case CSSValueSquare: | 2187 case CSSValueSquare: |
2195 return TSSQUARE; | 2188 return TSSQUARE; |
2196 default: | 2189 default: |
2197 break; | 2190 break; |
2198 } | 2191 } |
2199 | 2192 |
2200 ASSERT_NOT_REACHED(); | 2193 ASSERT_NOT_REACHED(); |
2201 return TSNONE; | 2194 return TSNONE; |
2202 } | 2195 } |
2203 | 2196 |
2204 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextTransform e) | 2197 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETextTransform e) |
2205 : CSSValue(PrimitiveClass) | |
2206 { | 2198 { |
2207 m_primitiveUnitType = CSS_VALUE_ID; | 2199 CSSValueID valueID = CSSValueInvalid; |
2208 switch (e) { | 2200 switch (e) { |
2209 case CAPITALIZE: | 2201 case CAPITALIZE: |
2210 m_value.valueID = CSSValueCapitalize; | 2202 valueID = CSSValueCapitalize; |
2211 break; | 2203 break; |
2212 case UPPERCASE: | 2204 case UPPERCASE: |
2213 m_value.valueID = CSSValueUppercase; | 2205 valueID = CSSValueUppercase; |
2214 break; | 2206 break; |
2215 case LOWERCASE: | 2207 case LOWERCASE: |
2216 m_value.valueID = CSSValueLowercase; | 2208 valueID = CSSValueLowercase; |
2217 break; | 2209 break; |
2218 case TTNONE: | 2210 case TTNONE: |
2219 m_value.valueID = CSSValueNone; | 2211 valueID = CSSValueNone; |
2220 break; | 2212 break; |
2221 } | 2213 } |
| 2214 return create(valueID); |
2222 } | 2215 } |
2223 | 2216 |
2224 template<> inline CSSPrimitiveValue::operator ETextTransform() const | 2217 template<> inline CSSPrimitiveValue::operator ETextTransform() const |
2225 { | 2218 { |
2226 ASSERT(isValueID()); | 2219 ASSERT(isValueID()); |
2227 switch (value().valueID) { | 2220 switch (value().valueID) { |
2228 case CSSValueCapitalize: | 2221 case CSSValueCapitalize: |
2229 return CAPITALIZE; | 2222 return CAPITALIZE; |
2230 case CSSValueUppercase: | 2223 case CSSValueUppercase: |
2231 return UPPERCASE; | 2224 return UPPERCASE; |
2232 case CSSValueLowercase: | 2225 case CSSValueLowercase: |
2233 return LOWERCASE; | 2226 return LOWERCASE; |
2234 case CSSValueNone: | 2227 case CSSValueNone: |
2235 return TTNONE; | 2228 return TTNONE; |
2236 default: | 2229 default: |
2237 break; | 2230 break; |
2238 } | 2231 } |
2239 | 2232 |
2240 ASSERT_NOT_REACHED(); | 2233 ASSERT_NOT_REACHED(); |
2241 return TTNONE; | 2234 return TTNONE; |
2242 } | 2235 } |
2243 | 2236 |
2244 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUnicodeBidi e) | 2237 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EUnicodeBidi e) |
2245 : CSSValue(PrimitiveClass) | |
2246 { | 2238 { |
2247 m_primitiveUnitType = CSS_VALUE_ID; | 2239 CSSValueID valueID = CSSValueInvalid; |
2248 switch (e) { | 2240 switch (e) { |
2249 case UBNormal: | 2241 case UBNormal: |
2250 m_value.valueID = CSSValueNormal; | 2242 valueID = CSSValueNormal; |
2251 break; | 2243 break; |
2252 case Embed: | 2244 case Embed: |
2253 m_value.valueID = CSSValueEmbed; | 2245 valueID = CSSValueEmbed; |
2254 break; | 2246 break; |
2255 case Override: | 2247 case Override: |
2256 m_value.valueID = CSSValueBidiOverride; | 2248 valueID = CSSValueBidiOverride; |
2257 break; | 2249 break; |
2258 case Isolate: | 2250 case Isolate: |
2259 m_value.valueID = CSSValueWebkitIsolate; | 2251 valueID = CSSValueWebkitIsolate; |
2260 break; | 2252 break; |
2261 case IsolateOverride: | 2253 case IsolateOverride: |
2262 m_value.valueID = CSSValueWebkitIsolateOverride; | 2254 valueID = CSSValueWebkitIsolateOverride; |
2263 break; | 2255 break; |
2264 case Plaintext: | 2256 case Plaintext: |
2265 m_value.valueID = CSSValueWebkitPlaintext; | 2257 valueID = CSSValueWebkitPlaintext; |
2266 break; | 2258 break; |
2267 } | 2259 } |
| 2260 return create(valueID); |
2268 } | 2261 } |
2269 | 2262 |
2270 template<> inline CSSPrimitiveValue::operator EUnicodeBidi() const | 2263 template<> inline CSSPrimitiveValue::operator EUnicodeBidi() const |
2271 { | 2264 { |
2272 ASSERT(isValueID()); | 2265 ASSERT(isValueID()); |
2273 switch (value().valueID) { | 2266 switch (value().valueID) { |
2274 case CSSValueNormal: | 2267 case CSSValueNormal: |
2275 return UBNormal; | 2268 return UBNormal; |
2276 case CSSValueEmbed: | 2269 case CSSValueEmbed: |
2277 return Embed; | 2270 return Embed; |
2278 case CSSValueBidiOverride: | 2271 case CSSValueBidiOverride: |
2279 return Override; | 2272 return Override; |
2280 case CSSValueWebkitIsolate: | 2273 case CSSValueWebkitIsolate: |
2281 return Isolate; | 2274 return Isolate; |
2282 case CSSValueWebkitIsolateOverride: | 2275 case CSSValueWebkitIsolateOverride: |
2283 return IsolateOverride; | 2276 return IsolateOverride; |
2284 case CSSValueWebkitPlaintext: | 2277 case CSSValueWebkitPlaintext: |
2285 return Plaintext; | 2278 return Plaintext; |
2286 default: | 2279 default: |
2287 break; | 2280 break; |
2288 } | 2281 } |
2289 | 2282 |
2290 ASSERT_NOT_REACHED(); | 2283 ASSERT_NOT_REACHED(); |
2291 return UBNormal; | 2284 return UBNormal; |
2292 } | 2285 } |
2293 | 2286 |
2294 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserDrag e) | 2287 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EUserDrag e) |
2295 : CSSValue(PrimitiveClass) | |
2296 { | 2288 { |
2297 m_primitiveUnitType = CSS_VALUE_ID; | 2289 CSSValueID valueID = CSSValueInvalid; |
2298 switch (e) { | 2290 switch (e) { |
2299 case DRAG_AUTO: | 2291 case DRAG_AUTO: |
2300 m_value.valueID = CSSValueAuto; | 2292 valueID = CSSValueAuto; |
2301 break; | 2293 break; |
2302 case DRAG_NONE: | 2294 case DRAG_NONE: |
2303 m_value.valueID = CSSValueNone; | 2295 valueID = CSSValueNone; |
2304 break; | 2296 break; |
2305 case DRAG_ELEMENT: | 2297 case DRAG_ELEMENT: |
2306 m_value.valueID = CSSValueElement; | 2298 valueID = CSSValueElement; |
2307 break; | 2299 break; |
2308 default: | 2300 default: |
2309 break; | 2301 break; |
2310 } | 2302 } |
| 2303 return create(valueID); |
2311 } | 2304 } |
2312 | 2305 |
2313 template<> inline CSSPrimitiveValue::operator EUserDrag() const | 2306 template<> inline CSSPrimitiveValue::operator EUserDrag() const |
2314 { | 2307 { |
2315 ASSERT(isValueID()); | 2308 ASSERT(isValueID()); |
2316 switch (value().valueID) { | 2309 switch (value().valueID) { |
2317 case CSSValueAuto: | 2310 case CSSValueAuto: |
2318 return DRAG_AUTO; | 2311 return DRAG_AUTO; |
2319 case CSSValueNone: | 2312 case CSSValueNone: |
2320 return DRAG_NONE; | 2313 return DRAG_NONE; |
2321 case CSSValueElement: | 2314 case CSSValueElement: |
2322 return DRAG_ELEMENT; | 2315 return DRAG_ELEMENT; |
2323 default: | 2316 default: |
2324 break; | 2317 break; |
2325 } | 2318 } |
2326 | 2319 |
2327 ASSERT_NOT_REACHED(); | 2320 ASSERT_NOT_REACHED(); |
2328 return DRAG_AUTO; | 2321 return DRAG_AUTO; |
2329 } | 2322 } |
2330 | 2323 |
2331 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserModify e) | 2324 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EUserModify e) |
2332 : CSSValue(PrimitiveClass) | |
2333 { | 2325 { |
2334 m_primitiveUnitType = CSS_VALUE_ID; | 2326 CSSValueID valueID = CSSValueInvalid; |
2335 switch (e) { | 2327 switch (e) { |
2336 case READ_ONLY: | 2328 case READ_ONLY: |
2337 m_value.valueID = CSSValueReadOnly; | 2329 valueID = CSSValueReadOnly; |
2338 break; | 2330 break; |
2339 case READ_WRITE: | 2331 case READ_WRITE: |
2340 m_value.valueID = CSSValueReadWrite; | 2332 valueID = CSSValueReadWrite; |
2341 break; | 2333 break; |
2342 case READ_WRITE_PLAINTEXT_ONLY: | 2334 case READ_WRITE_PLAINTEXT_ONLY: |
2343 m_value.valueID = CSSValueReadWritePlaintextOnly; | 2335 valueID = CSSValueReadWritePlaintextOnly; |
2344 break; | 2336 break; |
2345 } | 2337 } |
| 2338 return create(valueID); |
2346 } | 2339 } |
2347 | 2340 |
2348 template<> inline CSSPrimitiveValue::operator EUserModify() const | 2341 template<> inline CSSPrimitiveValue::operator EUserModify() const |
2349 { | 2342 { |
2350 ASSERT(isValueID()); | 2343 ASSERT(isValueID()); |
2351 switch (value().valueID) { | 2344 switch (value().valueID) { |
2352 case CSSValueReadOnly: | 2345 case CSSValueReadOnly: |
2353 return READ_ONLY; | 2346 return READ_ONLY; |
2354 case CSSValueReadWrite: | 2347 case CSSValueReadWrite: |
2355 return READ_WRITE; | 2348 return READ_WRITE; |
2356 case CSSValueReadWritePlaintextOnly: | 2349 case CSSValueReadWritePlaintextOnly: |
2357 return READ_WRITE_PLAINTEXT_ONLY; | 2350 return READ_WRITE_PLAINTEXT_ONLY; |
2358 default: | 2351 default: |
2359 break; | 2352 break; |
2360 } | 2353 } |
2361 | 2354 |
2362 ASSERT_NOT_REACHED(); | 2355 ASSERT_NOT_REACHED(); |
2363 return READ_ONLY; | 2356 return READ_ONLY; |
2364 } | 2357 } |
2365 | 2358 |
2366 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserSelect e) | 2359 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EUserSelect e) |
2367 : CSSValue(PrimitiveClass) | |
2368 { | 2360 { |
2369 m_primitiveUnitType = CSS_VALUE_ID; | 2361 CSSValueID valueID = CSSValueInvalid; |
2370 switch (e) { | 2362 switch (e) { |
2371 case SELECT_NONE: | 2363 case SELECT_NONE: |
2372 m_value.valueID = CSSValueNone; | 2364 valueID = CSSValueNone; |
2373 break; | 2365 break; |
2374 case SELECT_TEXT: | 2366 case SELECT_TEXT: |
2375 m_value.valueID = CSSValueText; | 2367 valueID = CSSValueText; |
2376 break; | 2368 break; |
2377 case SELECT_ALL: | 2369 case SELECT_ALL: |
2378 m_value.valueID = CSSValueAll; | 2370 valueID = CSSValueAll; |
2379 break; | 2371 break; |
2380 } | 2372 } |
| 2373 return create(valueID); |
2381 } | 2374 } |
2382 | 2375 |
2383 template<> inline CSSPrimitiveValue::operator EUserSelect() const | 2376 template<> inline CSSPrimitiveValue::operator EUserSelect() const |
2384 { | 2377 { |
2385 ASSERT(isValueID()); | 2378 ASSERT(isValueID()); |
2386 switch (value().valueID) { | 2379 switch (value().valueID) { |
2387 case CSSValueAuto: | 2380 case CSSValueAuto: |
2388 return SELECT_TEXT; | 2381 return SELECT_TEXT; |
2389 case CSSValueNone: | 2382 case CSSValueNone: |
2390 return SELECT_NONE; | 2383 return SELECT_NONE; |
2391 case CSSValueText: | 2384 case CSSValueText: |
2392 return SELECT_TEXT; | 2385 return SELECT_TEXT; |
2393 case CSSValueAll: | 2386 case CSSValueAll: |
2394 return SELECT_ALL; | 2387 return SELECT_ALL; |
2395 default: | 2388 default: |
2396 break; | 2389 break; |
2397 } | 2390 } |
2398 | 2391 |
2399 ASSERT_NOT_REACHED(); | 2392 ASSERT_NOT_REACHED(); |
2400 return SELECT_TEXT; | 2393 return SELECT_TEXT; |
2401 } | 2394 } |
2402 | 2395 |
2403 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EVerticalAlign a) | 2396 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EVerticalAlign a) |
2404 : CSSValue(PrimitiveClass) | |
2405 { | 2397 { |
2406 m_primitiveUnitType = CSS_VALUE_ID; | 2398 CSSValueID valueID = CSSValueInvalid; |
2407 switch (a) { | 2399 switch (a) { |
2408 case TOP: | 2400 case TOP: |
2409 m_value.valueID = CSSValueTop; | 2401 valueID = CSSValueTop; |
2410 break; | 2402 break; |
2411 case BOTTOM: | 2403 case BOTTOM: |
2412 m_value.valueID = CSSValueBottom; | 2404 valueID = CSSValueBottom; |
2413 break; | 2405 break; |
2414 case MIDDLE: | 2406 case MIDDLE: |
2415 m_value.valueID = CSSValueMiddle; | 2407 valueID = CSSValueMiddle; |
2416 break; | 2408 break; |
2417 case BASELINE: | 2409 case BASELINE: |
2418 m_value.valueID = CSSValueBaseline; | 2410 valueID = CSSValueBaseline; |
2419 break; | 2411 break; |
2420 case TEXT_BOTTOM: | 2412 case TEXT_BOTTOM: |
2421 m_value.valueID = CSSValueTextBottom; | 2413 valueID = CSSValueTextBottom; |
2422 break; | 2414 break; |
2423 case TEXT_TOP: | 2415 case TEXT_TOP: |
2424 m_value.valueID = CSSValueTextTop; | 2416 valueID = CSSValueTextTop; |
2425 break; | 2417 break; |
2426 case SUB: | 2418 case SUB: |
2427 m_value.valueID = CSSValueSub; | 2419 valueID = CSSValueSub; |
2428 break; | 2420 break; |
2429 case SUPER: | 2421 case SUPER: |
2430 m_value.valueID = CSSValueSuper; | 2422 valueID = CSSValueSuper; |
2431 break; | 2423 break; |
2432 case BASELINE_MIDDLE: | 2424 case BASELINE_MIDDLE: |
2433 m_value.valueID = CSSValueWebkitBaselineMiddle; | 2425 valueID = CSSValueWebkitBaselineMiddle; |
2434 break; | 2426 break; |
2435 case LENGTH: | 2427 case LENGTH: |
2436 m_value.valueID = CSSValueInvalid; | 2428 valueID = CSSValueInvalid; |
2437 } | 2429 } |
| 2430 return create(valueID); |
2438 } | 2431 } |
2439 | 2432 |
2440 template<> inline CSSPrimitiveValue::operator EVerticalAlign() const | 2433 template<> inline CSSPrimitiveValue::operator EVerticalAlign() const |
2441 { | 2434 { |
2442 ASSERT(isValueID()); | 2435 ASSERT(isValueID()); |
2443 switch (value().valueID) { | 2436 switch (value().valueID) { |
2444 case CSSValueTop: | 2437 case CSSValueTop: |
2445 return TOP; | 2438 return TOP; |
2446 case CSSValueBottom: | 2439 case CSSValueBottom: |
2447 return BOTTOM; | 2440 return BOTTOM; |
(...skipping 12 matching lines...) Expand all Loading... |
2460 case CSSValueWebkitBaselineMiddle: | 2453 case CSSValueWebkitBaselineMiddle: |
2461 return BASELINE_MIDDLE; | 2454 return BASELINE_MIDDLE; |
2462 default: | 2455 default: |
2463 break; | 2456 break; |
2464 } | 2457 } |
2465 | 2458 |
2466 ASSERT_NOT_REACHED(); | 2459 ASSERT_NOT_REACHED(); |
2467 return TOP; | 2460 return TOP; |
2468 } | 2461 } |
2469 | 2462 |
2470 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EVisibility e) | 2463 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EVisibility e) |
2471 : CSSValue(PrimitiveClass) | |
2472 { | 2464 { |
2473 m_primitiveUnitType = CSS_VALUE_ID; | 2465 CSSValueID valueID = CSSValueInvalid; |
2474 switch (e) { | 2466 switch (e) { |
2475 case VISIBLE: | 2467 case VISIBLE: |
2476 m_value.valueID = CSSValueVisible; | 2468 valueID = CSSValueVisible; |
2477 break; | 2469 break; |
2478 case HIDDEN: | 2470 case HIDDEN: |
2479 m_value.valueID = CSSValueHidden; | 2471 valueID = CSSValueHidden; |
2480 break; | 2472 break; |
2481 case COLLAPSE: | 2473 case COLLAPSE: |
2482 m_value.valueID = CSSValueCollapse; | 2474 valueID = CSSValueCollapse; |
2483 break; | 2475 break; |
2484 } | 2476 } |
| 2477 return create(valueID); |
2485 } | 2478 } |
2486 | 2479 |
2487 template<> inline CSSPrimitiveValue::operator EVisibility() const | 2480 template<> inline CSSPrimitiveValue::operator EVisibility() const |
2488 { | 2481 { |
2489 ASSERT(isValueID()); | 2482 ASSERT(isValueID()); |
2490 switch (value().valueID) { | 2483 switch (value().valueID) { |
2491 case CSSValueHidden: | 2484 case CSSValueHidden: |
2492 return HIDDEN; | 2485 return HIDDEN; |
2493 case CSSValueVisible: | 2486 case CSSValueVisible: |
2494 return VISIBLE; | 2487 return VISIBLE; |
2495 case CSSValueCollapse: | 2488 case CSSValueCollapse: |
2496 return COLLAPSE; | 2489 return COLLAPSE; |
2497 default: | 2490 default: |
2498 break; | 2491 break; |
2499 } | 2492 } |
2500 | 2493 |
2501 ASSERT_NOT_REACHED(); | 2494 ASSERT_NOT_REACHED(); |
2502 return VISIBLE; | 2495 return VISIBLE; |
2503 } | 2496 } |
2504 | 2497 |
2505 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWhiteSpace e) | 2498 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EWhiteSpace e) |
2506 : CSSValue(PrimitiveClass) | |
2507 { | 2499 { |
2508 m_primitiveUnitType = CSS_VALUE_ID; | 2500 CSSValueID valueID = CSSValueInvalid; |
2509 switch (e) { | 2501 switch (e) { |
2510 case NORMAL: | 2502 case NORMAL: |
2511 m_value.valueID = CSSValueNormal; | 2503 valueID = CSSValueNormal; |
2512 break; | 2504 break; |
2513 case PRE: | 2505 case PRE: |
2514 m_value.valueID = CSSValuePre; | 2506 valueID = CSSValuePre; |
2515 break; | 2507 break; |
2516 case PRE_WRAP: | 2508 case PRE_WRAP: |
2517 m_value.valueID = CSSValuePreWrap; | 2509 valueID = CSSValuePreWrap; |
2518 break; | 2510 break; |
2519 case PRE_LINE: | 2511 case PRE_LINE: |
2520 m_value.valueID = CSSValuePreLine; | 2512 valueID = CSSValuePreLine; |
2521 break; | 2513 break; |
2522 case NOWRAP: | 2514 case NOWRAP: |
2523 m_value.valueID = CSSValueNowrap; | 2515 valueID = CSSValueNowrap; |
2524 break; | 2516 break; |
2525 case KHTML_NOWRAP: | 2517 case KHTML_NOWRAP: |
2526 m_value.valueID = CSSValueWebkitNowrap; | 2518 valueID = CSSValueWebkitNowrap; |
2527 break; | 2519 break; |
2528 } | 2520 } |
| 2521 return create(valueID); |
2529 } | 2522 } |
2530 | 2523 |
2531 template<> inline CSSPrimitiveValue::operator EWhiteSpace() const | 2524 template<> inline CSSPrimitiveValue::operator EWhiteSpace() const |
2532 { | 2525 { |
2533 ASSERT(isValueID()); | 2526 ASSERT(isValueID()); |
2534 switch (value().valueID) { | 2527 switch (value().valueID) { |
2535 case CSSValueWebkitNowrap: | 2528 case CSSValueWebkitNowrap: |
2536 return KHTML_NOWRAP; | 2529 return KHTML_NOWRAP; |
2537 case CSSValueNowrap: | 2530 case CSSValueNowrap: |
2538 return NOWRAP; | 2531 return NOWRAP; |
2539 case CSSValuePre: | 2532 case CSSValuePre: |
2540 return PRE; | 2533 return PRE; |
2541 case CSSValuePreWrap: | 2534 case CSSValuePreWrap: |
2542 return PRE_WRAP; | 2535 return PRE_WRAP; |
2543 case CSSValuePreLine: | 2536 case CSSValuePreLine: |
2544 return PRE_LINE; | 2537 return PRE_LINE; |
2545 case CSSValueNormal: | 2538 case CSSValueNormal: |
2546 return NORMAL; | 2539 return NORMAL; |
2547 default: | 2540 default: |
2548 break; | 2541 break; |
2549 } | 2542 } |
2550 | 2543 |
2551 ASSERT_NOT_REACHED(); | 2544 ASSERT_NOT_REACHED(); |
2552 return NORMAL; | 2545 return NORMAL; |
2553 } | 2546 } |
2554 | 2547 |
2555 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWordBreak e) | 2548 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EWordBreak e) |
2556 : CSSValue(PrimitiveClass) | |
2557 { | 2549 { |
2558 m_primitiveUnitType = CSS_VALUE_ID; | 2550 CSSValueID valueID = CSSValueInvalid; |
2559 switch (e) { | 2551 switch (e) { |
2560 case NormalWordBreak: | 2552 case NormalWordBreak: |
2561 m_value.valueID = CSSValueNormal; | 2553 valueID = CSSValueNormal; |
2562 break; | 2554 break; |
2563 case BreakAllWordBreak: | 2555 case BreakAllWordBreak: |
2564 m_value.valueID = CSSValueBreakAll; | 2556 valueID = CSSValueBreakAll; |
2565 break; | 2557 break; |
2566 case BreakWordBreak: | 2558 case BreakWordBreak: |
2567 m_value.valueID = CSSValueBreakWord; | 2559 valueID = CSSValueBreakWord; |
2568 break; | 2560 break; |
2569 case KeepAllWordBreak: | 2561 case KeepAllWordBreak: |
2570 m_value.valueID = CSSValueKeepAll; | 2562 valueID = CSSValueKeepAll; |
2571 break; | 2563 break; |
2572 } | 2564 } |
| 2565 return create(valueID); |
2573 } | 2566 } |
2574 | 2567 |
2575 template<> inline CSSPrimitiveValue::operator EWordBreak() const | 2568 template<> inline CSSPrimitiveValue::operator EWordBreak() const |
2576 { | 2569 { |
2577 ASSERT(isValueID()); | 2570 ASSERT(isValueID()); |
2578 switch (value().valueID) { | 2571 switch (value().valueID) { |
2579 case CSSValueBreakAll: | 2572 case CSSValueBreakAll: |
2580 return BreakAllWordBreak; | 2573 return BreakAllWordBreak; |
2581 case CSSValueBreakWord: | 2574 case CSSValueBreakWord: |
2582 return BreakWordBreak; | 2575 return BreakWordBreak; |
2583 case CSSValueNormal: | 2576 case CSSValueNormal: |
2584 return NormalWordBreak; | 2577 return NormalWordBreak; |
2585 case CSSValueKeepAll: | 2578 case CSSValueKeepAll: |
2586 return KeepAllWordBreak; | 2579 return KeepAllWordBreak; |
2587 default: | 2580 default: |
2588 break; | 2581 break; |
2589 } | 2582 } |
2590 | 2583 |
2591 ASSERT_NOT_REACHED(); | 2584 ASSERT_NOT_REACHED(); |
2592 return NormalWordBreak; | 2585 return NormalWordBreak; |
2593 } | 2586 } |
2594 | 2587 |
2595 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EOverflowWrap e) | 2588 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EOverflowWrap e) |
2596 : CSSValue(PrimitiveClass) | |
2597 { | 2589 { |
2598 m_primitiveUnitType = CSS_VALUE_ID; | 2590 CSSValueID valueID = CSSValueInvalid; |
2599 switch (e) { | 2591 switch (e) { |
2600 case NormalOverflowWrap: | 2592 case NormalOverflowWrap: |
2601 m_value.valueID = CSSValueNormal; | 2593 valueID = CSSValueNormal; |
2602 break; | 2594 break; |
2603 case BreakOverflowWrap: | 2595 case BreakOverflowWrap: |
2604 m_value.valueID = CSSValueBreakWord; | 2596 valueID = CSSValueBreakWord; |
2605 break; | 2597 break; |
2606 } | 2598 } |
| 2599 return create(valueID); |
2607 } | 2600 } |
2608 | 2601 |
2609 template<> inline CSSPrimitiveValue::operator EOverflowWrap() const | 2602 template<> inline CSSPrimitiveValue::operator EOverflowWrap() const |
2610 { | 2603 { |
2611 ASSERT(isValueID()); | 2604 ASSERT(isValueID()); |
2612 switch (value().valueID) { | 2605 switch (value().valueID) { |
2613 case CSSValueBreakWord: | 2606 case CSSValueBreakWord: |
2614 return BreakOverflowWrap; | 2607 return BreakOverflowWrap; |
2615 case CSSValueNormal: | 2608 case CSSValueNormal: |
2616 return NormalOverflowWrap; | 2609 return NormalOverflowWrap; |
2617 default: | 2610 default: |
2618 break; | 2611 break; |
2619 } | 2612 } |
2620 | 2613 |
2621 ASSERT_NOT_REACHED(); | 2614 ASSERT_NOT_REACHED(); |
2622 return NormalOverflowWrap; | 2615 return NormalOverflowWrap; |
2623 } | 2616 } |
2624 | 2617 |
2625 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextDirection e) | 2618 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextDirection e) |
2626 : CSSValue(PrimitiveClass) | |
2627 { | 2619 { |
2628 m_primitiveUnitType = CSS_VALUE_ID; | 2620 CSSValueID valueID = CSSValueInvalid; |
2629 switch (e) { | 2621 switch (e) { |
2630 case LTR: | 2622 case LTR: |
2631 m_value.valueID = CSSValueLtr; | 2623 valueID = CSSValueLtr; |
2632 break; | 2624 break; |
2633 case RTL: | 2625 case RTL: |
2634 m_value.valueID = CSSValueRtl; | 2626 valueID = CSSValueRtl; |
2635 break; | 2627 break; |
2636 } | 2628 } |
| 2629 return create(valueID); |
2637 } | 2630 } |
2638 | 2631 |
2639 template<> inline CSSPrimitiveValue::operator TextDirection() const | 2632 template<> inline CSSPrimitiveValue::operator TextDirection() const |
2640 { | 2633 { |
2641 ASSERT(isValueID()); | 2634 ASSERT(isValueID()); |
2642 switch (value().valueID) { | 2635 switch (value().valueID) { |
2643 case CSSValueLtr: | 2636 case CSSValueLtr: |
2644 return LTR; | 2637 return LTR; |
2645 case CSSValueRtl: | 2638 case CSSValueRtl: |
2646 return RTL; | 2639 return RTL; |
2647 default: | 2640 default: |
2648 break; | 2641 break; |
2649 } | 2642 } |
2650 | 2643 |
2651 ASSERT_NOT_REACHED(); | 2644 ASSERT_NOT_REACHED(); |
2652 return LTR; | 2645 return LTR; |
2653 } | 2646 } |
2654 | 2647 |
2655 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(WritingMode e) | 2648 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(WritingMode e) |
2656 : CSSValue(PrimitiveClass) | |
2657 { | 2649 { |
2658 m_primitiveUnitType = CSS_VALUE_ID; | 2650 CSSValueID valueID = CSSValueInvalid; |
2659 switch (e) { | 2651 switch (e) { |
2660 case TopToBottomWritingMode: | 2652 case TopToBottomWritingMode: |
2661 m_value.valueID = CSSValueHorizontalTb; | 2653 valueID = CSSValueHorizontalTb; |
2662 break; | 2654 break; |
2663 case RightToLeftWritingMode: | 2655 case RightToLeftWritingMode: |
2664 m_value.valueID = CSSValueVerticalRl; | 2656 valueID = CSSValueVerticalRl; |
2665 break; | 2657 break; |
2666 case LeftToRightWritingMode: | 2658 case LeftToRightWritingMode: |
2667 m_value.valueID = CSSValueVerticalLr; | 2659 valueID = CSSValueVerticalLr; |
2668 break; | 2660 break; |
2669 case BottomToTopWritingMode: | 2661 case BottomToTopWritingMode: |
2670 m_value.valueID = CSSValueHorizontalBt; | 2662 valueID = CSSValueHorizontalBt; |
2671 break; | 2663 break; |
2672 } | 2664 } |
| 2665 return create(valueID); |
2673 } | 2666 } |
2674 | 2667 |
2675 template<> inline CSSPrimitiveValue::operator WritingMode() const | 2668 template<> inline CSSPrimitiveValue::operator WritingMode() const |
2676 { | 2669 { |
2677 ASSERT(isValueID()); | 2670 ASSERT(isValueID()); |
2678 switch (value().valueID) { | 2671 switch (value().valueID) { |
2679 case CSSValueHorizontalTb: | 2672 case CSSValueHorizontalTb: |
2680 return TopToBottomWritingMode; | 2673 return TopToBottomWritingMode; |
2681 case CSSValueVerticalRl: | 2674 case CSSValueVerticalRl: |
2682 return RightToLeftWritingMode; | 2675 return RightToLeftWritingMode; |
2683 case CSSValueVerticalLr: | 2676 case CSSValueVerticalLr: |
2684 return LeftToRightWritingMode; | 2677 return LeftToRightWritingMode; |
2685 case CSSValueHorizontalBt: | 2678 case CSSValueHorizontalBt: |
2686 return BottomToTopWritingMode; | 2679 return BottomToTopWritingMode; |
2687 default: | 2680 default: |
2688 break; | 2681 break; |
2689 } | 2682 } |
2690 | 2683 |
2691 ASSERT_NOT_REACHED(); | 2684 ASSERT_NOT_REACHED(); |
2692 return TopToBottomWritingMode; | 2685 return TopToBottomWritingMode; |
2693 } | 2686 } |
2694 | 2687 |
2695 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextCombine e) | 2688 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextCombine e) |
2696 : CSSValue(PrimitiveClass) | |
2697 { | 2689 { |
2698 m_primitiveUnitType = CSS_VALUE_ID; | 2690 CSSValueID valueID = CSSValueInvalid; |
2699 switch (e) { | 2691 switch (e) { |
2700 case TextCombineNone: | 2692 case TextCombineNone: |
2701 m_value.valueID = CSSValueNone; | 2693 valueID = CSSValueNone; |
2702 break; | 2694 break; |
2703 case TextCombineHorizontal: | 2695 case TextCombineHorizontal: |
2704 m_value.valueID = CSSValueHorizontal; | 2696 valueID = CSSValueHorizontal; |
2705 break; | 2697 break; |
2706 } | 2698 } |
| 2699 return create(valueID); |
2707 } | 2700 } |
2708 | 2701 |
2709 template<> inline CSSPrimitiveValue::operator TextCombine() const | 2702 template<> inline CSSPrimitiveValue::operator TextCombine() const |
2710 { | 2703 { |
2711 ASSERT(isValueID()); | 2704 ASSERT(isValueID()); |
2712 switch (value().valueID) { | 2705 switch (value().valueID) { |
2713 case CSSValueNone: | 2706 case CSSValueNone: |
2714 return TextCombineNone; | 2707 return TextCombineNone; |
2715 case CSSValueHorizontal: | 2708 case CSSValueHorizontal: |
2716 return TextCombineHorizontal; | 2709 return TextCombineHorizontal; |
2717 default: | 2710 default: |
2718 break; | 2711 break; |
2719 } | 2712 } |
2720 | 2713 |
2721 ASSERT_NOT_REACHED(); | 2714 ASSERT_NOT_REACHED(); |
2722 return TextCombineNone; | 2715 return TextCombineNone; |
2723 } | 2716 } |
2724 | 2717 |
2725 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(RubyPosition position) | 2718 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(RubyPosition position) |
2726 : CSSValue(PrimitiveClass) | |
2727 { | 2719 { |
2728 m_primitiveUnitType = CSS_VALUE_ID; | 2720 CSSValueID valueID = CSSValueInvalid; |
2729 switch (position) { | 2721 switch (position) { |
2730 case RubyPositionBefore: | 2722 case RubyPositionBefore: |
2731 m_value.valueID = CSSValueBefore; | 2723 valueID = CSSValueBefore; |
2732 break; | 2724 break; |
2733 case RubyPositionAfter: | 2725 case RubyPositionAfter: |
2734 m_value.valueID = CSSValueAfter; | 2726 valueID = CSSValueAfter; |
2735 break; | 2727 break; |
2736 } | 2728 } |
| 2729 return create(valueID); |
2737 } | 2730 } |
2738 | 2731 |
2739 template<> inline CSSPrimitiveValue::operator RubyPosition() const | 2732 template<> inline CSSPrimitiveValue::operator RubyPosition() const |
2740 { | 2733 { |
2741 ASSERT(isValueID()); | 2734 ASSERT(isValueID()); |
2742 switch (value().valueID) { | 2735 switch (value().valueID) { |
2743 case CSSValueBefore: | 2736 case CSSValueBefore: |
2744 return RubyPositionBefore; | 2737 return RubyPositionBefore; |
2745 case CSSValueAfter: | 2738 case CSSValueAfter: |
2746 return RubyPositionAfter; | 2739 return RubyPositionAfter; |
2747 default: | 2740 default: |
2748 break; | 2741 break; |
2749 } | 2742 } |
2750 | 2743 |
2751 ASSERT_NOT_REACHED(); | 2744 ASSERT_NOT_REACHED(); |
2752 return RubyPositionBefore; | 2745 return RubyPositionBefore; |
2753 } | 2746 } |
2754 | 2747 |
2755 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisPosition posi
tion) | 2748 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextEmphasisPosition position) |
2756 : CSSValue(PrimitiveClass) | |
2757 { | 2749 { |
2758 m_primitiveUnitType = CSS_VALUE_ID; | 2750 CSSValueID valueID = CSSValueInvalid; |
2759 switch (position) { | 2751 switch (position) { |
2760 case TextEmphasisPositionOver: | 2752 case TextEmphasisPositionOver: |
2761 m_value.valueID = CSSValueOver; | 2753 valueID = CSSValueOver; |
2762 break; | 2754 break; |
2763 case TextEmphasisPositionUnder: | 2755 case TextEmphasisPositionUnder: |
2764 m_value.valueID = CSSValueUnder; | 2756 valueID = CSSValueUnder; |
2765 break; | 2757 break; |
2766 } | 2758 } |
| 2759 return create(valueID); |
2767 } | 2760 } |
2768 | 2761 |
2769 template<> inline CSSPrimitiveValue::operator TextEmphasisPosition() const | 2762 template<> inline CSSPrimitiveValue::operator TextEmphasisPosition() const |
2770 { | 2763 { |
2771 ASSERT(isValueID()); | 2764 ASSERT(isValueID()); |
2772 switch (value().valueID) { | 2765 switch (value().valueID) { |
2773 case CSSValueOver: | 2766 case CSSValueOver: |
2774 return TextEmphasisPositionOver; | 2767 return TextEmphasisPositionOver; |
2775 case CSSValueUnder: | 2768 case CSSValueUnder: |
2776 return TextEmphasisPositionUnder; | 2769 return TextEmphasisPositionUnder; |
2777 default: | 2770 default: |
2778 break; | 2771 break; |
2779 } | 2772 } |
2780 | 2773 |
2781 ASSERT_NOT_REACHED(); | 2774 ASSERT_NOT_REACHED(); |
2782 return TextEmphasisPositionOver; | 2775 return TextEmphasisPositionOver; |
2783 } | 2776 } |
2784 | 2777 |
2785 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextOverflow overflow) | 2778 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextOverflow overflow) |
2786 : CSSValue(PrimitiveClass) | |
2787 { | 2779 { |
2788 m_primitiveUnitType = CSS_VALUE_ID; | 2780 CSSValueID valueID = CSSValueInvalid; |
2789 switch (overflow) { | 2781 switch (overflow) { |
2790 case TextOverflowClip: | 2782 case TextOverflowClip: |
2791 m_value.valueID = CSSValueClip; | 2783 valueID = CSSValueClip; |
2792 break; | 2784 break; |
2793 case TextOverflowEllipsis: | 2785 case TextOverflowEllipsis: |
2794 m_value.valueID = CSSValueEllipsis; | 2786 valueID = CSSValueEllipsis; |
2795 break; | 2787 break; |
2796 } | 2788 } |
| 2789 return create(valueID); |
2797 } | 2790 } |
2798 | 2791 |
2799 template<> inline CSSPrimitiveValue::operator TextOverflow() const | 2792 template<> inline CSSPrimitiveValue::operator TextOverflow() const |
2800 { | 2793 { |
2801 ASSERT(isValueID()); | 2794 ASSERT(isValueID()); |
2802 switch (value().valueID) { | 2795 switch (value().valueID) { |
2803 case CSSValueClip: | 2796 case CSSValueClip: |
2804 return TextOverflowClip; | 2797 return TextOverflowClip; |
2805 case CSSValueEllipsis: | 2798 case CSSValueEllipsis: |
2806 return TextOverflowEllipsis; | 2799 return TextOverflowEllipsis; |
2807 default: | 2800 default: |
2808 break; | 2801 break; |
2809 } | 2802 } |
2810 | 2803 |
2811 ASSERT_NOT_REACHED(); | 2804 ASSERT_NOT_REACHED(); |
2812 return TextOverflowClip; | 2805 return TextOverflowClip; |
2813 } | 2806 } |
2814 | 2807 |
2815 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisFill fill) | 2808 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextEmphasisFill fill) |
2816 : CSSValue(PrimitiveClass) | |
2817 { | 2809 { |
2818 m_primitiveUnitType = CSS_VALUE_ID; | 2810 CSSValueID valueID = CSSValueInvalid; |
2819 switch (fill) { | 2811 switch (fill) { |
2820 case TextEmphasisFillFilled: | 2812 case TextEmphasisFillFilled: |
2821 m_value.valueID = CSSValueFilled; | 2813 valueID = CSSValueFilled; |
2822 break; | 2814 break; |
2823 case TextEmphasisFillOpen: | 2815 case TextEmphasisFillOpen: |
2824 m_value.valueID = CSSValueOpen; | 2816 valueID = CSSValueOpen; |
2825 break; | 2817 break; |
2826 } | 2818 } |
| 2819 return create(valueID); |
2827 } | 2820 } |
2828 | 2821 |
2829 template<> inline CSSPrimitiveValue::operator TextEmphasisFill() const | 2822 template<> inline CSSPrimitiveValue::operator TextEmphasisFill() const |
2830 { | 2823 { |
2831 ASSERT(isValueID()); | 2824 ASSERT(isValueID()); |
2832 switch (value().valueID) { | 2825 switch (value().valueID) { |
2833 case CSSValueFilled: | 2826 case CSSValueFilled: |
2834 return TextEmphasisFillFilled; | 2827 return TextEmphasisFillFilled; |
2835 case CSSValueOpen: | 2828 case CSSValueOpen: |
2836 return TextEmphasisFillOpen; | 2829 return TextEmphasisFillOpen; |
2837 default: | 2830 default: |
2838 break; | 2831 break; |
2839 } | 2832 } |
2840 | 2833 |
2841 ASSERT_NOT_REACHED(); | 2834 ASSERT_NOT_REACHED(); |
2842 return TextEmphasisFillFilled; | 2835 return TextEmphasisFillFilled; |
2843 } | 2836 } |
2844 | 2837 |
2845 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisMark mark) | 2838 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextEmphasisMark mark) |
2846 : CSSValue(PrimitiveClass) | |
2847 { | 2839 { |
2848 m_primitiveUnitType = CSS_VALUE_ID; | 2840 CSSValueID valueID = CSSValueInvalid; |
2849 switch (mark) { | 2841 switch (mark) { |
2850 case TextEmphasisMarkDot: | 2842 case TextEmphasisMarkDot: |
2851 m_value.valueID = CSSValueDot; | 2843 valueID = CSSValueDot; |
2852 break; | 2844 break; |
2853 case TextEmphasisMarkCircle: | 2845 case TextEmphasisMarkCircle: |
2854 m_value.valueID = CSSValueCircle; | 2846 valueID = CSSValueCircle; |
2855 break; | 2847 break; |
2856 case TextEmphasisMarkDoubleCircle: | 2848 case TextEmphasisMarkDoubleCircle: |
2857 m_value.valueID = CSSValueDoubleCircle; | 2849 valueID = CSSValueDoubleCircle; |
2858 break; | 2850 break; |
2859 case TextEmphasisMarkTriangle: | 2851 case TextEmphasisMarkTriangle: |
2860 m_value.valueID = CSSValueTriangle; | 2852 valueID = CSSValueTriangle; |
2861 break; | 2853 break; |
2862 case TextEmphasisMarkSesame: | 2854 case TextEmphasisMarkSesame: |
2863 m_value.valueID = CSSValueSesame; | 2855 valueID = CSSValueSesame; |
2864 break; | 2856 break; |
2865 case TextEmphasisMarkNone: | 2857 case TextEmphasisMarkNone: |
2866 case TextEmphasisMarkAuto: | 2858 case TextEmphasisMarkAuto: |
2867 case TextEmphasisMarkCustom: | 2859 case TextEmphasisMarkCustom: |
2868 ASSERT_NOT_REACHED(); | 2860 ASSERT_NOT_REACHED(); |
2869 m_value.valueID = CSSValueNone; | 2861 valueID = CSSValueNone; |
2870 break; | 2862 break; |
2871 } | 2863 } |
| 2864 return create(valueID); |
2872 } | 2865 } |
2873 | 2866 |
2874 template<> inline CSSPrimitiveValue::operator TextEmphasisMark() const | 2867 template<> inline CSSPrimitiveValue::operator TextEmphasisMark() const |
2875 { | 2868 { |
2876 ASSERT(isValueID()); | 2869 ASSERT(isValueID()); |
2877 switch (value().valueID) { | 2870 switch (value().valueID) { |
2878 case CSSValueNone: | 2871 case CSSValueNone: |
2879 return TextEmphasisMarkNone; | 2872 return TextEmphasisMarkNone; |
2880 case CSSValueDot: | 2873 case CSSValueDot: |
2881 return TextEmphasisMarkDot; | 2874 return TextEmphasisMarkDot; |
2882 case CSSValueCircle: | 2875 case CSSValueCircle: |
2883 return TextEmphasisMarkCircle; | 2876 return TextEmphasisMarkCircle; |
2884 case CSSValueDoubleCircle: | 2877 case CSSValueDoubleCircle: |
2885 return TextEmphasisMarkDoubleCircle; | 2878 return TextEmphasisMarkDoubleCircle; |
2886 case CSSValueTriangle: | 2879 case CSSValueTriangle: |
2887 return TextEmphasisMarkTriangle; | 2880 return TextEmphasisMarkTriangle; |
2888 case CSSValueSesame: | 2881 case CSSValueSesame: |
2889 return TextEmphasisMarkSesame; | 2882 return TextEmphasisMarkSesame; |
2890 default: | 2883 default: |
2891 break; | 2884 break; |
2892 } | 2885 } |
2893 | 2886 |
2894 ASSERT_NOT_REACHED(); | 2887 ASSERT_NOT_REACHED(); |
2895 return TextEmphasisMarkNone; | 2888 return TextEmphasisMarkNone; |
2896 } | 2889 } |
2897 | 2890 |
2898 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextOrientation e) | 2891 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextOrientation e) |
2899 : CSSValue(PrimitiveClass) | |
2900 { | 2892 { |
2901 m_primitiveUnitType = CSS_VALUE_ID; | 2893 CSSValueID valueID = CSSValueInvalid; |
2902 switch (e) { | 2894 switch (e) { |
2903 case TextOrientationSideways: | 2895 case TextOrientationSideways: |
2904 m_value.valueID = CSSValueSideways; | 2896 valueID = CSSValueSideways; |
2905 break; | 2897 break; |
2906 case TextOrientationSidewaysRight: | 2898 case TextOrientationSidewaysRight: |
2907 m_value.valueID = CSSValueSidewaysRight; | 2899 valueID = CSSValueSidewaysRight; |
2908 break; | 2900 break; |
2909 case TextOrientationVerticalRight: | 2901 case TextOrientationVerticalRight: |
2910 m_value.valueID = CSSValueVerticalRight; | 2902 valueID = CSSValueVerticalRight; |
2911 break; | 2903 break; |
2912 case TextOrientationUpright: | 2904 case TextOrientationUpright: |
2913 m_value.valueID = CSSValueUpright; | 2905 valueID = CSSValueUpright; |
2914 break; | 2906 break; |
2915 } | 2907 } |
| 2908 return create(valueID); |
2916 } | 2909 } |
2917 | 2910 |
2918 template<> inline CSSPrimitiveValue::operator TextOrientation() const | 2911 template<> inline CSSPrimitiveValue::operator TextOrientation() const |
2919 { | 2912 { |
2920 ASSERT(isValueID()); | 2913 ASSERT(isValueID()); |
2921 switch (value().valueID) { | 2914 switch (value().valueID) { |
2922 case CSSValueSideways: | 2915 case CSSValueSideways: |
2923 return TextOrientationSideways; | 2916 return TextOrientationSideways; |
2924 case CSSValueSidewaysRight: | 2917 case CSSValueSidewaysRight: |
2925 return TextOrientationSidewaysRight; | 2918 return TextOrientationSidewaysRight; |
2926 case CSSValueVerticalRight: | 2919 case CSSValueVerticalRight: |
2927 return TextOrientationVerticalRight; | 2920 return TextOrientationVerticalRight; |
2928 case CSSValueUpright: | 2921 case CSSValueUpright: |
2929 return TextOrientationUpright; | 2922 return TextOrientationUpright; |
2930 default: | 2923 default: |
2931 break; | 2924 break; |
2932 } | 2925 } |
2933 | 2926 |
2934 ASSERT_NOT_REACHED(); | 2927 ASSERT_NOT_REACHED(); |
2935 return TextOrientationVerticalRight; | 2928 return TextOrientationVerticalRight; |
2936 } | 2929 } |
2937 | 2930 |
2938 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPointerEvents e) | 2931 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EPointerEvents e) |
2939 : CSSValue(PrimitiveClass) | |
2940 { | 2932 { |
2941 m_primitiveUnitType = CSS_VALUE_ID; | 2933 CSSValueID valueID = CSSValueInvalid; |
2942 switch (e) { | 2934 switch (e) { |
2943 case PE_NONE: | 2935 case PE_NONE: |
2944 m_value.valueID = CSSValueNone; | 2936 valueID = CSSValueNone; |
2945 break; | 2937 break; |
2946 case PE_STROKE: | 2938 case PE_STROKE: |
2947 m_value.valueID = CSSValueStroke; | 2939 valueID = CSSValueStroke; |
2948 break; | 2940 break; |
2949 case PE_FILL: | 2941 case PE_FILL: |
2950 m_value.valueID = CSSValueFill; | 2942 valueID = CSSValueFill; |
2951 break; | 2943 break; |
2952 case PE_PAINTED: | 2944 case PE_PAINTED: |
2953 m_value.valueID = CSSValuePainted; | 2945 valueID = CSSValuePainted; |
2954 break; | 2946 break; |
2955 case PE_VISIBLE: | 2947 case PE_VISIBLE: |
2956 m_value.valueID = CSSValueVisible; | 2948 valueID = CSSValueVisible; |
2957 break; | 2949 break; |
2958 case PE_VISIBLE_STROKE: | 2950 case PE_VISIBLE_STROKE: |
2959 m_value.valueID = CSSValueVisibleStroke; | 2951 valueID = CSSValueVisibleStroke; |
2960 break; | 2952 break; |
2961 case PE_VISIBLE_FILL: | 2953 case PE_VISIBLE_FILL: |
2962 m_value.valueID = CSSValueVisibleFill; | 2954 valueID = CSSValueVisibleFill; |
2963 break; | 2955 break; |
2964 case PE_VISIBLE_PAINTED: | 2956 case PE_VISIBLE_PAINTED: |
2965 m_value.valueID = CSSValueVisiblePainted; | 2957 valueID = CSSValueVisiblePainted; |
2966 break; | 2958 break; |
2967 case PE_AUTO: | 2959 case PE_AUTO: |
2968 m_value.valueID = CSSValueAuto; | 2960 valueID = CSSValueAuto; |
2969 break; | 2961 break; |
2970 case PE_ALL: | 2962 case PE_ALL: |
2971 m_value.valueID = CSSValueAll; | 2963 valueID = CSSValueAll; |
2972 break; | 2964 break; |
2973 case PE_BOUNDINGBOX: | 2965 case PE_BOUNDINGBOX: |
2974 m_value.valueID = CSSValueBoundingBox; | 2966 valueID = CSSValueBoundingBox; |
2975 break; | 2967 break; |
2976 } | 2968 } |
| 2969 return create(valueID); |
2977 } | 2970 } |
2978 | 2971 |
2979 template<> inline CSSPrimitiveValue::operator EPointerEvents() const | 2972 template<> inline CSSPrimitiveValue::operator EPointerEvents() const |
2980 { | 2973 { |
2981 ASSERT(isValueID()); | 2974 ASSERT(isValueID()); |
2982 switch (value().valueID) { | 2975 switch (value().valueID) { |
2983 case CSSValueAll: | 2976 case CSSValueAll: |
2984 return PE_ALL; | 2977 return PE_ALL; |
2985 case CSSValueAuto: | 2978 case CSSValueAuto: |
2986 return PE_AUTO; | 2979 return PE_AUTO; |
(...skipping 16 matching lines...) Expand all Loading... |
3003 case CSSValueBoundingBox: | 2996 case CSSValueBoundingBox: |
3004 return PE_BOUNDINGBOX; | 2997 return PE_BOUNDINGBOX; |
3005 default: | 2998 default: |
3006 break; | 2999 break; |
3007 } | 3000 } |
3008 | 3001 |
3009 ASSERT_NOT_REACHED(); | 3002 ASSERT_NOT_REACHED(); |
3010 return PE_ALL; | 3003 return PE_ALL; |
3011 } | 3004 } |
3012 | 3005 |
3013 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontDescription::Kerning
kerning) | 3006 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontDescription::Kerning kerning) |
3014 : CSSValue(PrimitiveClass) | |
3015 { | 3007 { |
3016 m_primitiveUnitType = CSS_VALUE_ID; | 3008 CSSValueID valueID = CSSValueInvalid; |
3017 switch (kerning) { | 3009 switch (kerning) { |
3018 case FontDescription::AutoKerning: | 3010 case FontDescription::AutoKerning: |
3019 m_value.valueID = CSSValueAuto; | 3011 valueID = CSSValueAuto; |
3020 return; | 3012 break; |
3021 case FontDescription::NormalKerning: | 3013 case FontDescription::NormalKerning: |
3022 m_value.valueID = CSSValueNormal; | 3014 valueID = CSSValueNormal; |
3023 return; | 3015 break; |
3024 case FontDescription::NoneKerning: | 3016 case FontDescription::NoneKerning: |
3025 m_value.valueID = CSSValueNone; | 3017 valueID = CSSValueNone; |
3026 return; | 3018 break; |
| 3019 default: |
| 3020 valueID = CSSValueAuto; |
3027 } | 3021 } |
3028 | 3022 return create(valueID); |
3029 ASSERT_NOT_REACHED(); | |
3030 m_value.valueID = CSSValueAuto; | |
3031 } | 3023 } |
3032 | 3024 |
3033 template<> inline CSSPrimitiveValue::operator FontDescription::Kerning() const | 3025 template<> inline CSSPrimitiveValue::operator FontDescription::Kerning() const |
3034 { | 3026 { |
3035 ASSERT(isValueID()); | 3027 ASSERT(isValueID()); |
3036 switch (value().valueID) { | 3028 switch (value().valueID) { |
3037 case CSSValueAuto: | 3029 case CSSValueAuto: |
3038 return FontDescription::AutoKerning; | 3030 return FontDescription::AutoKerning; |
3039 case CSSValueNormal: | 3031 case CSSValueNormal: |
3040 return FontDescription::NormalKerning; | 3032 return FontDescription::NormalKerning; |
3041 case CSSValueNone: | 3033 case CSSValueNone: |
3042 return FontDescription::NoneKerning; | 3034 return FontDescription::NoneKerning; |
3043 default: | 3035 default: |
3044 break; | 3036 break; |
3045 } | 3037 } |
3046 | 3038 |
3047 ASSERT_NOT_REACHED(); | 3039 ASSERT_NOT_REACHED(); |
3048 return FontDescription::AutoKerning; | 3040 return FontDescription::AutoKerning; |
3049 } | 3041 } |
3050 | 3042 |
3051 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ObjectFit fit) | 3043 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ObjectFit fit) |
3052 : CSSValue(PrimitiveClass) | |
3053 { | 3044 { |
3054 m_primitiveUnitType = CSS_VALUE_ID; | 3045 CSSValueID valueID = CSSValueInvalid; |
3055 switch (fit) { | 3046 switch (fit) { |
3056 case ObjectFitFill: | 3047 case ObjectFitFill: |
3057 m_value.valueID = CSSValueFill; | 3048 valueID = CSSValueFill; |
3058 break; | 3049 break; |
3059 case ObjectFitContain: | 3050 case ObjectFitContain: |
3060 m_value.valueID = CSSValueContain; | 3051 valueID = CSSValueContain; |
3061 break; | 3052 break; |
3062 case ObjectFitCover: | 3053 case ObjectFitCover: |
3063 m_value.valueID = CSSValueCover; | 3054 valueID = CSSValueCover; |
3064 break; | 3055 break; |
3065 case ObjectFitNone: | 3056 case ObjectFitNone: |
3066 m_value.valueID = CSSValueNone; | 3057 valueID = CSSValueNone; |
3067 break; | 3058 break; |
3068 case ObjectFitScaleDown: | 3059 case ObjectFitScaleDown: |
3069 m_value.valueID = CSSValueScaleDown; | 3060 valueID = CSSValueScaleDown; |
3070 break; | 3061 break; |
3071 } | 3062 } |
| 3063 return create(valueID); |
3072 } | 3064 } |
3073 | 3065 |
3074 template<> inline CSSPrimitiveValue::operator ObjectFit() const | 3066 template<> inline CSSPrimitiveValue::operator ObjectFit() const |
3075 { | 3067 { |
3076 switch (value().valueID) { | 3068 switch (value().valueID) { |
3077 case CSSValueFill: | 3069 case CSSValueFill: |
3078 return ObjectFitFill; | 3070 return ObjectFitFill; |
3079 case CSSValueContain: | 3071 case CSSValueContain: |
3080 return ObjectFitContain; | 3072 return ObjectFitContain; |
3081 case CSSValueCover: | 3073 case CSSValueCover: |
3082 return ObjectFitCover; | 3074 return ObjectFitCover; |
3083 case CSSValueNone: | 3075 case CSSValueNone: |
3084 return ObjectFitNone; | 3076 return ObjectFitNone; |
3085 case CSSValueScaleDown: | 3077 case CSSValueScaleDown: |
3086 return ObjectFitScaleDown; | 3078 return ObjectFitScaleDown; |
3087 default: | 3079 default: |
3088 ASSERT_NOT_REACHED(); | 3080 ASSERT_NOT_REACHED(); |
3089 return ObjectFitFill; | 3081 return ObjectFitFill; |
3090 } | 3082 } |
3091 } | 3083 } |
3092 | 3084 |
3093 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillSizeType fillSize) | 3085 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EFillSizeType fillSize) |
3094 : CSSValue(PrimitiveClass) | |
3095 { | 3086 { |
3096 m_primitiveUnitType = CSS_VALUE_ID; | 3087 CSSValueID valueID = CSSValueInvalid; |
3097 switch (fillSize) { | 3088 switch (fillSize) { |
3098 case Contain: | 3089 case Contain: |
3099 m_value.valueID = CSSValueContain; | 3090 valueID = CSSValueContain; |
3100 break; | 3091 break; |
3101 case Cover: | 3092 case Cover: |
3102 m_value.valueID = CSSValueCover; | 3093 valueID = CSSValueCover; |
3103 break; | 3094 break; |
3104 case SizeNone: | 3095 case SizeNone: |
3105 m_value.valueID = CSSValueNone; | 3096 valueID = CSSValueNone; |
3106 break; | 3097 break; |
3107 case SizeLength: | 3098 case SizeLength: |
3108 default: | 3099 default: |
3109 ASSERT_NOT_REACHED(); | 3100 ASSERT_NOT_REACHED(); |
3110 } | 3101 } |
| 3102 return create(valueID); |
3111 } | 3103 } |
3112 | 3104 |
3113 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontSmoothingMode smoothi
ng) | 3105 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontSmoothingMode smoothing) |
3114 : CSSValue(PrimitiveClass) | |
3115 { | 3106 { |
3116 m_primitiveUnitType = CSS_VALUE_ID; | 3107 CSSValueID valueID = CSSValueInvalid; |
3117 switch (smoothing) { | 3108 switch (smoothing) { |
3118 case AutoSmoothing: | 3109 case AutoSmoothing: |
3119 m_value.valueID = CSSValueAuto; | 3110 valueID = CSSValueAuto; |
3120 return; | 3111 break; |
3121 case NoSmoothing: | 3112 case NoSmoothing: |
3122 m_value.valueID = CSSValueNone; | 3113 valueID = CSSValueNone; |
3123 return; | 3114 break; |
3124 case Antialiased: | 3115 case Antialiased: |
3125 m_value.valueID = CSSValueAntialiased; | 3116 valueID = CSSValueAntialiased; |
3126 return; | 3117 break; |
3127 case SubpixelAntialiased: | 3118 case SubpixelAntialiased: |
3128 m_value.valueID = CSSValueSubpixelAntialiased; | 3119 valueID = CSSValueSubpixelAntialiased; |
3129 return; | 3120 break; |
| 3121 default: |
| 3122 valueID = CSSValueAuto; |
3130 } | 3123 } |
3131 | 3124 return create(valueID); |
3132 ASSERT_NOT_REACHED(); | |
3133 m_value.valueID = CSSValueAuto; | |
3134 } | 3125 } |
3135 | 3126 |
3136 template<> inline CSSPrimitiveValue::operator FontSmoothingMode() const | 3127 template<> inline CSSPrimitiveValue::operator FontSmoothingMode() const |
3137 { | 3128 { |
3138 ASSERT(isValueID()); | 3129 ASSERT(isValueID()); |
3139 switch (value().valueID) { | 3130 switch (value().valueID) { |
3140 case CSSValueAuto: | 3131 case CSSValueAuto: |
3141 return AutoSmoothing; | 3132 return AutoSmoothing; |
3142 case CSSValueNone: | 3133 case CSSValueNone: |
3143 return NoSmoothing; | 3134 return NoSmoothing; |
3144 case CSSValueAntialiased: | 3135 case CSSValueAntialiased: |
3145 return Antialiased; | 3136 return Antialiased; |
3146 case CSSValueSubpixelAntialiased: | 3137 case CSSValueSubpixelAntialiased: |
3147 return SubpixelAntialiased; | 3138 return SubpixelAntialiased; |
3148 default: | 3139 default: |
3149 break; | 3140 break; |
3150 } | 3141 } |
3151 | 3142 |
3152 ASSERT_NOT_REACHED(); | 3143 ASSERT_NOT_REACHED(); |
3153 return AutoSmoothing; | 3144 return AutoSmoothing; |
3154 } | 3145 } |
3155 | 3146 |
3156 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontWeight weight) | 3147 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontWeight weight) |
3157 : CSSValue(PrimitiveClass) | |
3158 { | 3148 { |
3159 m_primitiveUnitType = CSS_VALUE_ID; | 3149 CSSValueID valueID = CSSValueInvalid; |
3160 switch (weight) { | 3150 switch (weight) { |
3161 case FontWeight900: | 3151 case FontWeight900: |
3162 m_value.valueID = CSSValue900; | 3152 valueID = CSSValue900; |
3163 return; | 3153 break; |
3164 case FontWeight800: | 3154 case FontWeight800: |
3165 m_value.valueID = CSSValue800; | 3155 valueID = CSSValue800; |
3166 return; | 3156 break; |
3167 case FontWeight700: | 3157 case FontWeight700: |
3168 m_value.valueID = CSSValueBold; | 3158 valueID = CSSValueBold; |
3169 return; | 3159 break; |
3170 case FontWeight600: | 3160 case FontWeight600: |
3171 m_value.valueID = CSSValue600; | 3161 valueID = CSSValue600; |
3172 return; | 3162 break; |
3173 case FontWeight500: | 3163 case FontWeight500: |
3174 m_value.valueID = CSSValue500; | 3164 valueID = CSSValue500; |
3175 return; | 3165 break; |
3176 case FontWeight400: | 3166 case FontWeight400: |
3177 m_value.valueID = CSSValueNormal; | 3167 valueID = CSSValueNormal; |
3178 return; | 3168 break; |
3179 case FontWeight300: | 3169 case FontWeight300: |
3180 m_value.valueID = CSSValue300; | 3170 valueID = CSSValue300; |
3181 return; | 3171 break; |
3182 case FontWeight200: | 3172 case FontWeight200: |
3183 m_value.valueID = CSSValue200; | 3173 valueID = CSSValue200; |
3184 return; | 3174 break; |
3185 case FontWeight100: | 3175 case FontWeight100: |
3186 m_value.valueID = CSSValue100; | 3176 valueID = CSSValue100; |
3187 return; | 3177 break; |
| 3178 default: |
| 3179 valueID = CSSValueNormal; |
3188 } | 3180 } |
3189 | 3181 return create(valueID); |
3190 ASSERT_NOT_REACHED(); | |
3191 m_value.valueID = CSSValueNormal; | |
3192 } | 3182 } |
3193 | 3183 |
3194 template<> inline CSSPrimitiveValue::operator FontWeight() const | 3184 template<> inline CSSPrimitiveValue::operator FontWeight() const |
3195 { | 3185 { |
3196 ASSERT(isValueID()); | 3186 ASSERT(isValueID()); |
3197 switch (value().valueID) { | 3187 switch (value().valueID) { |
3198 case CSSValueBold: | 3188 case CSSValueBold: |
3199 return FontWeightBold; | 3189 return FontWeightBold; |
3200 case CSSValueNormal: | 3190 case CSSValueNormal: |
3201 return FontWeightNormal; | 3191 return FontWeightNormal; |
(...skipping 16 matching lines...) Expand all Loading... |
3218 case CSSValue100: | 3208 case CSSValue100: |
3219 return FontWeight100; | 3209 return FontWeight100; |
3220 default: | 3210 default: |
3221 break; | 3211 break; |
3222 } | 3212 } |
3223 | 3213 |
3224 ASSERT_NOT_REACHED(); | 3214 ASSERT_NOT_REACHED(); |
3225 return FontWeightNormal; | 3215 return FontWeightNormal; |
3226 } | 3216 } |
3227 | 3217 |
3228 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontStyle italic) | 3218 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontStyle italic) |
3229 : CSSValue(PrimitiveClass) | |
3230 { | 3219 { |
3231 m_primitiveUnitType = CSS_VALUE_ID; | 3220 CSSValueID valueID = CSSValueInvalid; |
3232 switch (italic) { | 3221 switch (italic) { |
3233 case FontStyleNormal: | 3222 case FontStyleNormal: |
3234 m_value.valueID = CSSValueNormal; | 3223 valueID = CSSValueNormal; |
3235 return; | 3224 break; |
3236 case FontStyleItalic: | 3225 case FontStyleItalic: |
3237 m_value.valueID = CSSValueItalic; | 3226 valueID = CSSValueItalic; |
3238 return; | 3227 break; |
| 3228 default: |
| 3229 valueID = CSSValueNormal; |
3239 } | 3230 } |
3240 | 3231 return create(valueID); |
3241 ASSERT_NOT_REACHED(); | |
3242 m_value.valueID = CSSValueNormal; | |
3243 } | 3232 } |
3244 | 3233 |
3245 template<> inline CSSPrimitiveValue::operator FontStyle() const | 3234 template<> inline CSSPrimitiveValue::operator FontStyle() const |
3246 { | 3235 { |
3247 ASSERT(isValueID()); | 3236 ASSERT(isValueID()); |
3248 switch (value().valueID) { | 3237 switch (value().valueID) { |
3249 case CSSValueOblique: | 3238 case CSSValueOblique: |
3250 // FIXME: oblique is the same as italic for the moment... | 3239 // FIXME: oblique is the same as italic for the moment... |
3251 case CSSValueItalic: | 3240 case CSSValueItalic: |
3252 return FontStyleItalic; | 3241 return FontStyleItalic; |
3253 case CSSValueNormal: | 3242 case CSSValueNormal: |
3254 return FontStyleNormal; | 3243 return FontStyleNormal; |
3255 default: | 3244 default: |
3256 break; | 3245 break; |
3257 } | 3246 } |
3258 ASSERT_NOT_REACHED(); | 3247 ASSERT_NOT_REACHED(); |
3259 return FontStyleNormal; | 3248 return FontStyleNormal; |
3260 } | 3249 } |
3261 | 3250 |
3262 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontStretch stretch) | 3251 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontStretch stretch) |
3263 : CSSValue(PrimitiveClass) | |
3264 { | 3252 { |
3265 m_primitiveUnitType = CSS_VALUE_ID; | 3253 CSSValueID valueID = CSSValueInvalid; |
3266 switch (stretch) { | 3254 switch (stretch) { |
3267 case FontStretchUltraCondensed: | 3255 case FontStretchUltraCondensed: |
3268 m_value.valueID = CSSValueUltraCondensed; | 3256 valueID = CSSValueUltraCondensed; |
3269 return; | 3257 break; |
3270 case FontStretchExtraCondensed: | 3258 case FontStretchExtraCondensed: |
3271 m_value.valueID = CSSValueExtraCondensed; | 3259 valueID = CSSValueExtraCondensed; |
3272 return; | 3260 break; |
3273 case FontStretchCondensed: | 3261 case FontStretchCondensed: |
3274 m_value.valueID = CSSValueCondensed; | 3262 valueID = CSSValueCondensed; |
3275 return; | 3263 break; |
3276 case FontStretchSemiCondensed: | 3264 case FontStretchSemiCondensed: |
3277 m_value.valueID = CSSValueSemiCondensed; | 3265 valueID = CSSValueSemiCondensed; |
3278 return; | 3266 break; |
3279 case FontStretchNormal: | 3267 case FontStretchNormal: |
3280 m_value.valueID = CSSValueNormal; | 3268 valueID = CSSValueNormal; |
3281 return; | 3269 break; |
3282 case FontStretchSemiExpanded: | 3270 case FontStretchSemiExpanded: |
3283 m_value.valueID = CSSValueSemiExpanded; | 3271 valueID = CSSValueSemiExpanded; |
3284 return; | 3272 break; |
3285 case FontStretchExpanded: | 3273 case FontStretchExpanded: |
3286 m_value.valueID = CSSValueExpanded; | 3274 valueID = CSSValueExpanded; |
3287 return; | 3275 break; |
3288 case FontStretchExtraExpanded: | 3276 case FontStretchExtraExpanded: |
3289 m_value.valueID = CSSValueExtraExpanded; | 3277 valueID = CSSValueExtraExpanded; |
3290 return; | 3278 break; |
3291 case FontStretchUltraExpanded: | 3279 case FontStretchUltraExpanded: |
3292 m_value.valueID = CSSValueUltraExpanded; | 3280 valueID = CSSValueUltraExpanded; |
3293 return; | 3281 break; |
| 3282 default: |
| 3283 valueID = CSSValueNormal; |
3294 } | 3284 } |
3295 | 3285 |
3296 ASSERT_NOT_REACHED(); | 3286 return create(valueID); |
3297 m_value.valueID = CSSValueNormal; | |
3298 } | 3287 } |
3299 | 3288 |
3300 template<> inline CSSPrimitiveValue::operator FontStretch() const | 3289 template<> inline CSSPrimitiveValue::operator FontStretch() const |
3301 { | 3290 { |
3302 ASSERT(isValueID()); | 3291 ASSERT(isValueID()); |
3303 switch (value().valueID) { | 3292 switch (value().valueID) { |
3304 case CSSValueUltraCondensed: | 3293 case CSSValueUltraCondensed: |
3305 return FontStretchUltraCondensed; | 3294 return FontStretchUltraCondensed; |
3306 case CSSValueExtraCondensed: | 3295 case CSSValueExtraCondensed: |
3307 return FontStretchExtraCondensed; | 3296 return FontStretchExtraCondensed; |
(...skipping 12 matching lines...) Expand all Loading... |
3320 case CSSValueUltraExpanded: | 3309 case CSSValueUltraExpanded: |
3321 return FontStretchUltraExpanded; | 3310 return FontStretchUltraExpanded; |
3322 default: | 3311 default: |
3323 break; | 3312 break; |
3324 } | 3313 } |
3325 | 3314 |
3326 ASSERT_NOT_REACHED(); | 3315 ASSERT_NOT_REACHED(); |
3327 return FontStretchNormal; | 3316 return FontStretchNormal; |
3328 } | 3317 } |
3329 | 3318 |
3330 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontVariant smallCaps) | 3319 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(FontVariant smallCaps) |
3331 : CSSValue(PrimitiveClass) | |
3332 { | 3320 { |
3333 m_primitiveUnitType = CSS_VALUE_ID; | 3321 CSSValueID valueID = CSSValueInvalid; |
3334 switch (smallCaps) { | 3322 switch (smallCaps) { |
3335 case FontVariantNormal: | 3323 case FontVariantNormal: |
3336 m_value.valueID = CSSValueNormal; | 3324 valueID = CSSValueNormal; |
3337 return; | 3325 break; |
3338 case FontVariantSmallCaps: | 3326 case FontVariantSmallCaps: |
3339 m_value.valueID = CSSValueSmallCaps; | 3327 valueID = CSSValueSmallCaps; |
3340 return; | 3328 break; |
| 3329 default: |
| 3330 valueID = CSSValueNormal; |
3341 } | 3331 } |
3342 | 3332 return create(valueID); |
3343 ASSERT_NOT_REACHED(); | |
3344 m_value.valueID = CSSValueNormal; | |
3345 } | 3333 } |
3346 | 3334 |
3347 template<> inline CSSPrimitiveValue::operator FontVariant() const | 3335 template<> inline CSSPrimitiveValue::operator FontVariant() const |
3348 { | 3336 { |
3349 ASSERT(isValueID()); | 3337 ASSERT(isValueID()); |
3350 switch (value().valueID) { | 3338 switch (value().valueID) { |
3351 case CSSValueSmallCaps: | 3339 case CSSValueSmallCaps: |
3352 return FontVariantSmallCaps; | 3340 return FontVariantSmallCaps; |
3353 case CSSValueNormal: | 3341 case CSSValueNormal: |
3354 return FontVariantNormal; | 3342 return FontVariantNormal; |
3355 default: | 3343 default: |
3356 break; | 3344 break; |
3357 } | 3345 } |
3358 ASSERT_NOT_REACHED(); | 3346 ASSERT_NOT_REACHED(); |
3359 return FontVariantNormal; | 3347 return FontVariantNormal; |
3360 } | 3348 } |
3361 | 3349 |
3362 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextRenderingMode e) | 3350 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(TextRenderingMode e) |
3363 : CSSValue(PrimitiveClass) | |
3364 { | 3351 { |
3365 m_primitiveUnitType = CSS_VALUE_ID; | 3352 CSSValueID valueID = CSSValueInvalid; |
3366 switch (e) { | 3353 switch (e) { |
3367 case AutoTextRendering: | 3354 case AutoTextRendering: |
3368 m_value.valueID = CSSValueAuto; | 3355 valueID = CSSValueAuto; |
3369 break; | 3356 break; |
3370 case OptimizeSpeed: | 3357 case OptimizeSpeed: |
3371 m_value.valueID = CSSValueOptimizeSpeed; | 3358 valueID = CSSValueOptimizeSpeed; |
3372 break; | 3359 break; |
3373 case OptimizeLegibility: | 3360 case OptimizeLegibility: |
3374 m_value.valueID = CSSValueOptimizeLegibility; | 3361 valueID = CSSValueOptimizeLegibility; |
3375 break; | 3362 break; |
3376 case GeometricPrecision: | 3363 case GeometricPrecision: |
3377 m_value.valueID = CSSValueGeometricPrecision; | 3364 valueID = CSSValueGeometricPrecision; |
3378 break; | 3365 break; |
3379 } | 3366 } |
| 3367 return create(valueID); |
3380 } | 3368 } |
3381 | 3369 |
3382 template<> inline CSSPrimitiveValue::operator TextRenderingMode() const | 3370 template<> inline CSSPrimitiveValue::operator TextRenderingMode() const |
3383 { | 3371 { |
3384 ASSERT(isValueID()); | 3372 ASSERT(isValueID()); |
3385 switch (value().valueID) { | 3373 switch (value().valueID) { |
3386 case CSSValueAuto: | 3374 case CSSValueAuto: |
3387 return AutoTextRendering; | 3375 return AutoTextRendering; |
3388 case CSSValueOptimizeSpeed: | 3376 case CSSValueOptimizeSpeed: |
3389 return OptimizeSpeed; | 3377 return OptimizeSpeed; |
3390 case CSSValueOptimizeLegibility: | 3378 case CSSValueOptimizeLegibility: |
3391 return OptimizeLegibility; | 3379 return OptimizeLegibility; |
3392 case CSSValueGeometricPrecision: | 3380 case CSSValueGeometricPrecision: |
3393 return GeometricPrecision; | 3381 return GeometricPrecision; |
3394 default: | 3382 default: |
3395 break; | 3383 break; |
3396 } | 3384 } |
3397 | 3385 |
3398 ASSERT_NOT_REACHED(); | 3386 ASSERT_NOT_REACHED(); |
3399 return AutoTextRendering; | 3387 return AutoTextRendering; |
3400 } | 3388 } |
3401 | 3389 |
3402 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ESpeak e) | 3390 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ESpeak e) |
3403 : CSSValue(PrimitiveClass) | |
3404 { | 3391 { |
3405 m_primitiveUnitType = CSS_VALUE_ID; | 3392 CSSValueID valueID = CSSValueInvalid; |
3406 switch (e) { | 3393 switch (e) { |
3407 case SpeakNone: | 3394 case SpeakNone: |
3408 m_value.valueID = CSSValueNone; | 3395 valueID = CSSValueNone; |
3409 break; | 3396 break; |
3410 case SpeakNormal: | 3397 case SpeakNormal: |
3411 m_value.valueID = CSSValueNormal; | 3398 valueID = CSSValueNormal; |
3412 break; | 3399 break; |
3413 case SpeakSpellOut: | 3400 case SpeakSpellOut: |
3414 m_value.valueID = CSSValueSpellOut; | 3401 valueID = CSSValueSpellOut; |
3415 break; | 3402 break; |
3416 case SpeakDigits: | 3403 case SpeakDigits: |
3417 m_value.valueID = CSSValueDigits; | 3404 valueID = CSSValueDigits; |
3418 break; | 3405 break; |
3419 case SpeakLiteralPunctuation: | 3406 case SpeakLiteralPunctuation: |
3420 m_value.valueID = CSSValueLiteralPunctuation; | 3407 valueID = CSSValueLiteralPunctuation; |
3421 break; | 3408 break; |
3422 case SpeakNoPunctuation: | 3409 case SpeakNoPunctuation: |
3423 m_value.valueID = CSSValueNoPunctuation; | 3410 valueID = CSSValueNoPunctuation; |
3424 break; | 3411 break; |
3425 } | 3412 } |
| 3413 return create(valueID); |
3426 } | 3414 } |
3427 | 3415 |
3428 template<> inline CSSPrimitiveValue::operator Order() const | 3416 template<> inline CSSPrimitiveValue::operator Order() const |
3429 { | 3417 { |
3430 ASSERT(isValueID()); | 3418 ASSERT(isValueID()); |
3431 switch (value().valueID) { | 3419 switch (value().valueID) { |
3432 case CSSValueLogical: | 3420 case CSSValueLogical: |
3433 return LogicalOrder; | 3421 return LogicalOrder; |
3434 case CSSValueVisual: | 3422 case CSSValueVisual: |
3435 return VisualOrder; | 3423 return VisualOrder; |
3436 default: | 3424 default: |
3437 break; | 3425 break; |
3438 } | 3426 } |
3439 | 3427 |
3440 ASSERT_NOT_REACHED(); | 3428 ASSERT_NOT_REACHED(); |
3441 return LogicalOrder; | 3429 return LogicalOrder; |
3442 } | 3430 } |
3443 | 3431 |
3444 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(Order e) | 3432 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(Order e) |
3445 : CSSValue(PrimitiveClass) | |
3446 { | 3433 { |
3447 m_primitiveUnitType = CSS_VALUE_ID; | 3434 CSSValueID valueID = CSSValueInvalid; |
3448 switch (e) { | 3435 switch (e) { |
3449 case LogicalOrder: | 3436 case LogicalOrder: |
3450 m_value.valueID = CSSValueLogical; | 3437 valueID = CSSValueLogical; |
3451 break; | 3438 break; |
3452 case VisualOrder: | 3439 case VisualOrder: |
3453 m_value.valueID = CSSValueVisual; | 3440 valueID = CSSValueVisual; |
3454 break; | 3441 break; |
3455 } | 3442 } |
| 3443 return create(valueID); |
3456 } | 3444 } |
3457 | 3445 |
3458 template<> inline CSSPrimitiveValue::operator ESpeak() const | 3446 template<> inline CSSPrimitiveValue::operator ESpeak() const |
3459 { | 3447 { |
3460 ASSERT(isValueID()); | 3448 ASSERT(isValueID()); |
3461 switch (value().valueID) { | 3449 switch (value().valueID) { |
3462 case CSSValueNone: | 3450 case CSSValueNone: |
3463 return SpeakNone; | 3451 return SpeakNone; |
3464 case CSSValueNormal: | 3452 case CSSValueNormal: |
3465 return SpeakNormal; | 3453 return SpeakNormal; |
3466 case CSSValueSpellOut: | 3454 case CSSValueSpellOut: |
3467 return SpeakSpellOut; | 3455 return SpeakSpellOut; |
3468 case CSSValueDigits: | 3456 case CSSValueDigits: |
3469 return SpeakDigits; | 3457 return SpeakDigits; |
3470 case CSSValueLiteralPunctuation: | 3458 case CSSValueLiteralPunctuation: |
3471 return SpeakLiteralPunctuation; | 3459 return SpeakLiteralPunctuation; |
3472 case CSSValueNoPunctuation: | 3460 case CSSValueNoPunctuation: |
3473 return SpeakNoPunctuation; | 3461 return SpeakNoPunctuation; |
3474 default: | 3462 default: |
3475 break; | 3463 break; |
3476 } | 3464 } |
3477 | 3465 |
3478 ASSERT_NOT_REACHED(); | 3466 ASSERT_NOT_REACHED(); |
3479 return SpeakNormal; | 3467 return SpeakNormal; |
3480 } | 3468 } |
3481 | 3469 |
3482 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(WebBlendMode blendMode) | 3470 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(WebBlendMode blendMode) |
3483 : CSSValue(PrimitiveClass) | |
3484 { | 3471 { |
3485 m_primitiveUnitType = CSS_VALUE_ID; | 3472 CSSValueID valueID = CSSValueInvalid; |
3486 switch (blendMode) { | 3473 switch (blendMode) { |
3487 case WebBlendModeNormal: | 3474 case WebBlendModeNormal: |
3488 m_value.valueID = CSSValueNormal; | 3475 valueID = CSSValueNormal; |
3489 break; | 3476 break; |
3490 case WebBlendModeMultiply: | 3477 case WebBlendModeMultiply: |
3491 m_value.valueID = CSSValueMultiply; | 3478 valueID = CSSValueMultiply; |
3492 break; | 3479 break; |
3493 case WebBlendModeScreen: | 3480 case WebBlendModeScreen: |
3494 m_value.valueID = CSSValueScreen; | 3481 valueID = CSSValueScreen; |
3495 break; | 3482 break; |
3496 case WebBlendModeOverlay: | 3483 case WebBlendModeOverlay: |
3497 m_value.valueID = CSSValueOverlay; | 3484 valueID = CSSValueOverlay; |
3498 break; | 3485 break; |
3499 case WebBlendModeDarken: | 3486 case WebBlendModeDarken: |
3500 m_value.valueID = CSSValueDarken; | 3487 valueID = CSSValueDarken; |
3501 break; | 3488 break; |
3502 case WebBlendModeLighten: | 3489 case WebBlendModeLighten: |
3503 m_value.valueID = CSSValueLighten; | 3490 valueID = CSSValueLighten; |
3504 break; | 3491 break; |
3505 case WebBlendModeColorDodge: | 3492 case WebBlendModeColorDodge: |
3506 m_value.valueID = CSSValueColorDodge; | 3493 valueID = CSSValueColorDodge; |
3507 break; | 3494 break; |
3508 case WebBlendModeColorBurn: | 3495 case WebBlendModeColorBurn: |
3509 m_value.valueID = CSSValueColorBurn; | 3496 valueID = CSSValueColorBurn; |
3510 break; | 3497 break; |
3511 case WebBlendModeHardLight: | 3498 case WebBlendModeHardLight: |
3512 m_value.valueID = CSSValueHardLight; | 3499 valueID = CSSValueHardLight; |
3513 break; | 3500 break; |
3514 case WebBlendModeSoftLight: | 3501 case WebBlendModeSoftLight: |
3515 m_value.valueID = CSSValueSoftLight; | 3502 valueID = CSSValueSoftLight; |
3516 break; | 3503 break; |
3517 case WebBlendModeDifference: | 3504 case WebBlendModeDifference: |
3518 m_value.valueID = CSSValueDifference; | 3505 valueID = CSSValueDifference; |
3519 break; | 3506 break; |
3520 case WebBlendModeExclusion: | 3507 case WebBlendModeExclusion: |
3521 m_value.valueID = CSSValueExclusion; | 3508 valueID = CSSValueExclusion; |
3522 break; | 3509 break; |
3523 case WebBlendModeHue: | 3510 case WebBlendModeHue: |
3524 m_value.valueID = CSSValueHue; | 3511 valueID = CSSValueHue; |
3525 break; | 3512 break; |
3526 case WebBlendModeSaturation: | 3513 case WebBlendModeSaturation: |
3527 m_value.valueID = CSSValueSaturation; | 3514 valueID = CSSValueSaturation; |
3528 break; | 3515 break; |
3529 case WebBlendModeColor: | 3516 case WebBlendModeColor: |
3530 m_value.valueID = CSSValueColor; | 3517 valueID = CSSValueColor; |
3531 break; | 3518 break; |
3532 case WebBlendModeLuminosity: | 3519 case WebBlendModeLuminosity: |
3533 m_value.valueID = CSSValueLuminosity; | 3520 valueID = CSSValueLuminosity; |
3534 break; | 3521 break; |
3535 } | 3522 } |
| 3523 return create(valueID); |
3536 } | 3524 } |
3537 | 3525 |
3538 template<> inline CSSPrimitiveValue::operator WebBlendMode() const | 3526 template<> inline CSSPrimitiveValue::operator WebBlendMode() const |
3539 { | 3527 { |
3540 ASSERT(isValueID()); | 3528 ASSERT(isValueID()); |
3541 switch (value().valueID) { | 3529 switch (value().valueID) { |
3542 case CSSValueNormal: | 3530 case CSSValueNormal: |
3543 return WebBlendModeNormal; | 3531 return WebBlendModeNormal; |
3544 case CSSValueMultiply: | 3532 case CSSValueMultiply: |
3545 return WebBlendModeMultiply; | 3533 return WebBlendModeMultiply; |
(...skipping 26 matching lines...) Expand all Loading... |
3572 case CSSValueLuminosity: | 3560 case CSSValueLuminosity: |
3573 return WebBlendModeLuminosity; | 3561 return WebBlendModeLuminosity; |
3574 default: | 3562 default: |
3575 break; | 3563 break; |
3576 } | 3564 } |
3577 | 3565 |
3578 ASSERT_NOT_REACHED(); | 3566 ASSERT_NOT_REACHED(); |
3579 return WebBlendModeNormal; | 3567 return WebBlendModeNormal; |
3580 } | 3568 } |
3581 | 3569 |
3582 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineCap e) | 3570 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(LineCap e) |
3583 : CSSValue(PrimitiveClass) | |
3584 { | 3571 { |
3585 m_primitiveUnitType = CSS_VALUE_ID; | 3572 CSSValueID valueID = CSSValueInvalid; |
3586 switch (e) { | 3573 switch (e) { |
3587 case ButtCap: | 3574 case ButtCap: |
3588 m_value.valueID = CSSValueButt; | 3575 valueID = CSSValueButt; |
3589 break; | 3576 break; |
3590 case RoundCap: | 3577 case RoundCap: |
3591 m_value.valueID = CSSValueRound; | 3578 valueID = CSSValueRound; |
3592 break; | 3579 break; |
3593 case SquareCap: | 3580 case SquareCap: |
3594 m_value.valueID = CSSValueSquare; | 3581 valueID = CSSValueSquare; |
3595 break; | 3582 break; |
3596 } | 3583 } |
| 3584 return create(valueID); |
3597 } | 3585 } |
3598 | 3586 |
3599 template<> inline CSSPrimitiveValue::operator LineCap() const | 3587 template<> inline CSSPrimitiveValue::operator LineCap() const |
3600 { | 3588 { |
3601 ASSERT(isValueID()); | 3589 ASSERT(isValueID()); |
3602 switch (value().valueID) { | 3590 switch (value().valueID) { |
3603 case CSSValueButt: | 3591 case CSSValueButt: |
3604 return ButtCap; | 3592 return ButtCap; |
3605 case CSSValueRound: | 3593 case CSSValueRound: |
3606 return RoundCap; | 3594 return RoundCap; |
3607 case CSSValueSquare: | 3595 case CSSValueSquare: |
3608 return SquareCap; | 3596 return SquareCap; |
3609 default: | 3597 default: |
3610 break; | 3598 break; |
3611 } | 3599 } |
3612 | 3600 |
3613 ASSERT_NOT_REACHED(); | 3601 ASSERT_NOT_REACHED(); |
3614 return ButtCap; | 3602 return ButtCap; |
3615 } | 3603 } |
3616 | 3604 |
3617 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineJoin e) | 3605 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(LineJoin e) |
3618 : CSSValue(PrimitiveClass) | |
3619 { | 3606 { |
3620 m_primitiveUnitType = CSS_VALUE_ID; | 3607 CSSValueID valueID = CSSValueInvalid; |
3621 switch (e) { | 3608 switch (e) { |
3622 case MiterJoin: | 3609 case MiterJoin: |
3623 m_value.valueID = CSSValueMiter; | 3610 valueID = CSSValueMiter; |
3624 break; | 3611 break; |
3625 case RoundJoin: | 3612 case RoundJoin: |
3626 m_value.valueID = CSSValueRound; | 3613 valueID = CSSValueRound; |
3627 break; | 3614 break; |
3628 case BevelJoin: | 3615 case BevelJoin: |
3629 m_value.valueID = CSSValueBevel; | 3616 valueID = CSSValueBevel; |
3630 break; | 3617 break; |
3631 } | 3618 } |
| 3619 return create(valueID); |
3632 } | 3620 } |
3633 | 3621 |
3634 template<> inline CSSPrimitiveValue::operator LineJoin() const | 3622 template<> inline CSSPrimitiveValue::operator LineJoin() const |
3635 { | 3623 { |
3636 ASSERT(isValueID()); | 3624 ASSERT(isValueID()); |
3637 switch (value().valueID) { | 3625 switch (value().valueID) { |
3638 case CSSValueMiter: | 3626 case CSSValueMiter: |
3639 return MiterJoin; | 3627 return MiterJoin; |
3640 case CSSValueRound: | 3628 case CSSValueRound: |
3641 return RoundJoin; | 3629 return RoundJoin; |
3642 case CSSValueBevel: | 3630 case CSSValueBevel: |
3643 return BevelJoin; | 3631 return BevelJoin; |
3644 default: | 3632 default: |
3645 break; | 3633 break; |
3646 } | 3634 } |
3647 | 3635 |
3648 ASSERT_NOT_REACHED(); | 3636 ASSERT_NOT_REACHED(); |
3649 return MiterJoin; | 3637 return MiterJoin; |
3650 } | 3638 } |
3651 | 3639 |
3652 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(WindRule e) | 3640 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(WindRule e) |
3653 : CSSValue(PrimitiveClass) | |
3654 { | 3641 { |
3655 m_primitiveUnitType = CSS_VALUE_ID; | 3642 CSSValueID valueID = CSSValueInvalid; |
3656 switch (e) { | 3643 switch (e) { |
3657 case RULE_NONZERO: | 3644 case RULE_NONZERO: |
3658 m_value.valueID = CSSValueNonzero; | 3645 valueID = CSSValueNonzero; |
3659 break; | 3646 break; |
3660 case RULE_EVENODD: | 3647 case RULE_EVENODD: |
3661 m_value.valueID = CSSValueEvenodd; | 3648 valueID = CSSValueEvenodd; |
3662 break; | 3649 break; |
3663 } | 3650 } |
| 3651 return create(valueID); |
3664 } | 3652 } |
3665 | 3653 |
3666 template<> inline CSSPrimitiveValue::operator WindRule() const | 3654 template<> inline CSSPrimitiveValue::operator WindRule() const |
3667 { | 3655 { |
3668 ASSERT(isValueID()); | 3656 ASSERT(isValueID()); |
3669 switch (value().valueID) { | 3657 switch (value().valueID) { |
3670 case CSSValueNonzero: | 3658 case CSSValueNonzero: |
3671 return RULE_NONZERO; | 3659 return RULE_NONZERO; |
3672 case CSSValueEvenodd: | 3660 case CSSValueEvenodd: |
3673 return RULE_EVENODD; | 3661 return RULE_EVENODD; |
3674 default: | 3662 default: |
3675 break; | 3663 break; |
3676 } | 3664 } |
3677 | 3665 |
3678 ASSERT_NOT_REACHED(); | 3666 ASSERT_NOT_REACHED(); |
3679 return RULE_NONZERO; | 3667 return RULE_NONZERO; |
3680 } | 3668 } |
3681 | 3669 |
3682 | 3670 |
3683 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EAlignmentBaseline e) | 3671 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EAlignmentBaseline e) |
3684 : CSSValue(PrimitiveClass) | |
3685 { | 3672 { |
3686 m_primitiveUnitType = CSS_VALUE_ID; | 3673 CSSValueID valueID = CSSValueInvalid; |
3687 switch (e) { | 3674 switch (e) { |
3688 case AB_AUTO: | 3675 case AB_AUTO: |
3689 m_value.valueID = CSSValueAuto; | 3676 valueID = CSSValueAuto; |
3690 break; | 3677 break; |
3691 case AB_BASELINE: | 3678 case AB_BASELINE: |
3692 m_value.valueID = CSSValueBaseline; | 3679 valueID = CSSValueBaseline; |
3693 break; | 3680 break; |
3694 case AB_BEFORE_EDGE: | 3681 case AB_BEFORE_EDGE: |
3695 m_value.valueID = CSSValueBeforeEdge; | 3682 valueID = CSSValueBeforeEdge; |
3696 break; | 3683 break; |
3697 case AB_TEXT_BEFORE_EDGE: | 3684 case AB_TEXT_BEFORE_EDGE: |
3698 m_value.valueID = CSSValueTextBeforeEdge; | 3685 valueID = CSSValueTextBeforeEdge; |
3699 break; | 3686 break; |
3700 case AB_MIDDLE: | 3687 case AB_MIDDLE: |
3701 m_value.valueID = CSSValueMiddle; | 3688 valueID = CSSValueMiddle; |
3702 break; | 3689 break; |
3703 case AB_CENTRAL: | 3690 case AB_CENTRAL: |
3704 m_value.valueID = CSSValueCentral; | 3691 valueID = CSSValueCentral; |
3705 break; | 3692 break; |
3706 case AB_AFTER_EDGE: | 3693 case AB_AFTER_EDGE: |
3707 m_value.valueID = CSSValueAfterEdge; | 3694 valueID = CSSValueAfterEdge; |
3708 break; | 3695 break; |
3709 case AB_TEXT_AFTER_EDGE: | 3696 case AB_TEXT_AFTER_EDGE: |
3710 m_value.valueID = CSSValueTextAfterEdge; | 3697 valueID = CSSValueTextAfterEdge; |
3711 break; | 3698 break; |
3712 case AB_IDEOGRAPHIC: | 3699 case AB_IDEOGRAPHIC: |
3713 m_value.valueID = CSSValueIdeographic; | 3700 valueID = CSSValueIdeographic; |
3714 break; | 3701 break; |
3715 case AB_ALPHABETIC: | 3702 case AB_ALPHABETIC: |
3716 m_value.valueID = CSSValueAlphabetic; | 3703 valueID = CSSValueAlphabetic; |
3717 break; | 3704 break; |
3718 case AB_HANGING: | 3705 case AB_HANGING: |
3719 m_value.valueID = CSSValueHanging; | 3706 valueID = CSSValueHanging; |
3720 break; | 3707 break; |
3721 case AB_MATHEMATICAL: | 3708 case AB_MATHEMATICAL: |
3722 m_value.valueID = CSSValueMathematical; | 3709 valueID = CSSValueMathematical; |
3723 break; | 3710 break; |
3724 } | 3711 } |
| 3712 return create(valueID); |
3725 } | 3713 } |
3726 | 3714 |
3727 template<> inline CSSPrimitiveValue::operator EAlignmentBaseline() const | 3715 template<> inline CSSPrimitiveValue::operator EAlignmentBaseline() const |
3728 { | 3716 { |
3729 ASSERT(isValueID()); | 3717 ASSERT(isValueID()); |
3730 switch (value().valueID) { | 3718 switch (value().valueID) { |
3731 case CSSValueAuto: | 3719 case CSSValueAuto: |
3732 return AB_AUTO; | 3720 return AB_AUTO; |
3733 case CSSValueBaseline: | 3721 case CSSValueBaseline: |
3734 return AB_BASELINE; | 3722 return AB_BASELINE; |
(...skipping 18 matching lines...) Expand all Loading... |
3753 case CSSValueMathematical: | 3741 case CSSValueMathematical: |
3754 return AB_MATHEMATICAL; | 3742 return AB_MATHEMATICAL; |
3755 default: | 3743 default: |
3756 break; | 3744 break; |
3757 } | 3745 } |
3758 | 3746 |
3759 ASSERT_NOT_REACHED(); | 3747 ASSERT_NOT_REACHED(); |
3760 return AB_AUTO; | 3748 return AB_AUTO; |
3761 } | 3749 } |
3762 | 3750 |
3763 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBorderCollapse e) | 3751 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBorderCollapse e) |
3764 : CSSValue(PrimitiveClass) | |
3765 { | 3752 { |
3766 m_primitiveUnitType = CSS_VALUE_ID; | 3753 CSSValueID valueID = CSSValueInvalid; |
3767 switch (e) { | 3754 switch (e) { |
3768 case BSEPARATE: | 3755 case BSEPARATE: |
3769 m_value.valueID = CSSValueSeparate; | 3756 valueID = CSSValueSeparate; |
3770 break; | 3757 break; |
3771 case BCOLLAPSE: | 3758 case BCOLLAPSE: |
3772 m_value.valueID = CSSValueCollapse; | 3759 valueID = CSSValueCollapse; |
3773 break; | 3760 break; |
3774 } | 3761 } |
| 3762 return create(valueID); |
3775 } | 3763 } |
3776 | 3764 |
3777 template<> inline CSSPrimitiveValue::operator EBorderCollapse() const | 3765 template<> inline CSSPrimitiveValue::operator EBorderCollapse() const |
3778 { | 3766 { |
3779 ASSERT(isValueID()); | 3767 ASSERT(isValueID()); |
3780 switch (value().valueID) { | 3768 switch (value().valueID) { |
3781 case CSSValueSeparate: | 3769 case CSSValueSeparate: |
3782 return BSEPARATE; | 3770 return BSEPARATE; |
3783 case CSSValueCollapse: | 3771 case CSSValueCollapse: |
3784 return BCOLLAPSE; | 3772 return BCOLLAPSE; |
3785 default: | 3773 default: |
3786 break; | 3774 break; |
3787 } | 3775 } |
3788 | 3776 |
3789 ASSERT_NOT_REACHED(); | 3777 ASSERT_NOT_REACHED(); |
3790 return BSEPARATE; | 3778 return BSEPARATE; |
3791 } | 3779 } |
3792 | 3780 |
3793 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EImageRendering e) | 3781 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EImageRendering e) |
3794 : CSSValue(PrimitiveClass) | |
3795 { | 3782 { |
3796 m_primitiveUnitType = CSS_VALUE_ID; | 3783 CSSValueID valueID = CSSValueInvalid; |
3797 switch (e) { | 3784 switch (e) { |
3798 case ImageRenderingAuto: | 3785 case ImageRenderingAuto: |
3799 m_value.valueID = CSSValueAuto; | 3786 valueID = CSSValueAuto; |
3800 break; | 3787 break; |
3801 case ImageRenderingOptimizeSpeed: | 3788 case ImageRenderingOptimizeSpeed: |
3802 m_value.valueID = CSSValueOptimizeSpeed; | 3789 valueID = CSSValueOptimizeSpeed; |
3803 break; | 3790 break; |
3804 case ImageRenderingOptimizeQuality: | 3791 case ImageRenderingOptimizeQuality: |
3805 m_value.valueID = CSSValueOptimizeQuality; | 3792 valueID = CSSValueOptimizeQuality; |
3806 break; | 3793 break; |
3807 case ImageRenderingPixelated: | 3794 case ImageRenderingPixelated: |
3808 m_value.valueID = CSSValuePixelated; | 3795 valueID = CSSValuePixelated; |
3809 break; | 3796 break; |
3810 case ImageRenderingOptimizeContrast: | 3797 case ImageRenderingOptimizeContrast: |
3811 m_value.valueID = CSSValueWebkitOptimizeContrast; | 3798 valueID = CSSValueWebkitOptimizeContrast; |
3812 break; | 3799 break; |
3813 } | 3800 } |
| 3801 return create(valueID); |
3814 } | 3802 } |
3815 | 3803 |
3816 template<> inline CSSPrimitiveValue::operator EImageRendering() const | 3804 template<> inline CSSPrimitiveValue::operator EImageRendering() const |
3817 { | 3805 { |
3818 ASSERT(isValueID()); | 3806 ASSERT(isValueID()); |
3819 switch (value().valueID) { | 3807 switch (value().valueID) { |
3820 case CSSValueAuto: | 3808 case CSSValueAuto: |
3821 return ImageRenderingAuto; | 3809 return ImageRenderingAuto; |
3822 case CSSValueOptimizeSpeed: | 3810 case CSSValueOptimizeSpeed: |
3823 return ImageRenderingOptimizeSpeed; | 3811 return ImageRenderingOptimizeSpeed; |
3824 case CSSValueOptimizeQuality: | 3812 case CSSValueOptimizeQuality: |
3825 return ImageRenderingOptimizeQuality; | 3813 return ImageRenderingOptimizeQuality; |
3826 case CSSValuePixelated: | 3814 case CSSValuePixelated: |
3827 return ImageRenderingPixelated; | 3815 return ImageRenderingPixelated; |
3828 case CSSValueWebkitOptimizeContrast: | 3816 case CSSValueWebkitOptimizeContrast: |
3829 return ImageRenderingOptimizeContrast; | 3817 return ImageRenderingOptimizeContrast; |
3830 default: | 3818 default: |
3831 break; | 3819 break; |
3832 } | 3820 } |
3833 | 3821 |
3834 ASSERT_NOT_REACHED(); | 3822 ASSERT_NOT_REACHED(); |
3835 return ImageRenderingAuto; | 3823 return ImageRenderingAuto; |
3836 } | 3824 } |
3837 | 3825 |
3838 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETransformStyle3D e) | 3826 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETransformStyle3D e) |
3839 : CSSValue(PrimitiveClass) | |
3840 { | 3827 { |
3841 m_primitiveUnitType = CSS_VALUE_ID; | 3828 CSSValueID valueID = CSSValueInvalid; |
3842 switch (e) { | 3829 switch (e) { |
3843 case TransformStyle3DFlat: | 3830 case TransformStyle3DFlat: |
3844 m_value.valueID = CSSValueFlat; | 3831 valueID = CSSValueFlat; |
3845 break; | 3832 break; |
3846 case TransformStyle3DPreserve3D: | 3833 case TransformStyle3DPreserve3D: |
3847 m_value.valueID = CSSValuePreserve3d; | 3834 valueID = CSSValuePreserve3d; |
3848 break; | 3835 break; |
3849 } | 3836 } |
| 3837 return create(valueID); |
3850 } | 3838 } |
3851 | 3839 |
3852 template<> inline CSSPrimitiveValue::operator ETransformStyle3D() const | 3840 template<> inline CSSPrimitiveValue::operator ETransformStyle3D() const |
3853 { | 3841 { |
3854 ASSERT(isValueID()); | 3842 ASSERT(isValueID()); |
3855 switch (value().valueID) { | 3843 switch (value().valueID) { |
3856 case CSSValueFlat: | 3844 case CSSValueFlat: |
3857 return TransformStyle3DFlat; | 3845 return TransformStyle3DFlat; |
3858 case CSSValuePreserve3d: | 3846 case CSSValuePreserve3d: |
3859 return TransformStyle3DPreserve3D; | 3847 return TransformStyle3DPreserve3D; |
3860 default: | 3848 default: |
3861 break; | 3849 break; |
3862 } | 3850 } |
3863 | 3851 |
3864 ASSERT_NOT_REACHED(); | 3852 ASSERT_NOT_REACHED(); |
3865 return TransformStyle3DFlat; | 3853 return TransformStyle3DFlat; |
3866 } | 3854 } |
3867 | 3855 |
3868 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBufferedRendering e) | 3856 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EBufferedRendering e) |
3869 : CSSValue(PrimitiveClass) | |
3870 { | 3857 { |
3871 m_primitiveUnitType = CSS_VALUE_ID; | 3858 CSSValueID valueID = CSSValueInvalid; |
3872 switch (e) { | 3859 switch (e) { |
3873 case BR_AUTO: | 3860 case BR_AUTO: |
3874 m_value.valueID = CSSValueAuto; | 3861 valueID = CSSValueAuto; |
3875 break; | 3862 break; |
3876 case BR_DYNAMIC: | 3863 case BR_DYNAMIC: |
3877 m_value.valueID = CSSValueDynamic; | 3864 valueID = CSSValueDynamic; |
3878 break; | 3865 break; |
3879 case BR_STATIC: | 3866 case BR_STATIC: |
3880 m_value.valueID = CSSValueStatic; | 3867 valueID = CSSValueStatic; |
3881 break; | 3868 break; |
3882 } | 3869 } |
| 3870 return create(valueID); |
3883 } | 3871 } |
3884 | 3872 |
3885 template<> inline CSSPrimitiveValue::operator EBufferedRendering() const | 3873 template<> inline CSSPrimitiveValue::operator EBufferedRendering() const |
3886 { | 3874 { |
3887 ASSERT(isValueID()); | 3875 ASSERT(isValueID()); |
3888 switch (value().valueID) { | 3876 switch (value().valueID) { |
3889 case CSSValueAuto: | 3877 case CSSValueAuto: |
3890 return BR_AUTO; | 3878 return BR_AUTO; |
3891 case CSSValueDynamic: | 3879 case CSSValueDynamic: |
3892 return BR_DYNAMIC; | 3880 return BR_DYNAMIC; |
3893 case CSSValueStatic: | 3881 case CSSValueStatic: |
3894 return BR_STATIC; | 3882 return BR_STATIC; |
3895 default: | 3883 default: |
3896 break; | 3884 break; |
3897 } | 3885 } |
3898 | 3886 |
3899 ASSERT_NOT_REACHED(); | 3887 ASSERT_NOT_REACHED(); |
3900 return BR_AUTO; | 3888 return BR_AUTO; |
3901 } | 3889 } |
3902 | 3890 |
3903 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EColorInterpolation e) | 3891 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EColorInterpolation e) |
3904 : CSSValue(PrimitiveClass) | |
3905 { | 3892 { |
3906 m_primitiveUnitType = CSS_VALUE_ID; | 3893 CSSValueID valueID = CSSValueInvalid; |
3907 switch (e) { | 3894 switch (e) { |
3908 case CI_AUTO: | 3895 case CI_AUTO: |
3909 m_value.valueID = CSSValueAuto; | 3896 valueID = CSSValueAuto; |
3910 break; | 3897 break; |
3911 case CI_SRGB: | 3898 case CI_SRGB: |
3912 m_value.valueID = CSSValueSRGB; | 3899 valueID = CSSValueSRGB; |
3913 break; | 3900 break; |
3914 case CI_LINEARRGB: | 3901 case CI_LINEARRGB: |
3915 m_value.valueID = CSSValueLinearRGB; | 3902 valueID = CSSValueLinearRGB; |
3916 break; | 3903 break; |
3917 } | 3904 } |
| 3905 return create(valueID); |
3918 } | 3906 } |
3919 | 3907 |
3920 template<> inline CSSPrimitiveValue::operator EColorInterpolation() const | 3908 template<> inline CSSPrimitiveValue::operator EColorInterpolation() const |
3921 { | 3909 { |
3922 ASSERT(isValueID()); | 3910 ASSERT(isValueID()); |
3923 switch (value().valueID) { | 3911 switch (value().valueID) { |
3924 case CSSValueSRGB: | 3912 case CSSValueSRGB: |
3925 return CI_SRGB; | 3913 return CI_SRGB; |
3926 case CSSValueLinearRGB: | 3914 case CSSValueLinearRGB: |
3927 return CI_LINEARRGB; | 3915 return CI_LINEARRGB; |
3928 case CSSValueAuto: | 3916 case CSSValueAuto: |
3929 return CI_AUTO; | 3917 return CI_AUTO; |
3930 default: | 3918 default: |
3931 break; | 3919 break; |
3932 } | 3920 } |
3933 | 3921 |
3934 ASSERT_NOT_REACHED(); | 3922 ASSERT_NOT_REACHED(); |
3935 return CI_AUTO; | 3923 return CI_AUTO; |
3936 } | 3924 } |
3937 | 3925 |
3938 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EColorRendering e) | 3926 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EColorRendering e) |
3939 : CSSValue(PrimitiveClass) | |
3940 { | 3927 { |
3941 m_primitiveUnitType = CSS_VALUE_ID; | 3928 CSSValueID valueID = CSSValueInvalid; |
3942 switch (e) { | 3929 switch (e) { |
3943 case CR_AUTO: | 3930 case CR_AUTO: |
3944 m_value.valueID = CSSValueAuto; | 3931 valueID = CSSValueAuto; |
3945 break; | 3932 break; |
3946 case CR_OPTIMIZESPEED: | 3933 case CR_OPTIMIZESPEED: |
3947 m_value.valueID = CSSValueOptimizeSpeed; | 3934 valueID = CSSValueOptimizeSpeed; |
3948 break; | 3935 break; |
3949 case CR_OPTIMIZEQUALITY: | 3936 case CR_OPTIMIZEQUALITY: |
3950 m_value.valueID = CSSValueOptimizeQuality; | 3937 valueID = CSSValueOptimizeQuality; |
3951 break; | 3938 break; |
3952 } | 3939 } |
| 3940 return create(valueID); |
3953 } | 3941 } |
3954 | 3942 |
3955 template<> inline CSSPrimitiveValue::operator EColorRendering() const | 3943 template<> inline CSSPrimitiveValue::operator EColorRendering() const |
3956 { | 3944 { |
3957 ASSERT(isValueID()); | 3945 ASSERT(isValueID()); |
3958 switch (value().valueID) { | 3946 switch (value().valueID) { |
3959 case CSSValueOptimizeSpeed: | 3947 case CSSValueOptimizeSpeed: |
3960 return CR_OPTIMIZESPEED; | 3948 return CR_OPTIMIZESPEED; |
3961 case CSSValueOptimizeQuality: | 3949 case CSSValueOptimizeQuality: |
3962 return CR_OPTIMIZEQUALITY; | 3950 return CR_OPTIMIZEQUALITY; |
3963 case CSSValueAuto: | 3951 case CSSValueAuto: |
3964 return CR_AUTO; | 3952 return CR_AUTO; |
3965 default: | 3953 default: |
3966 break; | 3954 break; |
3967 } | 3955 } |
3968 | 3956 |
3969 ASSERT_NOT_REACHED(); | 3957 ASSERT_NOT_REACHED(); |
3970 return CR_AUTO; | 3958 return CR_AUTO; |
3971 } | 3959 } |
3972 | 3960 |
3973 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EDominantBaseline e) | 3961 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EDominantBaseline e) |
3974 : CSSValue(PrimitiveClass) | |
3975 { | 3962 { |
3976 m_primitiveUnitType = CSS_VALUE_ID; | 3963 CSSValueID valueID = CSSValueInvalid; |
3977 switch (e) { | 3964 switch (e) { |
3978 case DB_AUTO: | 3965 case DB_AUTO: |
3979 m_value.valueID = CSSValueAuto; | 3966 valueID = CSSValueAuto; |
3980 break; | 3967 break; |
3981 case DB_USE_SCRIPT: | 3968 case DB_USE_SCRIPT: |
3982 m_value.valueID = CSSValueUseScript; | 3969 valueID = CSSValueUseScript; |
3983 break; | 3970 break; |
3984 case DB_NO_CHANGE: | 3971 case DB_NO_CHANGE: |
3985 m_value.valueID = CSSValueNoChange; | 3972 valueID = CSSValueNoChange; |
3986 break; | 3973 break; |
3987 case DB_RESET_SIZE: | 3974 case DB_RESET_SIZE: |
3988 m_value.valueID = CSSValueResetSize; | 3975 valueID = CSSValueResetSize; |
3989 break; | 3976 break; |
3990 case DB_CENTRAL: | 3977 case DB_CENTRAL: |
3991 m_value.valueID = CSSValueCentral; | 3978 valueID = CSSValueCentral; |
3992 break; | 3979 break; |
3993 case DB_MIDDLE: | 3980 case DB_MIDDLE: |
3994 m_value.valueID = CSSValueMiddle; | 3981 valueID = CSSValueMiddle; |
3995 break; | 3982 break; |
3996 case DB_TEXT_BEFORE_EDGE: | 3983 case DB_TEXT_BEFORE_EDGE: |
3997 m_value.valueID = CSSValueTextBeforeEdge; | 3984 valueID = CSSValueTextBeforeEdge; |
3998 break; | 3985 break; |
3999 case DB_TEXT_AFTER_EDGE: | 3986 case DB_TEXT_AFTER_EDGE: |
4000 m_value.valueID = CSSValueTextAfterEdge; | 3987 valueID = CSSValueTextAfterEdge; |
4001 break; | 3988 break; |
4002 case DB_IDEOGRAPHIC: | 3989 case DB_IDEOGRAPHIC: |
4003 m_value.valueID = CSSValueIdeographic; | 3990 valueID = CSSValueIdeographic; |
4004 break; | 3991 break; |
4005 case DB_ALPHABETIC: | 3992 case DB_ALPHABETIC: |
4006 m_value.valueID = CSSValueAlphabetic; | 3993 valueID = CSSValueAlphabetic; |
4007 break; | 3994 break; |
4008 case DB_HANGING: | 3995 case DB_HANGING: |
4009 m_value.valueID = CSSValueHanging; | 3996 valueID = CSSValueHanging; |
4010 break; | 3997 break; |
4011 case DB_MATHEMATICAL: | 3998 case DB_MATHEMATICAL: |
4012 m_value.valueID = CSSValueMathematical; | 3999 valueID = CSSValueMathematical; |
4013 break; | 4000 break; |
4014 } | 4001 } |
| 4002 return create(valueID); |
4015 } | 4003 } |
4016 | 4004 |
4017 template<> inline CSSPrimitiveValue::operator EDominantBaseline() const | 4005 template<> inline CSSPrimitiveValue::operator EDominantBaseline() const |
4018 { | 4006 { |
4019 ASSERT(isValueID()); | 4007 ASSERT(isValueID()); |
4020 switch (value().valueID) { | 4008 switch (value().valueID) { |
4021 case CSSValueAuto: | 4009 case CSSValueAuto: |
4022 return DB_AUTO; | 4010 return DB_AUTO; |
4023 case CSSValueUseScript: | 4011 case CSSValueUseScript: |
4024 return DB_USE_SCRIPT; | 4012 return DB_USE_SCRIPT; |
(...skipping 18 matching lines...) Expand all Loading... |
4043 case CSSValueTextBeforeEdge: | 4031 case CSSValueTextBeforeEdge: |
4044 return DB_TEXT_BEFORE_EDGE; | 4032 return DB_TEXT_BEFORE_EDGE; |
4045 default: | 4033 default: |
4046 break; | 4034 break; |
4047 } | 4035 } |
4048 | 4036 |
4049 ASSERT_NOT_REACHED(); | 4037 ASSERT_NOT_REACHED(); |
4050 return DB_AUTO; | 4038 return DB_AUTO; |
4051 } | 4039 } |
4052 | 4040 |
4053 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EShapeRendering e) | 4041 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EShapeRendering e) |
4054 : CSSValue(PrimitiveClass) | |
4055 { | 4042 { |
4056 m_primitiveUnitType = CSS_VALUE_ID; | 4043 CSSValueID valueID = CSSValueInvalid; |
4057 switch (e) { | 4044 switch (e) { |
4058 case SR_AUTO: | 4045 case SR_AUTO: |
4059 m_value.valueID = CSSValueAuto; | 4046 valueID = CSSValueAuto; |
4060 break; | 4047 break; |
4061 case SR_OPTIMIZESPEED: | 4048 case SR_OPTIMIZESPEED: |
4062 m_value.valueID = CSSValueOptimizeSpeed; | 4049 valueID = CSSValueOptimizeSpeed; |
4063 break; | 4050 break; |
4064 case SR_CRISPEDGES: | 4051 case SR_CRISPEDGES: |
4065 m_value.valueID = CSSValueCrispEdges; | 4052 valueID = CSSValueCrispEdges; |
4066 break; | 4053 break; |
4067 case SR_GEOMETRICPRECISION: | 4054 case SR_GEOMETRICPRECISION: |
4068 m_value.valueID = CSSValueGeometricPrecision; | 4055 valueID = CSSValueGeometricPrecision; |
4069 break; | 4056 break; |
4070 } | 4057 } |
| 4058 return create(valueID); |
4071 } | 4059 } |
4072 | 4060 |
4073 template<> inline CSSPrimitiveValue::operator EShapeRendering() const | 4061 template<> inline CSSPrimitiveValue::operator EShapeRendering() const |
4074 { | 4062 { |
4075 ASSERT(isValueID()); | 4063 ASSERT(isValueID()); |
4076 switch (value().valueID) { | 4064 switch (value().valueID) { |
4077 case CSSValueAuto: | 4065 case CSSValueAuto: |
4078 return SR_AUTO; | 4066 return SR_AUTO; |
4079 case CSSValueOptimizeSpeed: | 4067 case CSSValueOptimizeSpeed: |
4080 return SR_OPTIMIZESPEED; | 4068 return SR_OPTIMIZESPEED; |
4081 case CSSValueCrispEdges: | 4069 case CSSValueCrispEdges: |
4082 return SR_CRISPEDGES; | 4070 return SR_CRISPEDGES; |
4083 case CSSValueGeometricPrecision: | 4071 case CSSValueGeometricPrecision: |
4084 return SR_GEOMETRICPRECISION; | 4072 return SR_GEOMETRICPRECISION; |
4085 default: | 4073 default: |
4086 break; | 4074 break; |
4087 } | 4075 } |
4088 | 4076 |
4089 ASSERT_NOT_REACHED(); | 4077 ASSERT_NOT_REACHED(); |
4090 return SR_AUTO; | 4078 return SR_AUTO; |
4091 } | 4079 } |
4092 | 4080 |
4093 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextAnchor e) | 4081 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ETextAnchor e) |
4094 : CSSValue(PrimitiveClass) | |
4095 { | 4082 { |
4096 m_primitiveUnitType = CSS_VALUE_ID; | 4083 CSSValueID valueID = CSSValueInvalid; |
4097 switch (e) { | 4084 switch (e) { |
4098 case TA_START: | 4085 case TA_START: |
4099 m_value.valueID = CSSValueStart; | 4086 valueID = CSSValueStart; |
4100 break; | 4087 break; |
4101 case TA_MIDDLE: | 4088 case TA_MIDDLE: |
4102 m_value.valueID = CSSValueMiddle; | 4089 valueID = CSSValueMiddle; |
4103 break; | 4090 break; |
4104 case TA_END: | 4091 case TA_END: |
4105 m_value.valueID = CSSValueEnd; | 4092 valueID = CSSValueEnd; |
4106 break; | 4093 break; |
4107 } | 4094 } |
| 4095 return create(valueID); |
4108 } | 4096 } |
4109 | 4097 |
4110 template<> inline CSSPrimitiveValue::operator ETextAnchor() const | 4098 template<> inline CSSPrimitiveValue::operator ETextAnchor() const |
4111 { | 4099 { |
4112 ASSERT(isValueID()); | 4100 ASSERT(isValueID()); |
4113 switch (value().valueID) { | 4101 switch (value().valueID) { |
4114 case CSSValueStart: | 4102 case CSSValueStart: |
4115 return TA_START; | 4103 return TA_START; |
4116 case CSSValueMiddle: | 4104 case CSSValueMiddle: |
4117 return TA_MIDDLE; | 4105 return TA_MIDDLE; |
4118 case CSSValueEnd: | 4106 case CSSValueEnd: |
4119 return TA_END; | 4107 return TA_END; |
4120 default: | 4108 default: |
4121 break; | 4109 break; |
4122 } | 4110 } |
4123 | 4111 |
4124 ASSERT_NOT_REACHED(); | 4112 ASSERT_NOT_REACHED(); |
4125 return TA_START; | 4113 return TA_START; |
4126 } | 4114 } |
4127 | 4115 |
4128 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(SVGWritingMode e) | 4116 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(SVGWritingMode e) |
4129 : CSSValue(PrimitiveClass) | |
4130 { | 4117 { |
4131 m_primitiveUnitType = CSS_VALUE_ID; | 4118 CSSValueID valueID = CSSValueInvalid; |
4132 switch (e) { | 4119 switch (e) { |
4133 case WM_LRTB: | 4120 case WM_LRTB: |
4134 m_value.valueID = CSSValueLrTb; | 4121 valueID = CSSValueLrTb; |
4135 break; | 4122 break; |
4136 case WM_LR: | 4123 case WM_LR: |
4137 m_value.valueID = CSSValueLr; | 4124 valueID = CSSValueLr; |
4138 break; | 4125 break; |
4139 case WM_RLTB: | 4126 case WM_RLTB: |
4140 m_value.valueID = CSSValueRlTb; | 4127 valueID = CSSValueRlTb; |
4141 break; | 4128 break; |
4142 case WM_RL: | 4129 case WM_RL: |
4143 m_value.valueID = CSSValueRl; | 4130 valueID = CSSValueRl; |
4144 break; | 4131 break; |
4145 case WM_TBRL: | 4132 case WM_TBRL: |
4146 m_value.valueID = CSSValueTbRl; | 4133 valueID = CSSValueTbRl; |
4147 break; | 4134 break; |
4148 case WM_TB: | 4135 case WM_TB: |
4149 m_value.valueID = CSSValueTb; | 4136 valueID = CSSValueTb; |
4150 break; | 4137 break; |
4151 } | 4138 } |
| 4139 return create(valueID); |
4152 } | 4140 } |
4153 | 4141 |
4154 template<> inline CSSPrimitiveValue::operator SVGWritingMode() const | 4142 template<> inline CSSPrimitiveValue::operator SVGWritingMode() const |
4155 { | 4143 { |
4156 ASSERT(isValueID()); | 4144 ASSERT(isValueID()); |
4157 switch (value().valueID) { | 4145 switch (value().valueID) { |
4158 case CSSValueLrTb: | 4146 case CSSValueLrTb: |
4159 return WM_LRTB; | 4147 return WM_LRTB; |
4160 case CSSValueLr: | 4148 case CSSValueLr: |
4161 return WM_LR; | 4149 return WM_LR; |
4162 case CSSValueRlTb: | 4150 case CSSValueRlTb: |
4163 return WM_RLTB; | 4151 return WM_RLTB; |
4164 case CSSValueRl: | 4152 case CSSValueRl: |
4165 return WM_RL; | 4153 return WM_RL; |
4166 case CSSValueTbRl: | 4154 case CSSValueTbRl: |
4167 return WM_TBRL; | 4155 return WM_TBRL; |
4168 case CSSValueTb: | 4156 case CSSValueTb: |
4169 return WM_TB; | 4157 return WM_TB; |
4170 default: | 4158 default: |
4171 break; | 4159 break; |
4172 } | 4160 } |
4173 | 4161 |
4174 ASSERT_NOT_REACHED(); | 4162 ASSERT_NOT_REACHED(); |
4175 return WM_LRTB; | 4163 return WM_LRTB; |
4176 } | 4164 } |
4177 | 4165 |
4178 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EVectorEffect e) | 4166 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EVectorEffect e) |
4179 : CSSValue(PrimitiveClass) | |
4180 { | 4167 { |
4181 m_primitiveUnitType = CSS_VALUE_ID; | 4168 CSSValueID valueID = CSSValueInvalid; |
4182 switch (e) { | 4169 switch (e) { |
4183 case VE_NONE: | 4170 case VE_NONE: |
4184 m_value.valueID = CSSValueNone; | 4171 valueID = CSSValueNone; |
4185 break; | 4172 break; |
4186 case VE_NON_SCALING_STROKE: | 4173 case VE_NON_SCALING_STROKE: |
4187 m_value.valueID = CSSValueNonScalingStroke; | 4174 valueID = CSSValueNonScalingStroke; |
4188 break; | 4175 break; |
4189 } | 4176 } |
| 4177 return create(valueID); |
4190 } | 4178 } |
4191 | 4179 |
4192 template<> inline CSSPrimitiveValue::operator EVectorEffect() const | 4180 template<> inline CSSPrimitiveValue::operator EVectorEffect() const |
4193 { | 4181 { |
4194 ASSERT(isValueID()); | 4182 ASSERT(isValueID()); |
4195 switch (value().valueID) { | 4183 switch (value().valueID) { |
4196 case CSSValueNone: | 4184 case CSSValueNone: |
4197 return VE_NONE; | 4185 return VE_NONE; |
4198 case CSSValueNonScalingStroke: | 4186 case CSSValueNonScalingStroke: |
4199 return VE_NON_SCALING_STROKE; | 4187 return VE_NON_SCALING_STROKE; |
4200 default: | 4188 default: |
4201 break; | 4189 break; |
4202 } | 4190 } |
4203 | 4191 |
4204 ASSERT_NOT_REACHED(); | 4192 ASSERT_NOT_REACHED(); |
4205 return VE_NONE; | 4193 return VE_NONE; |
4206 } | 4194 } |
4207 | 4195 |
4208 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPaintOrderType e) | 4196 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EPaintOrderType e) |
4209 : CSSValue(PrimitiveClass) | |
4210 { | 4197 { |
4211 m_primitiveUnitType = CSS_VALUE_ID; | 4198 CSSValueID valueID = CSSValueInvalid; |
4212 switch (e) { | 4199 switch (e) { |
4213 case PT_FILL: | 4200 case PT_FILL: |
4214 m_value.valueID = CSSValueFill; | 4201 valueID = CSSValueFill; |
4215 break; | 4202 break; |
4216 case PT_STROKE: | 4203 case PT_STROKE: |
4217 m_value.valueID = CSSValueStroke; | 4204 valueID = CSSValueStroke; |
4218 break; | 4205 break; |
4219 case PT_MARKERS: | 4206 case PT_MARKERS: |
4220 m_value.valueID = CSSValueMarkers; | 4207 valueID = CSSValueMarkers; |
4221 break; | 4208 break; |
4222 default: | 4209 default: |
4223 ASSERT_NOT_REACHED(); | 4210 ASSERT_NOT_REACHED(); |
4224 m_value.valueID = CSSValueFill; | 4211 valueID = CSSValueFill; |
4225 break; | 4212 break; |
4226 } | 4213 } |
| 4214 return create(valueID); |
4227 } | 4215 } |
4228 | 4216 |
4229 template<> inline CSSPrimitiveValue::operator EPaintOrderType() const | 4217 template<> inline CSSPrimitiveValue::operator EPaintOrderType() const |
4230 { | 4218 { |
4231 ASSERT(isValueID()); | 4219 ASSERT(isValueID()); |
4232 switch (value().valueID) { | 4220 switch (value().valueID) { |
4233 case CSSValueFill: | 4221 case CSSValueFill: |
4234 return PT_FILL; | 4222 return PT_FILL; |
4235 case CSSValueStroke: | 4223 case CSSValueStroke: |
4236 return PT_STROKE; | 4224 return PT_STROKE; |
4237 case CSSValueMarkers: | 4225 case CSSValueMarkers: |
4238 return PT_MARKERS; | 4226 return PT_MARKERS; |
4239 default: | 4227 default: |
4240 break; | 4228 break; |
4241 } | 4229 } |
4242 | 4230 |
4243 ASSERT_NOT_REACHED(); | 4231 ASSERT_NOT_REACHED(); |
4244 return PT_NONE; | 4232 return PT_NONE; |
4245 } | 4233 } |
4246 | 4234 |
4247 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMaskType e) | 4235 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EMaskType e) |
4248 : CSSValue(PrimitiveClass) | |
4249 { | 4236 { |
4250 m_primitiveUnitType = CSS_VALUE_ID; | 4237 CSSValueID valueID = CSSValueInvalid; |
4251 switch (e) { | 4238 switch (e) { |
4252 case MT_LUMINANCE: | 4239 case MT_LUMINANCE: |
4253 m_value.valueID = CSSValueLuminance; | 4240 valueID = CSSValueLuminance; |
4254 break; | 4241 break; |
4255 case MT_ALPHA: | 4242 case MT_ALPHA: |
4256 m_value.valueID = CSSValueAlpha; | 4243 valueID = CSSValueAlpha; |
4257 break; | 4244 break; |
4258 } | 4245 } |
| 4246 return create(valueID); |
4259 } | 4247 } |
4260 | 4248 |
4261 template<> inline CSSPrimitiveValue::operator EMaskType() const | 4249 template<> inline CSSPrimitiveValue::operator EMaskType() const |
4262 { | 4250 { |
4263 ASSERT(isValueID()); | 4251 ASSERT(isValueID()); |
4264 switch (value().valueID) { | 4252 switch (value().valueID) { |
4265 case CSSValueLuminance: | 4253 case CSSValueLuminance: |
4266 return MT_LUMINANCE; | 4254 return MT_LUMINANCE; |
4267 case CSSValueAlpha: | 4255 case CSSValueAlpha: |
4268 return MT_ALPHA; | 4256 return MT_ALPHA; |
(...skipping 28 matching lines...) Expand all Loading... |
4297 case CSSValueManipulation: | 4285 case CSSValueManipulation: |
4298 return TouchActionPanX | TouchActionPanY | TouchActionPinchZoom; | 4286 return TouchActionPanX | TouchActionPanY | TouchActionPinchZoom; |
4299 default: | 4287 default: |
4300 break; | 4288 break; |
4301 } | 4289 } |
4302 | 4290 |
4303 ASSERT_NOT_REACHED(); | 4291 ASSERT_NOT_REACHED(); |
4304 return TouchActionNone; | 4292 return TouchActionNone; |
4305 } | 4293 } |
4306 | 4294 |
4307 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EIsolation i) | 4295 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(EIsolation i) |
4308 : CSSValue(PrimitiveClass) | |
4309 { | 4296 { |
4310 m_primitiveUnitType = CSS_VALUE_ID; | 4297 CSSValueID valueID = CSSValueInvalid; |
4311 switch (i) { | 4298 switch (i) { |
4312 case IsolationAuto: | 4299 case IsolationAuto: |
4313 m_value.valueID = CSSValueAuto; | 4300 valueID = CSSValueAuto; |
4314 break; | 4301 break; |
4315 case IsolationIsolate: | 4302 case IsolationIsolate: |
4316 m_value.valueID = CSSValueIsolate; | 4303 valueID = CSSValueIsolate; |
4317 break; | 4304 break; |
4318 } | 4305 } |
| 4306 return create(valueID); |
4319 } | 4307 } |
4320 | 4308 |
4321 template<> inline CSSPrimitiveValue::operator EIsolation() const | 4309 template<> inline CSSPrimitiveValue::operator EIsolation() const |
4322 { | 4310 { |
4323 ASSERT(isValueID()); | 4311 ASSERT(isValueID()); |
4324 switch (value().valueID) { | 4312 switch (value().valueID) { |
4325 case CSSValueAuto: | 4313 case CSSValueAuto: |
4326 return IsolationAuto; | 4314 return IsolationAuto; |
4327 case CSSValueIsolate: | 4315 case CSSValueIsolate: |
4328 return IsolationIsolate; | 4316 return IsolationIsolate; |
(...skipping 17 matching lines...) Expand all Loading... |
4346 case CSSValueScrollEvent: | 4334 case CSSValueScrollEvent: |
4347 return WebScrollBlocksOnScrollEvent; | 4335 return WebScrollBlocksOnScrollEvent; |
4348 default: | 4336 default: |
4349 break; | 4337 break; |
4350 } | 4338 } |
4351 | 4339 |
4352 ASSERT_NOT_REACHED(); | 4340 ASSERT_NOT_REACHED(); |
4353 return WebScrollBlocksOnNone; | 4341 return WebScrollBlocksOnNone; |
4354 } | 4342 } |
4355 | 4343 |
4356 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(CSSBoxType cssBox) | 4344 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(CSSBoxType cssBox) |
4357 : CSSValue(PrimitiveClass) | |
4358 { | 4345 { |
4359 m_primitiveUnitType = CSS_VALUE_ID; | 4346 CSSValueID valueID = CSSValueInvalid; |
4360 switch (cssBox) { | 4347 switch (cssBox) { |
4361 case MarginBox: | 4348 case MarginBox: |
4362 m_value.valueID = CSSValueMarginBox; | 4349 valueID = CSSValueMarginBox; |
4363 break; | 4350 break; |
4364 case BorderBox: | 4351 case BorderBox: |
4365 m_value.valueID = CSSValueBorderBox; | 4352 valueID = CSSValueBorderBox; |
4366 break; | 4353 break; |
4367 case PaddingBox: | 4354 case PaddingBox: |
4368 m_value.valueID = CSSValuePaddingBox; | 4355 valueID = CSSValuePaddingBox; |
4369 break; | 4356 break; |
4370 case ContentBox: | 4357 case ContentBox: |
4371 m_value.valueID = CSSValueContentBox; | 4358 valueID = CSSValueContentBox; |
4372 break; | 4359 break; |
4373 case BoxMissing: | 4360 case BoxMissing: |
4374 // The missing box should convert to a null primitive value. | 4361 // The missing box should convert to a null primitive value. |
4375 ASSERT_NOT_REACHED(); | 4362 ASSERT_NOT_REACHED(); |
4376 } | 4363 } |
| 4364 return create(valueID); |
4377 } | 4365 } |
4378 | 4366 |
4379 template<> inline CSSPrimitiveValue::operator CSSBoxType() const | 4367 template<> inline CSSPrimitiveValue::operator CSSBoxType() const |
4380 { | 4368 { |
4381 switch (getValueID()) { | 4369 switch (getValueID()) { |
4382 case CSSValueMarginBox: | 4370 case CSSValueMarginBox: |
4383 return MarginBox; | 4371 return MarginBox; |
4384 case CSSValueBorderBox: | 4372 case CSSValueBorderBox: |
4385 return BorderBox; | 4373 return BorderBox; |
4386 case CSSValuePaddingBox: | 4374 case CSSValuePaddingBox: |
4387 return PaddingBox; | 4375 return PaddingBox; |
4388 case CSSValueContentBox: | 4376 case CSSValueContentBox: |
4389 return ContentBox; | 4377 return ContentBox; |
4390 default: | 4378 default: |
4391 break; | 4379 break; |
4392 } | 4380 } |
4393 ASSERT_NOT_REACHED(); | 4381 ASSERT_NOT_REACHED(); |
4394 return ContentBox; | 4382 return ContentBox; |
4395 } | 4383 } |
4396 | 4384 |
4397 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ItemPosition itemPosition
) | 4385 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ItemPosition itemPosition) |
4398 : CSSValue(PrimitiveClass) | |
4399 { | 4386 { |
4400 m_primitiveUnitType = CSS_VALUE_ID; | 4387 CSSValueID valueID = CSSValueInvalid; |
4401 switch (itemPosition) { | 4388 switch (itemPosition) { |
4402 case ItemPositionAuto: | 4389 case ItemPositionAuto: |
4403 m_value.valueID = CSSValueAuto; | 4390 valueID = CSSValueAuto; |
4404 break; | 4391 break; |
4405 case ItemPositionStretch: | 4392 case ItemPositionStretch: |
4406 m_value.valueID = CSSValueStretch; | 4393 valueID = CSSValueStretch; |
4407 break; | 4394 break; |
4408 case ItemPositionBaseline: | 4395 case ItemPositionBaseline: |
4409 m_value.valueID = CSSValueBaseline; | 4396 valueID = CSSValueBaseline; |
4410 break; | 4397 break; |
4411 case ItemPositionLastBaseline: | 4398 case ItemPositionLastBaseline: |
4412 m_value.valueID = CSSValueLastBaseline; | 4399 valueID = CSSValueLastBaseline; |
4413 break; | 4400 break; |
4414 case ItemPositionCenter: | 4401 case ItemPositionCenter: |
4415 m_value.valueID = CSSValueCenter; | 4402 valueID = CSSValueCenter; |
4416 break; | 4403 break; |
4417 case ItemPositionStart: | 4404 case ItemPositionStart: |
4418 m_value.valueID = CSSValueStart; | 4405 valueID = CSSValueStart; |
4419 break; | 4406 break; |
4420 case ItemPositionEnd: | 4407 case ItemPositionEnd: |
4421 m_value.valueID = CSSValueEnd; | 4408 valueID = CSSValueEnd; |
4422 break; | 4409 break; |
4423 case ItemPositionSelfStart: | 4410 case ItemPositionSelfStart: |
4424 m_value.valueID = CSSValueSelfStart; | 4411 valueID = CSSValueSelfStart; |
4425 break; | 4412 break; |
4426 case ItemPositionSelfEnd: | 4413 case ItemPositionSelfEnd: |
4427 m_value.valueID = CSSValueSelfEnd; | 4414 valueID = CSSValueSelfEnd; |
4428 break; | 4415 break; |
4429 case ItemPositionFlexStart: | 4416 case ItemPositionFlexStart: |
4430 m_value.valueID = CSSValueFlexStart; | 4417 valueID = CSSValueFlexStart; |
4431 break; | 4418 break; |
4432 case ItemPositionFlexEnd: | 4419 case ItemPositionFlexEnd: |
4433 m_value.valueID = CSSValueFlexEnd; | 4420 valueID = CSSValueFlexEnd; |
4434 break; | 4421 break; |
4435 case ItemPositionLeft: | 4422 case ItemPositionLeft: |
4436 m_value.valueID = CSSValueLeft; | 4423 valueID = CSSValueLeft; |
4437 break; | 4424 break; |
4438 case ItemPositionRight: | 4425 case ItemPositionRight: |
4439 m_value.valueID = CSSValueRight; | 4426 valueID = CSSValueRight; |
4440 break; | 4427 break; |
4441 } | 4428 } |
| 4429 return create(valueID); |
4442 } | 4430 } |
4443 | 4431 |
4444 template<> inline CSSPrimitiveValue::operator ItemPosition() const | 4432 template<> inline CSSPrimitiveValue::operator ItemPosition() const |
4445 { | 4433 { |
4446 switch (value().valueID) { | 4434 switch (value().valueID) { |
4447 case CSSValueAuto: | 4435 case CSSValueAuto: |
4448 return ItemPositionAuto; | 4436 return ItemPositionAuto; |
4449 case CSSValueStretch: | 4437 case CSSValueStretch: |
4450 return ItemPositionStretch; | 4438 return ItemPositionStretch; |
4451 case CSSValueBaseline: | 4439 case CSSValueBaseline: |
(...skipping 18 matching lines...) Expand all Loading... |
4470 return ItemPositionLeft; | 4458 return ItemPositionLeft; |
4471 case CSSValueRight: | 4459 case CSSValueRight: |
4472 return ItemPositionRight; | 4460 return ItemPositionRight; |
4473 default: | 4461 default: |
4474 break; | 4462 break; |
4475 } | 4463 } |
4476 ASSERT_NOT_REACHED(); | 4464 ASSERT_NOT_REACHED(); |
4477 return ItemPositionAuto; | 4465 return ItemPositionAuto; |
4478 } | 4466 } |
4479 | 4467 |
4480 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ContentPosition contentPo
sition) | 4468 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ContentPosition contentPosition) |
4481 : CSSValue(PrimitiveClass) | |
4482 { | 4469 { |
4483 m_primitiveUnitType = CSS_VALUE_ID; | 4470 CSSValueID valueID = CSSValueInvalid; |
4484 switch (contentPosition) { | 4471 switch (contentPosition) { |
4485 case ContentPositionAuto: | 4472 case ContentPositionAuto: |
4486 m_value.valueID = CSSValueAuto; | 4473 valueID = CSSValueAuto; |
4487 break; | 4474 break; |
4488 case ContentPositionBaseline: | 4475 case ContentPositionBaseline: |
4489 m_value.valueID = CSSValueBaseline; | 4476 valueID = CSSValueBaseline; |
4490 break; | 4477 break; |
4491 case ContentPositionLastBaseline: | 4478 case ContentPositionLastBaseline: |
4492 m_value.valueID = CSSValueLastBaseline; | 4479 valueID = CSSValueLastBaseline; |
4493 break; | 4480 break; |
4494 case ContentPositionCenter: | 4481 case ContentPositionCenter: |
4495 m_value.valueID = CSSValueCenter; | 4482 valueID = CSSValueCenter; |
4496 break; | 4483 break; |
4497 case ContentPositionStart: | 4484 case ContentPositionStart: |
4498 m_value.valueID = CSSValueStart; | 4485 valueID = CSSValueStart; |
4499 break; | 4486 break; |
4500 case ContentPositionEnd: | 4487 case ContentPositionEnd: |
4501 m_value.valueID = CSSValueEnd; | 4488 valueID = CSSValueEnd; |
4502 break; | 4489 break; |
4503 case ContentPositionFlexStart: | 4490 case ContentPositionFlexStart: |
4504 m_value.valueID = CSSValueFlexStart; | 4491 valueID = CSSValueFlexStart; |
4505 break; | 4492 break; |
4506 case ContentPositionFlexEnd: | 4493 case ContentPositionFlexEnd: |
4507 m_value.valueID = CSSValueFlexEnd; | 4494 valueID = CSSValueFlexEnd; |
4508 break; | 4495 break; |
4509 case ContentPositionLeft: | 4496 case ContentPositionLeft: |
4510 m_value.valueID = CSSValueLeft; | 4497 valueID = CSSValueLeft; |
4511 break; | 4498 break; |
4512 case ContentPositionRight: | 4499 case ContentPositionRight: |
4513 m_value.valueID = CSSValueRight; | 4500 valueID = CSSValueRight; |
4514 break; | 4501 break; |
4515 } | 4502 } |
| 4503 return create(valueID); |
4516 } | 4504 } |
4517 | 4505 |
4518 template<> inline CSSPrimitiveValue::operator ContentPosition() const | 4506 template<> inline CSSPrimitiveValue::operator ContentPosition() const |
4519 { | 4507 { |
4520 switch (value().valueID) { | 4508 switch (value().valueID) { |
4521 case CSSValueAuto: | 4509 case CSSValueAuto: |
4522 return ContentPositionAuto; | 4510 return ContentPositionAuto; |
4523 case CSSValueBaseline: | 4511 case CSSValueBaseline: |
4524 return ContentPositionBaseline; | 4512 return ContentPositionBaseline; |
4525 case CSSValueLastBaseline: | 4513 case CSSValueLastBaseline: |
(...skipping 12 matching lines...) Expand all Loading... |
4538 return ContentPositionLeft; | 4526 return ContentPositionLeft; |
4539 case CSSValueRight: | 4527 case CSSValueRight: |
4540 return ContentPositionRight; | 4528 return ContentPositionRight; |
4541 default: | 4529 default: |
4542 break; | 4530 break; |
4543 } | 4531 } |
4544 ASSERT_NOT_REACHED(); | 4532 ASSERT_NOT_REACHED(); |
4545 return ContentPositionAuto; | 4533 return ContentPositionAuto; |
4546 } | 4534 } |
4547 | 4535 |
4548 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ContentDistributionType c
ontentDistribution) | 4536 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ContentDistributionType contentDistribution) |
4549 : CSSValue(PrimitiveClass) | |
4550 { | 4537 { |
4551 m_primitiveUnitType = CSS_VALUE_ID; | 4538 CSSValueID valueID = CSSValueInvalid; |
4552 switch (contentDistribution) { | 4539 switch (contentDistribution) { |
4553 case ContentDistributionDefault: | 4540 case ContentDistributionDefault: |
4554 m_value.valueID = CSSValueDefault; | 4541 valueID = CSSValueDefault; |
4555 break; | 4542 break; |
4556 case ContentDistributionSpaceBetween: | 4543 case ContentDistributionSpaceBetween: |
4557 m_value.valueID = CSSValueSpaceBetween; | 4544 valueID = CSSValueSpaceBetween; |
4558 break; | 4545 break; |
4559 case ContentDistributionSpaceAround: | 4546 case ContentDistributionSpaceAround: |
4560 m_value.valueID = CSSValueSpaceAround; | 4547 valueID = CSSValueSpaceAround; |
4561 break; | 4548 break; |
4562 case ContentDistributionSpaceEvenly: | 4549 case ContentDistributionSpaceEvenly: |
4563 m_value.valueID = CSSValueSpaceEvenly; | 4550 valueID = CSSValueSpaceEvenly; |
4564 break; | 4551 break; |
4565 case ContentDistributionStretch: | 4552 case ContentDistributionStretch: |
4566 m_value.valueID = CSSValueStretch; | 4553 valueID = CSSValueStretch; |
4567 break; | 4554 break; |
4568 } | 4555 } |
| 4556 return create(valueID); |
4569 } | 4557 } |
4570 | 4558 |
4571 template<> inline CSSPrimitiveValue::operator ContentDistributionType() const | 4559 template<> inline CSSPrimitiveValue::operator ContentDistributionType() const |
4572 { | 4560 { |
4573 switch (value().valueID) { | 4561 switch (value().valueID) { |
4574 case CSSValueSpaceBetween: | 4562 case CSSValueSpaceBetween: |
4575 return ContentDistributionSpaceBetween; | 4563 return ContentDistributionSpaceBetween; |
4576 case CSSValueSpaceAround: | 4564 case CSSValueSpaceAround: |
4577 return ContentDistributionSpaceAround; | 4565 return ContentDistributionSpaceAround; |
4578 case CSSValueSpaceEvenly: | 4566 case CSSValueSpaceEvenly: |
4579 return ContentDistributionSpaceEvenly; | 4567 return ContentDistributionSpaceEvenly; |
4580 case CSSValueStretch: | 4568 case CSSValueStretch: |
4581 return ContentDistributionStretch; | 4569 return ContentDistributionStretch; |
4582 default: | 4570 default: |
4583 break; | 4571 break; |
4584 } | 4572 } |
4585 ASSERT_NOT_REACHED(); | 4573 ASSERT_NOT_REACHED(); |
4586 return ContentDistributionStretch; | 4574 return ContentDistributionStretch; |
4587 } | 4575 } |
4588 | 4576 |
4589 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(OverflowAlignment overflo
wAlignment) | 4577 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(OverflowAlignment overflowAlignment) |
4590 : CSSValue(PrimitiveClass) | |
4591 { | 4578 { |
4592 m_primitiveUnitType = CSS_VALUE_ID; | 4579 CSSValueID valueID = CSSValueInvalid; |
4593 switch (overflowAlignment) { | 4580 switch (overflowAlignment) { |
4594 case OverflowAlignmentDefault: | 4581 case OverflowAlignmentDefault: |
4595 m_value.valueID = CSSValueDefault; | 4582 valueID = CSSValueDefault; |
4596 break; | 4583 break; |
4597 case OverflowAlignmentTrue: | 4584 case OverflowAlignmentTrue: |
4598 m_value.valueID = CSSValueTrue; | 4585 valueID = CSSValueTrue; |
4599 break; | 4586 break; |
4600 case OverflowAlignmentSafe: | 4587 case OverflowAlignmentSafe: |
4601 m_value.valueID = CSSValueSafe; | 4588 valueID = CSSValueSafe; |
4602 break; | 4589 break; |
4603 } | 4590 } |
| 4591 return create(valueID); |
4604 } | 4592 } |
4605 | 4593 |
4606 template<> inline CSSPrimitiveValue::operator OverflowAlignment() const | 4594 template<> inline CSSPrimitiveValue::operator OverflowAlignment() const |
4607 { | 4595 { |
4608 switch (value().valueID) { | 4596 switch (value().valueID) { |
4609 case CSSValueTrue: | 4597 case CSSValueTrue: |
4610 return OverflowAlignmentTrue; | 4598 return OverflowAlignmentTrue; |
4611 case CSSValueSafe: | 4599 case CSSValueSafe: |
4612 return OverflowAlignmentSafe; | 4600 return OverflowAlignmentSafe; |
4613 default: | 4601 default: |
4614 break; | 4602 break; |
4615 } | 4603 } |
4616 ASSERT_NOT_REACHED(); | 4604 ASSERT_NOT_REACHED(); |
4617 return OverflowAlignmentTrue; | 4605 return OverflowAlignmentTrue; |
4618 } | 4606 } |
4619 | 4607 |
4620 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ScrollBehavior behavior) | 4608 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ScrollBehavior behavior) |
4621 : CSSValue(PrimitiveClass) | |
4622 { | 4609 { |
4623 m_primitiveUnitType = CSS_VALUE_ID; | 4610 CSSValueID valueID = CSSValueInvalid; |
4624 switch (behavior) { | 4611 switch (behavior) { |
4625 case ScrollBehaviorAuto: | 4612 case ScrollBehaviorAuto: |
4626 m_value.valueID = CSSValueAuto; | 4613 valueID = CSSValueAuto; |
4627 break; | 4614 break; |
4628 case ScrollBehaviorSmooth: | 4615 case ScrollBehaviorSmooth: |
4629 m_value.valueID = CSSValueSmooth; | 4616 valueID = CSSValueSmooth; |
4630 break; | 4617 break; |
4631 case ScrollBehaviorInstant: | 4618 case ScrollBehaviorInstant: |
4632 // Behavior 'instant' is only allowed in ScrollOptions arguments passed
to | 4619 // Behavior 'instant' is only allowed in ScrollOptions arguments passed
to |
4633 // CSSOM scroll APIs. | 4620 // CSSOM scroll APIs. |
4634 ASSERT_NOT_REACHED(); | 4621 ASSERT_NOT_REACHED(); |
4635 } | 4622 } |
| 4623 return create(valueID); |
4636 } | 4624 } |
4637 | 4625 |
4638 template<> inline CSSPrimitiveValue::operator ScrollBehavior() const | 4626 template<> inline CSSPrimitiveValue::operator ScrollBehavior() const |
4639 { | 4627 { |
4640 switch (getValueID()) { | 4628 switch (getValueID()) { |
4641 case CSSValueAuto: | 4629 case CSSValueAuto: |
4642 return ScrollBehaviorAuto; | 4630 return ScrollBehaviorAuto; |
4643 case CSSValueSmooth: | 4631 case CSSValueSmooth: |
4644 return ScrollBehaviorSmooth; | 4632 return ScrollBehaviorSmooth; |
4645 default: | 4633 default: |
4646 break; | 4634 break; |
4647 } | 4635 } |
4648 ASSERT_NOT_REACHED(); | 4636 ASSERT_NOT_REACHED(); |
4649 return ScrollBehaviorAuto; | 4637 return ScrollBehaviorAuto; |
4650 } | 4638 } |
4651 | 4639 |
4652 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ScrollSnapType snapType) | 4640 template<> inline PassRefPtrWillBeRawPtr<CSSPrimitiveValue> CSSPrimitiveValue::c
reate(ScrollSnapType snapType) |
4653 : CSSValue(PrimitiveClass) | |
4654 { | 4641 { |
4655 m_primitiveUnitType = CSS_VALUE_ID; | 4642 CSSValueID valueID = CSSValueInvalid; |
4656 switch (snapType) { | 4643 switch (snapType) { |
4657 case ScrollSnapTypeNone: | 4644 case ScrollSnapTypeNone: |
4658 m_value.valueID = CSSValueNone; | 4645 valueID = CSSValueNone; |
4659 break; | 4646 break; |
4660 case ScrollSnapTypeMandatory: | 4647 case ScrollSnapTypeMandatory: |
4661 m_value.valueID = CSSValueMandatory; | 4648 valueID = CSSValueMandatory; |
4662 break; | 4649 break; |
4663 case ScrollSnapTypeProximity: | 4650 case ScrollSnapTypeProximity: |
4664 m_value.valueID = CSSValueProximity; | 4651 valueID = CSSValueProximity; |
4665 break; | 4652 break; |
4666 } | 4653 } |
| 4654 return create(valueID); |
4667 } | 4655 } |
4668 | 4656 |
4669 template<> inline CSSPrimitiveValue::operator ScrollSnapType() const | 4657 template<> inline CSSPrimitiveValue::operator ScrollSnapType() const |
4670 { | 4658 { |
4671 switch (getValueID()) { | 4659 switch (getValueID()) { |
4672 case CSSValueNone: | 4660 case CSSValueNone: |
4673 return ScrollSnapTypeNone; | 4661 return ScrollSnapTypeNone; |
4674 case CSSValueMandatory: | 4662 case CSSValueMandatory: |
4675 return ScrollSnapTypeMandatory; | 4663 return ScrollSnapTypeMandatory; |
4676 case CSSValueProximity: | 4664 case CSSValueProximity: |
4677 return ScrollSnapTypeProximity; | 4665 return ScrollSnapTypeProximity; |
4678 default: | 4666 default: |
4679 break; | 4667 break; |
4680 } | 4668 } |
4681 ASSERT_NOT_REACHED(); | 4669 ASSERT_NOT_REACHED(); |
4682 return ScrollSnapTypeNone; | 4670 return ScrollSnapTypeNone; |
4683 } | 4671 } |
4684 | 4672 |
4685 } // namespace blink | 4673 } // namespace blink |
4686 | 4674 |
4687 #endif | 4675 #endif |
OLD | NEW |