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