18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*
28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2007 Alexey Proskuryakov <ap@nypop.com>.
306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen * Copyright (C) 2008, 2009, 2010 Apple Inc. All rights reserved.
4231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
5545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com>
6545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch * Copyright (C) Research In Motion Limited 2010. All rights reserved.
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met:
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 1. Redistributions of source code must retain the above copyright
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer.
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer in the
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    documentation and/or other materials provided with the distribution.
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#ifndef CSSPrimitiveValueMappings_h
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define CSSPrimitiveValueMappings_h
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
33643ca7872b450ea4efacab6188849e5aac2ba161Steve Block#include "ColorSpace.h"
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "CSSPrimitiveValue.h"
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "CSSValueKeywords.h"
36231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include "FontSmoothingMode.h"
378f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian#include "GraphicsTypes.h"
388f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian#include "Path.h"
390617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen#include "RenderStyleConstants.h"
408f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian#include "SVGRenderStyleDefs.h"
418f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian#include "TextDirection.h"
422bde8e466a4451c7319e3a072d118917957d6554Steve Block#include "TextOrientation.h"
43231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include "TextRenderingMode.h"
448f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian#include "ThemeTypes.h"
452daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch#include "UnicodeBidi.h"
468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore {
488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBorderStyle e)
508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
516c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BNONE:
558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BHIDDEN:
588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHidden;
598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INSET:
618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueInset;
628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case GROOVE:
648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueGroove;
658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RIDGE:
678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRidge;
688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OUTSET:
708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOutset;
718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DOTTED:
738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDotted;
748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DASHED:
768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDashed;
778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SOLID:
798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSolid;
808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DOUBLE:
828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDouble;
838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EBorderStyle() const
888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return (EBorderStyle)(m_value.ident - CSSValueNone);
908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(CompositeOperator e)
938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
946c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeClear:
988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueClear;
998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeCopy:
1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCopy;
1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeSourceOver:
1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSourceOver;
1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeSourceIn:
1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSourceIn;
1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeSourceOut:
1108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSourceOut;
1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeSourceAtop:
1138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSourceAtop;
1148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeDestinationOver:
1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDestinationOver;
1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeDestinationIn:
1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDestinationIn;
1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeDestinationOut:
1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDestinationOut;
1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeDestinationAtop:
1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDestinationAtop;
1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeXOR:
1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueXor;
1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositePlusDarker:
1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePlusDarker;
1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositeHighlight:
1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHighlight;
1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CompositePlusLighter:
1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePlusLighter;
1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator CompositeOperator() const
1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueClear:
1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeClear;
1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCopy:
1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeCopy;
1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSourceOver:
1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeSourceOver;
1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSourceIn:
1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeSourceIn;
1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSourceOut:
1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeSourceOut;
1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSourceAtop:
1568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeSourceAtop;
1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDestinationOver:
1588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeDestinationOver;
1598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDestinationIn:
1608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeDestinationIn;
1618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDestinationOut:
1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeDestinationOut;
1638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDestinationAtop:
1648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeDestinationAtop;
1658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueXor:
1668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeXOR;
1678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePlusDarker:
1688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositePlusDarker;
1698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHighlight:
1708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeHighlight;
1718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePlusLighter:
1728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositePlusLighter;
1738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CompositeClear;
1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ControlPart e)
1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
1816c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NoControlPart:
1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CheckboxPart:
1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCheckbox;
1898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RadioPart:
1918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRadio;
1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PushButtonPart:
1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePushButton;
1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SquareButtonPart:
1978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSquareButton;
1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ButtonPart:
2008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueButton;
2018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ButtonBevelPart:
2038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueButtonBevel;
2048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DefaultButtonPart:
2068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDefaultButton;
2078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
208d0825bca7fe65beaee391d30da42e937db621564Steve Block        case InnerSpinButtonPart:
209d0825bca7fe65beaee391d30da42e937db621564Steve Block            m_value.ident = CSSValueInnerSpinButton;
210d0825bca7fe65beaee391d30da42e937db621564Steve Block            break;
2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ListboxPart:
2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueListbox;
2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
214231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case ListButtonPart:
215cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block#if ENABLE(DATALIST)
216231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueListButton;
217231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#endif
218cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block            break;
2198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ListItemPart:
2208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueListitem;
2218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaFullscreenButtonPart:
2238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaFullscreenButton;
2248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaPlayButtonPart:
2268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaPlayButton;
2278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaMuteButtonPart:
2298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaMuteButton;
2308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaSeekBackButtonPart:
2328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaSeekBackButton;
2338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaSeekForwardButtonPart:
2358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaSeekForwardButton;
2368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case MediaRewindButtonPart:
2380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueMediaRewindButton;
2390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            break;
2400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case MediaReturnToRealtimeButtonPart:
2410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueMediaReturnToRealtimeButton;
2420bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            break;
243643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        case MediaToggleClosedCaptionsButtonPart:
244643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            m_value.ident = CSSValueMediaToggleClosedCaptionsButton;
245643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            break;
2468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaSliderPart:
2478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaSlider;
2488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MediaSliderThumbPart:
2508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMediaSliderthumb;
2518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
252231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case MediaVolumeSliderContainerPart:
253231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueMediaVolumeSliderContainer;
254231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
255231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case MediaVolumeSliderPart:
256231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueMediaVolumeSlider;
257231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
258e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke        case MediaVolumeSliderMuteButtonPart:
259e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke            m_value.ident = CSSValueMediaVolumeSliderMuteButton;
260e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke            break;
261231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case MediaVolumeSliderThumbPart:
262231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueMediaVolumeSliderthumb;
263231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
2640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case MediaControlsBackgroundPart:
2650bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueMediaControlsBackground;
266635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2675ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen        case MediaControlsFullscreenBackgroundPart:
2685ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen            m_value.ident = CSSValueMediaControlsFullscreenBackground;
2695ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen            break;
270635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case MediaCurrentTimePart:
271635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueMediaCurrentTimeDisplay;
272635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
273635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case MediaTimeRemainingPart:
274635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueMediaTimeRemainingDisplay;
275635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MenulistPart:
2778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMenulist;
2788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MenulistButtonPart:
2808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMenulistButton;
2818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MenulistTextPart:
2838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMenulistText;
2848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MenulistTextFieldPart:
2868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMenulistTextfield;
2878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
2886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen        case MeterPart:
2896c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen            m_value.ident = CSSValueMeter;
2906c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen            break;
291545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        case RelevancyLevelIndicatorPart:
292545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            m_value.ident = CSSValueRelevancyLevelIndicator;
293545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            break;
294545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        case ContinuousCapacityLevelIndicatorPart:
295545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            m_value.ident = CSSValueContinuousCapacityLevelIndicator;
296545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            break;
297545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        case DiscreteCapacityLevelIndicatorPart:
298545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            m_value.ident = CSSValueDiscreteCapacityLevelIndicator;
299545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            break;
300545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        case RatingLevelIndicatorPart:
301545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            m_value.ident = CSSValueRatingLevelIndicator;
302545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch            break;
303d0825bca7fe65beaee391d30da42e937db621564Steve Block        case OuterSpinButtonPart:
304d0825bca7fe65beaee391d30da42e937db621564Steve Block            m_value.ident = CSSValueOuterSpinButton;
305d0825bca7fe65beaee391d30da42e937db621564Steve Block            break;
306dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block        case ProgressBarPart:
30721939df44de1705786c545cd1bf519d47250322dBen Murdoch#if ENABLE(PROGRESS_TAG)
308dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block            m_value.ident = CSSValueProgressBar;
309dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#endif
310dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block            break;
31121939df44de1705786c545cd1bf519d47250322dBen Murdoch        case ProgressBarValuePart:
31221939df44de1705786c545cd1bf519d47250322dBen Murdoch#if ENABLE(PROGRESS_TAG)
31321939df44de1705786c545cd1bf519d47250322dBen Murdoch            m_value.ident = CSSValueProgressBarValue;
31421939df44de1705786c545cd1bf519d47250322dBen Murdoch#endif
31521939df44de1705786c545cd1bf519d47250322dBen Murdoch            break;
3168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SliderHorizontalPart:
3178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSliderHorizontal;
3188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SliderVerticalPart:
3208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSliderVertical;
3218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SliderThumbHorizontalPart:
3238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSliderthumbHorizontal;
3248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SliderThumbVerticalPart:
3268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSliderthumbVertical;
3278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CaretPart:
3298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCaret;
3308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SearchFieldPart:
3328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSearchfield;
3338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SearchFieldDecorationPart:
3358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSearchfieldDecoration;
3368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SearchFieldResultsDecorationPart:
3388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSearchfieldResultsDecoration;
3398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SearchFieldResultsButtonPart:
3418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSearchfieldResultsButton;
3428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SearchFieldCancelButtonPart:
3448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSearchfieldCancelButton;
3458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TextFieldPart:
3478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextfield;
3488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TextAreaPart:
3508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextarea;
3518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
3528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CapsLockIndicatorPart:
3538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCapsLockIndicator;
3548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
35506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        case InputSpeechButtonPart:
35606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#if ENABLE(INPUT_SPEECH)
357bec39347bb3bb5bf1187ccaf471d26247f28b585Kristian Monsen            m_value.ident = CSSValueWebkitInputSpeechButton;
35806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#endif
35906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen            break;
3608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
3618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ControlPart() const
3648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_value.ident == CSSValueNone)
3668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return NoControlPart;
3678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    else
3688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return ControlPart(m_value.ident - CSSValueCheckbox + 1);
3698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3710bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillAttachment e)
3720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    : m_type(CSS_IDENT)
3736c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
3740bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{
3750bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    switch (e) {
3760bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case ScrollBackgroundAttachment:
3770bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueScroll;
3780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            break;
3790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case LocalBackgroundAttachment:
3800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueLocal;
3810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            break;
3820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case FixedBackgroundAttachment:
3830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            m_value.ident = CSSValueFixed;
3840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            break;
3850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    }
3860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch}
3870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
3880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochtemplate<> inline CSSPrimitiveValue::operator EFillAttachment() const
3890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{
3900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    switch (m_value.ident) {
3910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case CSSValueScroll:
3920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            return ScrollBackgroundAttachment;
3930bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case CSSValueLocal:
3940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            return LocalBackgroundAttachment;
3950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        case CSSValueFixed:
3960bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            return FixedBackgroundAttachment;
3970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        default:
3980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            ASSERT_NOT_REACHED();
3990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            return ScrollBackgroundAttachment;
4000bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    }
4010bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch}
4020bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
4038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillBox e)
4048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
4056c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
4068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
4088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BorderFillBox:
4098f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian            m_value.ident = CSSValueBorderBox;
4108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PaddingFillBox:
4128f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian            m_value.ident = CSSValuePaddingBox;
4138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ContentFillBox:
4158f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian            m_value.ident = CSSValueContentBox;
4168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TextFillBox:
4188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueText;
4198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
4218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EFillBox() const
4248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
4268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBorder:
4278f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian        case CSSValueBorderBox:
4288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BorderFillBox;
4298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePadding:
4308f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian        case CSSValuePaddingBox:
4318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PaddingFillBox;
4328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueContent:
4338f72e70a9fd78eec56623b3a62e68f16b7b27e28Feng Qian        case CSSValueContentBox:
4348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return ContentFillBox;
4358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueText:
436cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        case CSSValueWebkitText:
4378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TextFillBox;
4388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
4398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
4408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BorderFillBox;
4418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
4428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFillRepeat e)
4458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
4466c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
4478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
4498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RepeatFill:
4508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRepeat;
4518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NoRepeatFill:
4538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNoRepeat;
4548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
455231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case RoundFill:
456231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueRound;
457231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
458231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case SpaceFill:
459231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueSpace;
460231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
4618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
4628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EFillRepeat() const
4658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
4678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRepeat:
4688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RepeatFill;
4698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNoRepeat:
4708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NoRepeatFill;
471231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueRound:
472231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return RoundFill;
473231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueSpace:
474231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return SpaceFill;
4758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
4768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
4778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RepeatFill;
4788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
4798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxAlignment e)
4828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
4836c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
4848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
4868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BSTRETCH:
4878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueStretch;
4888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BSTART:
4908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueStart;
4918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BCENTER:
4938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCenter;
4948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BEND:
4968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueEnd;
4978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
4988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BBASELINE:
4998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBaseline;
5008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BJUSTIFY:
5028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueJustify;
5038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EBoxAlignment() const
5088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
5108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueStretch:
5118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BSTRETCH;
5128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueStart:
5138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BSTART;
5148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueEnd:
5158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BEND;
5168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCenter:
5178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BCENTER;
5188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBaseline:
5198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BBASELINE;
5208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueJustify:
5218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BJUSTIFY;
5228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
5238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
5248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BSTRETCH;
5258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxDirection e)
5298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
5306c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
5318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
5338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BNORMAL:
5348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
5358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BREVERSE:
5378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueReverse;
5388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EBoxDirection() const
5438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
5458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
5468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BNORMAL;
5478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueReverse:
5488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BREVERSE;
5498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
5508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
5518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BNORMAL;
5528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxLines e)
5568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
5576c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
5588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
5608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SINGLE:
5618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSingle;
5628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MULTIPLE:
5648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMultiple;
5658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EBoxLines() const
5708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
5728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSingle:
5738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SINGLE;
5748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMultiple:
5758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MULTIPLE;
5768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
5778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
5788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SINGLE;
5798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBoxOrient e)
5838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
5846c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
5858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
5878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case HORIZONTAL:
5888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHorizontal;
5898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case VERTICAL:
5918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueVertical;
5928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
5938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
5948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EBoxOrient() const
5978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
5998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHorizontal:
6008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueInlineAxis:
6018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return HORIZONTAL;
6028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueVertical:
603231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueBlockAxis:
6048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return VERTICAL;
6058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
6068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
6078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return HORIZONTAL;
6088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
6098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ECaptionSide e)
6128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
6136c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
6148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
6168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CAPLEFT:
6178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLeft;
6188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CAPRIGHT:
6208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRight;
6218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CAPTOP:
6238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTop;
6248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CAPBOTTOM:
6268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBottom;
6278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
6298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ECaptionSide() const
6328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
6348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLeft:
6358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPLEFT;
6368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRight:
6378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPRIGHT;
6388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueTop:
6398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPTOP;
6408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBottom:
6418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPBOTTOM;
6428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
6438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
6448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPTOP;
6458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
6468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EClear e)
6498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
6506c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
6518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
6538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CNONE:
6548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
6558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CLEFT:
6578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLeft;
6588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CRIGHT:
6608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRight;
6618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CBOTH:
6638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBoth;
6648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
6668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EClear() const
6698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
6718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
6728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CNONE;
6738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLeft:
6748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CLEFT;
6758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRight:
6768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CRIGHT;
6778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBoth:
6788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CBOTH;
6798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
6808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
6818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CNONE;
6828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
6838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ECursor e)
6868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
6876c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
6888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
6908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_AUTO:
6918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
6928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_CROSS:
6948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCrosshair;
6958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_DEFAULT:
6978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDefault;
6988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
6998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_POINTER:
7008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePointer;
7018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_MOVE:
7038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMove;
7048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_CELL:
7068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCell;
7078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_VERTICAL_TEXT:
7098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueVerticalText;
7108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_CONTEXT_MENU:
7128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueContextMenu;
7138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_ALIAS:
7158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAlias;
7168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_COPY:
7188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCopy;
7198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NONE:
7218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
7228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_PROGRESS:
7248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueProgress;
7258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NO_DROP:
7278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNoDrop;
7288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NOT_ALLOWED:
7308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNotAllowed;
7318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_WEBKIT_ZOOM_IN:
7338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitZoomIn;
7348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_WEBKIT_ZOOM_OUT:
7368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitZoomOut;
7378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_E_RESIZE:
7398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueEResize;
7408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NE_RESIZE:
7428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNeResize;
7438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NW_RESIZE:
7458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNwResize;
7468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_N_RESIZE:
7488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNResize;
7498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_SE_RESIZE:
7518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSeResize;
7528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_SW_RESIZE:
7548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSwResize;
7558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_S_RESIZE:
7578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSResize;
7588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_W_RESIZE:
7608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWResize;
7618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_EW_RESIZE:
7638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueEwResize;
7648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NS_RESIZE:
7668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNsResize;
7678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NESW_RESIZE:
7698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNeswResize;
7708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_NWSE_RESIZE:
7728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNwseResize;
7738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_COL_RESIZE:
7758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueColResize;
7768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_ROW_RESIZE:
7788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRowResize;
7798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_TEXT:
7818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueText;
7828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_WAIT:
7848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWait;
7858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_HELP:
7878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHelp;
7888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_ALL_SCROLL:
7908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAllScroll;
7918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_WEBKIT_GRAB:
7938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitGrab;
7948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CURSOR_WEBKIT_GRABBING:
7968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitGrabbing;
7978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
7988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
7998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ECursor() const
8028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_value.ident == CSSValueCopy)
8048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return CURSOR_COPY;
8058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_value.ident == CSSValueNone)
8068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return CURSOR_NONE;
8078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return static_cast<ECursor>(m_value.ident - CSSValueAuto);
8088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EDisplay e)
8118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
8126c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
8138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
8158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INLINE:
8168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueInline;
8178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BLOCK:
8198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBlock;
8208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case LIST_ITEM:
8228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueListItem;
8238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RUN_IN:
8258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRunIn;
8268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case COMPACT:
8288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCompact;
8298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INLINE_BLOCK:
8318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueInlineBlock;
8328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE:
8348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTable;
8358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INLINE_TABLE:
8378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueInlineTable;
8388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_ROW_GROUP:
8408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableRowGroup;
8418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_HEADER_GROUP:
8438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableHeaderGroup;
8448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_FOOTER_GROUP:
8468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableFooterGroup;
8478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_ROW:
8498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableRow;
8508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_COLUMN_GROUP:
8528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableColumnGroup;
8538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_COLUMN:
8558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableColumn;
8568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_CELL:
8588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableCell;
8598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TABLE_CAPTION:
8618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTableCaption;
8628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
863231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#if ENABLE(WCSS)
864231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case WAP_MARQUEE:
865231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueWapMarquee;
866231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
867231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#endif
8688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BOX:
8698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitBox;
8708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INLINE_BOX:
8728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitInlineBox;
8738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NONE:
8758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
8768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
8788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EDisplay() const
8818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_value.ident == CSSValueNone)
8838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return NONE;
8848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return static_cast<EDisplay>(m_value.ident - CSSValueInline);
8858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EEmptyCell e)
8888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
8896c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
8908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
8928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SHOW:
8938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueShow;
8948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case HIDE:
8968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHide;
8978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
8988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
8998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EEmptyCell() const
9028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
9048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueShow:
9058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SHOW;
9068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHide:
9078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return HIDE;
9088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
9098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
9108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SHOW;
9118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFloat e)
9158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
9166c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
9178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
9198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case FNONE:
9208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
9218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case FLEFT:
9238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLeft;
9248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case FRIGHT:
9268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRight;
9278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EFloat() const
9328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
9348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLeft:
9358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return FLEFT;
9368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRight:
9378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return FRIGHT;
9388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
9398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCenter:  // Non-standard CSS value
9408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return FNONE;
9418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
9428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
9438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return FNONE;
9448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EKHTMLLineBreak e)
9488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
9496c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
9508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
9528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case LBNORMAL:
9538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
9548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AFTER_WHITE_SPACE:
9568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAfterWhiteSpace;
9578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EKHTMLLineBreak() const
9628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
9648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAfterWhiteSpace:
9658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AFTER_WHITE_SPACE;
9668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
9678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return LBNORMAL;
9688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
9698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
9708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return LBNORMAL;
9718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EListStylePosition e)
9758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
9766c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
9778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
9798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OUTSIDE:
9808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOutside;
9818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case INSIDE:
9838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueInside;
9848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
9858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
9868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EListStylePosition() const
9898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return (EListStylePosition)(m_value.ident - CSSValueOutside);
9918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EListStyleType e)
9948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
9956c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
9968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
998d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Afar:
999d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueAfar;
1000d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1001d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Amharic:
1002d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueAmharic;
1003d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1004d0825bca7fe65beaee391d30da42e937db621564Steve Block    case AmharicAbegede:
1005d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueAmharicAbegede;
1006d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
10078a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case ArabicIndic:
10088a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueArabicIndic;
10098a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1010d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Armenian:
1011d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueArmenian;
1012d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
10135ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen    case Asterisks:
10145ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen        m_value.ident = CSSValueAsterisks;
10155ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen        break;
10168a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case BinaryListStyle:
10178a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueBinary;
10188a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
10198a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Bengali:
10208a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueBengali;
10218a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
10228a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Cambodian:
10238a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueCambodian;
10248a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1025d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Circle:
1026d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueCircle;
1027d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1028d0825bca7fe65beaee391d30da42e937db621564Steve Block    case CjkEarthlyBranch:
1029d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueCjkEarthlyBranch;
1030d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1031d0825bca7fe65beaee391d30da42e937db621564Steve Block    case CjkHeavenlyStem:
1032d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueCjkHeavenlyStem;
1033d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1034d0825bca7fe65beaee391d30da42e937db621564Steve Block    case CJKIdeographic:
1035d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueCjkIdeographic;
1036d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1037d0825bca7fe65beaee391d30da42e937db621564Steve Block    case DecimalLeadingZero:
1038d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueDecimalLeadingZero;
1039d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1040d0825bca7fe65beaee391d30da42e937db621564Steve Block    case DecimalListStyle:
1041d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueDecimal;
1042d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
10438a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Devanagari:
10448a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueDevanagari;
10458a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1046d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Disc:
1047d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueDisc;
1048d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1049d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Ethiopic:
1050d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopic;
1051d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1052d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicAbegede:
1053d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicAbegede;
1054d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1055d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicAbegedeAmEt:
1056d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicAbegedeAmEt;
1057d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1058d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicAbegedeGez:
1059d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicAbegedeGez;
1060d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1061d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicAbegedeTiEr:
1062d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicAbegedeTiEr;
1063d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1064d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicAbegedeTiEt:
1065d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicAbegedeTiEt;
1066d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1067d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameAaEr:
1068d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameAaEr;
1069d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1070d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameAaEt:
1071d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameAaEt;
1072d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1073d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameAmEt:
1074d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameAmEt;
1075d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1076d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameGez:
1077d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameGez;
1078d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1079d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameOmEt:
1080d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameOmEt;
1081d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1082d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameSidEt:
1083d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameSidEt;
1084d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1085d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameSoEt:
1086d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameSoEt;
1087d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1088d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameTiEr:
1089d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameTiEr;
1090d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1091d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameTiEt:
1092d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameTiEt;
1093d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1094d0825bca7fe65beaee391d30da42e937db621564Steve Block    case EthiopicHalehameTig:
1095d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueEthiopicHalehameTig;
1096d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
10975ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen    case Footnotes:
10985ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen        m_value.ident = CSSValueFootnotes;
10995ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen        break;
1100d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Georgian:
1101d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueGeorgian;
1102d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11038a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Gujarati:
11048a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueGujarati;
11058a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11068a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Gurmukhi:
11078a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueGurmukhi;
11088a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1109d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Hangul:
1110d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueHangul;
1111d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1112d0825bca7fe65beaee391d30da42e937db621564Steve Block    case HangulConsonant:
1113d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueHangulConsonant;
1114d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1115d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Hebrew:
1116d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueHebrew;
1117d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1118d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Hiragana:
1119d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueHiragana;
1120d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1121d0825bca7fe65beaee391d30da42e937db621564Steve Block    case HiraganaIroha:
1122d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueHiraganaIroha;
1123d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11248a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Kannada:
11258a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueKannada;
11268a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1127d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Katakana:
1128d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueKatakana;
1129d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1130d0825bca7fe65beaee391d30da42e937db621564Steve Block    case KatakanaIroha:
1131d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueKatakanaIroha;
1132d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11338a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Khmer:
11348a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueKhmer;
11358a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11368a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Lao:
11378a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueLao;
11388a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1139d0825bca7fe65beaee391d30da42e937db621564Steve Block    case LowerAlpha:
1140d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueLowerAlpha;
1141d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1142f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case LowerArmenian:
1143f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueLowerArmenian;
1144f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
1145d0825bca7fe65beaee391d30da42e937db621564Steve Block    case LowerGreek:
1146d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueLowerGreek;
1147d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11488a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case LowerHexadecimal:
11498a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueLowerHexadecimal;
11508a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1151d0825bca7fe65beaee391d30da42e937db621564Steve Block    case LowerLatin:
1152d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueLowerLatin;
1153d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1154d0825bca7fe65beaee391d30da42e937db621564Steve Block    case LowerNorwegian:
1155d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueLowerNorwegian;
1156d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1157d0825bca7fe65beaee391d30da42e937db621564Steve Block    case LowerRoman:
1158d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueLowerRoman;
1159d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11608a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Malayalam:
11618a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueMalayalam;
11628a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11638a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Mongolian:
11648a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueMongolian;
11658a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11668a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Myanmar:
11678a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueMyanmar;
11688a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1169d0825bca7fe65beaee391d30da42e937db621564Steve Block    case NoneListStyle:
1170d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueNone;
1171d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11728a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Octal:
11738a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueOctal;
11748a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11758a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Oriya:
11768a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueOriya;
11778a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1178d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Oromo:
1179d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueOromo;
1180d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11818a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Persian:
11828a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValuePersian;
11838a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1184d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Sidama:
1185d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueSidama;
1186d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1187d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Somali:
1188d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueSomali;
1189d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1190d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Square:
1191d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueSquare;
1192d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
11938a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Telugu:
11948a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueTelugu;
11958a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11968a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Thai:
11978a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueThai;
11988a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
11998a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Tibetan:
12008a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueTibetan;
12018a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1202d0825bca7fe65beaee391d30da42e937db621564Steve Block    case Tigre:
1203d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueTigre;
1204d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1205d0825bca7fe65beaee391d30da42e937db621564Steve Block    case TigrinyaEr:
1206d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueTigrinyaEr;
1207d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1208d0825bca7fe65beaee391d30da42e937db621564Steve Block    case TigrinyaErAbegede:
1209d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueTigrinyaErAbegede;
1210d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1211d0825bca7fe65beaee391d30da42e937db621564Steve Block    case TigrinyaEt:
1212d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueTigrinyaEt;
1213d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1214d0825bca7fe65beaee391d30da42e937db621564Steve Block    case TigrinyaEtAbegede:
1215d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueTigrinyaEtAbegede;
1216d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1217d0825bca7fe65beaee391d30da42e937db621564Steve Block    case UpperAlpha:
1218d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueUpperAlpha;
1219d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1220f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case UpperArmenian:
1221f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueUpperArmenian;
1222f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
1223d0825bca7fe65beaee391d30da42e937db621564Steve Block    case UpperGreek:
1224d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueUpperGreek;
1225d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
12268a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case UpperHexadecimal:
12278a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueUpperHexadecimal;
12288a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
1229d0825bca7fe65beaee391d30da42e937db621564Steve Block    case UpperLatin:
1230d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueUpperLatin;
1231d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1232d0825bca7fe65beaee391d30da42e937db621564Steve Block    case UpperNorwegian:
1233d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueUpperNorwegian;
1234d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
1235d0825bca7fe65beaee391d30da42e937db621564Steve Block    case UpperRoman:
1236d0825bca7fe65beaee391d30da42e937db621564Steve Block        m_value.ident = CSSValueUpperRoman;
1237d0825bca7fe65beaee391d30da42e937db621564Steve Block        break;
12388a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block    case Urdu:
12398a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        m_value.ident = CSSValueUrdu;
12408a0914b749bbe7da7768e07a7db5c6d4bb09472bSteve Block        break;
12418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
12428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
12438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
12448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EListStyleType() const
12458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
12468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
12478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
1248d0825bca7fe65beaee391d30da42e937db621564Steve Block            return NoneListStyle;
12498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
12508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return static_cast<EListStyleType>(m_value.ident - CSSValueDisc);
12518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
12528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
12538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
12548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMarginCollapse e)
12558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
12566c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
12578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
12588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
12598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MCOLLAPSE:
12608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCollapse;
12618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
12628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MSEPARATE:
12638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSeparate;
12648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
12658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MDISCARD:
12668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDiscard;
12678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
12688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
12698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
12708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
12718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EMarginCollapse() const
12728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
12738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
12748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCollapse:
12758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MCOLLAPSE;
12768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSeparate:
12778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MSEPARATE;
12788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDiscard:
12798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MDISCARD;
12808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
12818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
12828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MCOLLAPSE;
12838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
12848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
12858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
12868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMarqueeBehavior e)
12878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
12886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
12898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
12908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
12918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MNONE:
12928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
12938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
12948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MSCROLL:
12958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueScroll;
12968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
12978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MSLIDE:
12988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSlide;
12998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MALTERNATE:
13018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAlternate;
13028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
13048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
13058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
13068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EMarqueeBehavior() const
13078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
13088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
13098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
13108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MNONE;
13118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueScroll:
13128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MSCROLL;
13138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSlide:
13148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MSLIDE;
13158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAlternate:
13168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MALTERNATE;
13178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
13188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
13198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MNONE;
13208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
13218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
13228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
13238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMarqueeDirection e)
13248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
13256c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
13268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
13278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
13288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MFORWARD:
13298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueForwards;
13308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MBACKWARD:
13328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBackwards;
13338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MAUTO:
13358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
13368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MUP:
13388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueUp;
13398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MDOWN:
13418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDown;
13428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MLEFT:
13448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLeft;
13458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MRIGHT:
13478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRight;
13488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
13508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
13518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
13528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EMarqueeDirection() const
13538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
13548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
13558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueForwards:
13568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MFORWARD;
13578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBackwards:
13588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MBACKWARD;
13598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
13608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MAUTO;
13618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAhead:
13628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueUp: // We don't support vertical languages, so AHEAD just maps to UP.
13638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MUP;
13648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueReverse:
13658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDown: // REVERSE just maps to DOWN, since we don't do vertical text.
13668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MDOWN;
13678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLeft:
13688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MLEFT;
13698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRight:
13708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MRIGHT;
13718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
13728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
13738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MAUTO;
13748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
13758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
13768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
13778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EMatchNearestMailBlockquoteColor e)
13788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
13796c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
13808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
13818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
13828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BCNORMAL:
13838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
13848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MATCH:
13868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMatch;
13878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
13888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
13898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
13908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
13918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EMatchNearestMailBlockquoteColor() const
13928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
13938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
13948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
13958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BCNORMAL;
13968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMatch:
13978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MATCH;
13988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
13998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
14008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BCNORMAL;
14018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ENBSPMode e)
14058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
14066c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
14078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
14098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NBNORMAL:
14108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
14118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SPACE:
14138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSpace;
14148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ENBSPMode() const
14198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
14218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSpace:
14228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SPACE;
14238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
14248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NBNORMAL;
14258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
14268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
14278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NBNORMAL;
14288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EOverflow e)
14328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
14336c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
14348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
14368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OVISIBLE:
14378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueVisible;
14388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OHIDDEN:
14408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHidden;
14418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OSCROLL:
14438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueScroll;
14448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OAUTO:
14468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
14478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OMARQUEE:
14498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitMarquee;
14508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case OOVERLAY:
14528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOverlay;
14538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EOverflow() const
14588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
14608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueVisible:
14618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OVISIBLE;
14628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHidden:
14638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OHIDDEN;
14648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueScroll:
14658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OSCROLL;
14668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
14678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OAUTO;
14688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueWebkitMarquee:
14698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OMARQUEE;
14708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOverlay:
14718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OOVERLAY;
14728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
14738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
14748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return OVISIBLE;
14758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPageBreak e)
14798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
14806c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
14818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
14838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PBAUTO:
14848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
14858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PBALWAYS:
14878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAlways;
14888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PBAVOID:
14908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAvoid;
14918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
14928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
14938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
14948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
14958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EPageBreak() const
14968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
14978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
14988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
14998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PBAUTO;
15008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLeft:
15018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRight:
15028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAlways:
15038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PBALWAYS; // CSS2.1: "Conforming user agents may map left/right to always."
15048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAvoid:
15058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PBAVOID;
15068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
15078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
15088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PBAUTO;
15098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
15108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
15118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
15128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPosition e)
15138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
15146c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
15158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
15168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
15178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case StaticPosition:
15188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueStatic;
15198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RelativePosition:
15218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRelative;
15228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AbsolutePosition:
15248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAbsolute;
15258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case FixedPosition:
15278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueFixed;
15288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
15308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
15318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
15328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EPosition() const
15338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
15348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
15358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueStatic:
15368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return StaticPosition;
15378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRelative:
15388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RelativePosition;
15398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAbsolute:
15408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AbsolutePosition;
15418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueFixed:
15428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return FixedPosition;
15438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
15448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
15458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return StaticPosition;
15468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
15478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
15488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
15498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EResize e)
15508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
15516c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
15528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
15538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
15548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RESIZE_BOTH:
15558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBoth;
15568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RESIZE_HORIZONTAL:
15588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHorizontal;
15598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RESIZE_VERTICAL:
15618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueVertical;
15628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RESIZE_NONE:
15648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
15658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
15678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
15688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
15698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EResize() const
15708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
15718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
15728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBoth:
15738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_BOTH;
15748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHorizontal:
15758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_HORIZONTAL;
15768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueVertical:
15778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_VERTICAL;
15788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
15798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED(); // Depends on settings, thus should be handled by the caller.
15808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_NONE;
15818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
15828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_NONE;
15838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
15848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
15858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RESIZE_NONE;
15868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
15878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
15888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
15898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETableLayout e)
15908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
15916c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
15928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
15938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
15948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TAUTO:
15958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
15968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
15978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TFIXED:
15988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueFixed;
15998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
16008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
16018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
16028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
16038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ETableLayout() const
16048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
16058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
16068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueFixed:
16078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TFIXED;
16088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
16098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TAUTO;
16108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
16118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
16128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TAUTO;
16138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
16148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
16158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
16168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextAlign e)
16178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
16186c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
16198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
16208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
16212bde8e466a4451c7319e3a072d118917957d6554Steve Block    case TAAUTO:
16222bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueWebkitAuto;
16232bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16242bde8e466a4451c7319e3a072d118917957d6554Steve Block    case TASTART:
16252bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueStart;
16262bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16272bde8e466a4451c7319e3a072d118917957d6554Steve Block    case TAEND:
16282bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueEnd;
16292bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16302bde8e466a4451c7319e3a072d118917957d6554Steve Block    case LEFT:
16312bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueLeft;
16322bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16332bde8e466a4451c7319e3a072d118917957d6554Steve Block    case RIGHT:
16342bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueRight;
16352bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16362bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CENTER:
16372bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueCenter;
16382bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16392bde8e466a4451c7319e3a072d118917957d6554Steve Block    case JUSTIFY:
16402bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueJustify;
16412bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16422bde8e466a4451c7319e3a072d118917957d6554Steve Block    case WEBKIT_LEFT:
16432bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueWebkitLeft;
16442bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16452bde8e466a4451c7319e3a072d118917957d6554Steve Block    case WEBKIT_RIGHT:
16462bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueWebkitRight;
16472bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16482bde8e466a4451c7319e3a072d118917957d6554Steve Block    case WEBKIT_CENTER:
16492bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueWebkitCenter;
16502bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
16518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
16528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
16538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
16548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ETextAlign() const
16558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
16568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
16578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueStart:
16582bde8e466a4451c7319e3a072d118917957d6554Steve Block            return TASTART;
16598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueEnd:
16602bde8e466a4451c7319e3a072d118917957d6554Steve Block            return TAEND;
16618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
16628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return static_cast<ETextAlign>(m_value.ident - CSSValueWebkitAuto);
16638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
16648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
16658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
16668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextSecurity e)
16678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
16686c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
16698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
16708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
16718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TSNONE:
16728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
16738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
16748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TSDISC:
16758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueDisc;
16768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
16778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TSCIRCLE:
16788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCircle;
16798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
16808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TSSQUARE:
16818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSquare;
16828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
16838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
16848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
16858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
16868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ETextSecurity() const
16878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
16888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
16898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
16908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TSNONE;
16918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueDisc:
16928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TSDISC;
16938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCircle:
16948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TSCIRCLE;
16958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSquare:
16968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TSSQUARE;
16978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
16988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
16998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TSNONE;
17008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextTransform e)
17048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
17056c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
17068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
17088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CAPITALIZE:
17098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCapitalize;
17108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case UPPERCASE:
17128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueUppercase;
17138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case LOWERCASE:
17158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLowercase;
17168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TTNONE:
17188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
17198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ETextTransform() const
17248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
17268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCapitalize:
17278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CAPITALIZE;
17288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueUppercase:
17298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return UPPERCASE;
17308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLowercase:
17318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return LOWERCASE;
17328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
17338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TTNONE;
17348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
17358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
17368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TTNONE;
17378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUnicodeBidi e)
17418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
17426c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
17438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
17452bde8e466a4451c7319e3a072d118917957d6554Steve Block    case UBNormal:
17462bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueNormal;
17472bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
17482bde8e466a4451c7319e3a072d118917957d6554Steve Block    case Embed:
17492bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueEmbed;
17502bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
17512bde8e466a4451c7319e3a072d118917957d6554Steve Block    case Override:
17522bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueBidiOverride;
17532bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
17542bde8e466a4451c7319e3a072d118917957d6554Steve Block    case Isolate:
17552bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueWebkitIsolate;
17568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EUnicodeBidi() const
17608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
17622bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueNormal:
17632bde8e466a4451c7319e3a072d118917957d6554Steve Block        return UBNormal;
17642bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueEmbed:
17652bde8e466a4451c7319e3a072d118917957d6554Steve Block        return Embed;
17662bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueBidiOverride:
17672bde8e466a4451c7319e3a072d118917957d6554Steve Block        return Override;
17682bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueWebkitIsolate:
17692bde8e466a4451c7319e3a072d118917957d6554Steve Block        return Isolate;
17702bde8e466a4451c7319e3a072d118917957d6554Steve Block    default:
17712bde8e466a4451c7319e3a072d118917957d6554Steve Block        ASSERT_NOT_REACHED();
17722bde8e466a4451c7319e3a072d118917957d6554Steve Block        return UBNormal;
17738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserDrag e)
17778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
17786c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
17798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
17818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DRAG_AUTO:
17828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
17838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DRAG_NONE:
17858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
17868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DRAG_ELEMENT:
17888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueElement;
17898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
17908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
17918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
17928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
17938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EUserDrag() const
17948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
17958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
17968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
17978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DRAG_AUTO;
17988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
17998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DRAG_NONE;
18008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueElement:
18018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DRAG_ELEMENT;
18028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
18038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
18048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DRAG_AUTO;
18058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserModify e)
18098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
18106c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
18118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
18138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case READ_ONLY:
18148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueReadOnly;
18158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case READ_WRITE:
18178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueReadWrite;
18188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case READ_WRITE_PLAINTEXT_ONLY:
18208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueReadWritePlaintextOnly;
18218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EUserModify() const
18268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return static_cast<EUserModify>(m_value.ident - CSSValueReadOnly);
18288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EUserSelect e)
18318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
18326c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
18338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
18358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SELECT_NONE:
18368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNone;
18378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SELECT_TEXT:
18398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueText;
18408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EUserSelect() const
18458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
18478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
18488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SELECT_TEXT;
18498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNone:
18508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SELECT_NONE;
18518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueText:
18528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SELECT_TEXT;
18538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
18548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
18558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SELECT_TEXT;
18568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EVisibility e)
18608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
18616c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
18628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
18648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case VISIBLE:
18658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueVisible;
18668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case HIDDEN:
18688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHidden;
18698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case COLLAPSE:
18718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCollapse;
18728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EVisibility() const
18778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
18798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHidden:
18808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return HIDDEN;
18818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueVisible:
18828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return VISIBLE;
18838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCollapse:
18848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return COLLAPSE;
18858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
18868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
18878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return VISIBLE;
18888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
18898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
18908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
18918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWhiteSpace e)
18928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
18936c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
18948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
18958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
18968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NORMAL:
18978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
18988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
18998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PRE:
19008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePre;
19018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PRE_WRAP:
19038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePreWrap;
19048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case PRE_LINE:
19068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValuePreLine;
19078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NOWRAP:
19098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNowrap;
19108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case KHTML_NOWRAP:
19128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueWebkitNowrap;
19138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EWhiteSpace() const
19188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
19198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
19208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueWebkitNowrap:
19218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return KHTML_NOWRAP;
19228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNowrap:
19238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NOWRAP;
19248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePre:
19258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PRE;
19268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePreWrap:
19278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PRE_WRAP;
19288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValuePreLine:
19298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return PRE_LINE;
19308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
19318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NORMAL;
19328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
19338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
19348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NORMAL;
19358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWordBreak e)
19398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
19406c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
19418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
19428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
19438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NormalWordBreak:
19448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
19458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BreakAllWordBreak:
19478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBreakAll;
19488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BreakWordBreak:
19508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBreakWord;
19518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EWordBreak() const
19568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
19578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
19588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBreakAll:
19598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BreakAllWordBreak;
19608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBreakWord:
19618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BreakWordBreak;
19628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
19638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NormalWordBreak;
19648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
19658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        ASSERT_NOT_REACHED();
19668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return NormalWordBreak;
19678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWordWrap e)
19718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
19726c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
19738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
19748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
19758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case NormalWordWrap:
19768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNormal;
19778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BreakWordWrap:
19798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBreakWord;
19808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
19818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EWordWrap() const
19858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
19868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
19878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBreakWord:
19888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BreakWordWrap;
19898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNormal:
19908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NormalWordWrap;
19918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
19928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
19938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return NormalWordWrap;
19948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
19958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
19968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
19978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextDirection e)
19988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
19996c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
20008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
20018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
20028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case LTR:
20038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLtr;
20048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
20058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RTL:
20068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRtl;
20078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
20088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
20098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
20108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
20118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator TextDirection() const
20128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
20138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
20148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLtr:
20158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return LTR;
20168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRtl:
20178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RTL;
20188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
20198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
20208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return LTR;
20218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
20228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
20238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2024a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(WritingMode e)
202568513a70bcd92384395513322f1b801e7bf9c729Steve Block    : m_type(CSS_IDENT)
202668513a70bcd92384395513322f1b801e7bf9c729Steve Block    , m_hasCachedCSSText(false)
202768513a70bcd92384395513322f1b801e7bf9c729Steve Block{
202868513a70bcd92384395513322f1b801e7bf9c729Steve Block    switch (e) {
2029a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case TopToBottomWritingMode:
2030a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueHorizontalTb;
203168513a70bcd92384395513322f1b801e7bf9c729Steve Block        break;
2032a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case RightToLeftWritingMode:
2033a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueVerticalRl;
203468513a70bcd92384395513322f1b801e7bf9c729Steve Block        break;
2035a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case LeftToRightWritingMode:
2036a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueVerticalLr;
203768513a70bcd92384395513322f1b801e7bf9c729Steve Block        break;
2038a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case BottomToTopWritingMode:
2039a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueHorizontalBt;
204068513a70bcd92384395513322f1b801e7bf9c729Steve Block        break;
204168513a70bcd92384395513322f1b801e7bf9c729Steve Block    }
204268513a70bcd92384395513322f1b801e7bf9c729Steve Block}
204368513a70bcd92384395513322f1b801e7bf9c729Steve Block
2044a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::operator WritingMode() const
204568513a70bcd92384395513322f1b801e7bf9c729Steve Block{
204668513a70bcd92384395513322f1b801e7bf9c729Steve Block    switch (m_value.ident) {
2047a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueHorizontalTb:
2048a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return TopToBottomWritingMode;
2049a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueVerticalRl:
2050a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return RightToLeftWritingMode;
2051a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueVerticalLr:
2052a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return LeftToRightWritingMode;
2053a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueHorizontalBt:
2054a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return BottomToTopWritingMode;
205568513a70bcd92384395513322f1b801e7bf9c729Steve Block    default:
205668513a70bcd92384395513322f1b801e7bf9c729Steve Block        ASSERT_NOT_REACHED();
2057a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return TopToBottomWritingMode;
205868513a70bcd92384395513322f1b801e7bf9c729Steve Block    }
205968513a70bcd92384395513322f1b801e7bf9c729Steve Block}
206068513a70bcd92384395513322f1b801e7bf9c729Steve Block
206128040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhutemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextCombine e)
206228040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    : m_type(CSS_IDENT)
206328040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    , m_hasCachedCSSText(false)
206428040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu{
206528040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    switch (e) {
206628040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    case TextCombineNone:
206728040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        m_value.ident = CSSValueNone;
206828040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        break;
2069f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextCombineHorizontal:
2070f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueHorizontal;
207128040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        break;
207228040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    }
207328040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu}
207428040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu
207528040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhutemplate<> inline CSSPrimitiveValue::operator TextCombine() const
207628040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu{
207728040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    switch (m_value.ident) {
207828040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    case CSSValueNone:
207928040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        return TextCombineNone;
2080f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueHorizontal:
2081f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextCombineHorizontal;
208228040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    default:
208328040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        ASSERT_NOT_REACHED();
208428040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu        return TextCombineNone;
208528040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu    }
208628040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu}
208728040489d744e0c5d475a88663056c9040ed5320Teng-Hui Zhu
2088f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisPosition position)
2089f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    : m_type(CSS_IDENT)
2090f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    , m_hasCachedCSSText(false)
2091f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2092f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (position) {
2093f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisPositionOver:
2094f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueOver;
2095f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2096f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisPositionUnder:
2097f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueUnder;
2098f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2099f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2100f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2101f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
2102f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::operator TextEmphasisPosition() const
2103f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2104f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (m_value.ident) {
2105f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueOver:
2106f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisPositionOver;
2107f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueUnder:
2108f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisPositionUnder;
2109f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    default:
2110f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        ASSERT_NOT_REACHED();
2111f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisPositionOver;
2112f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2113f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2114f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
2115f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisFill fill)
2116f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    : m_type(CSS_IDENT)
2117f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    , m_hasCachedCSSText(false)
2118f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2119f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (fill) {
2120f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisFillFilled:
2121f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueFilled;
2122f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2123f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisFillOpen:
2124f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueOpen;
2125f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2126f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2127f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2128f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
2129f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::operator TextEmphasisFill() const
2130f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2131f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (m_value.ident) {
2132f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueFilled:
2133f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisFillFilled;
2134f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueOpen:
2135f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisFillOpen;
2136f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    default:
2137f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        ASSERT_NOT_REACHED();
2138f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisFillFilled;
2139f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2140f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2141f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
2142f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextEmphasisMark mark)
2143f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    : m_type(CSS_IDENT)
2144f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    , m_hasCachedCSSText(false)
2145f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2146f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (mark) {
2147f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkDot:
2148f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueDot;
2149f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2150f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkCircle:
2151f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueCircle;
2152f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2153f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkDoubleCircle:
2154f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueDoubleCircle;
2155f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2156f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkTriangle:
2157f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueTriangle;
2158f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2159f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkSesame:
2160f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueSesame;
2161f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2162f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkNone:
2163f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkAuto:
2164f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case TextEmphasisMarkCustom:
2165f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        ASSERT_NOT_REACHED();
2166f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        m_value.ident = CSSValueNone;
2167f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        break;
2168f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2169f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2170f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
2171f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochtemplate<> inline CSSPrimitiveValue::operator TextEmphasisMark() const
2172f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch{
2173f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    switch (m_value.ident) {
2174f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueNone:
2175f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkNone;
2176f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueDot:
2177f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkDot;
2178f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueCircle:
2179f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkCircle;
2180f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueDoubleCircle:
2181f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkDoubleCircle;
2182f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueTriangle:
2183f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkTriangle;
2184f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    case CSSValueSesame:
2185f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkSesame;
2186f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    default:
2187f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        ASSERT_NOT_REACHED();
2188f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch        return TextEmphasisMarkNone;
2189f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch    }
2190f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch}
2191f05b935882198ccf7d81675736e3aeb089c5113aBen Murdoch
21922bde8e466a4451c7319e3a072d118917957d6554Steve Blocktemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextOrientation e)
21932bde8e466a4451c7319e3a072d118917957d6554Steve Block    : m_type(CSS_IDENT)
21942bde8e466a4451c7319e3a072d118917957d6554Steve Block    , m_hasCachedCSSText(false)
21952bde8e466a4451c7319e3a072d118917957d6554Steve Block{
21962bde8e466a4451c7319e3a072d118917957d6554Steve Block    switch (e) {
21972bde8e466a4451c7319e3a072d118917957d6554Steve Block    case TextOrientationVerticalRight:
21982bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueVerticalRight;
21992bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
22002bde8e466a4451c7319e3a072d118917957d6554Steve Block    case TextOrientationUpright:
22012bde8e466a4451c7319e3a072d118917957d6554Steve Block        m_value.ident = CSSValueUpright;
22022bde8e466a4451c7319e3a072d118917957d6554Steve Block        break;
22032bde8e466a4451c7319e3a072d118917957d6554Steve Block    }
22042bde8e466a4451c7319e3a072d118917957d6554Steve Block}
22052bde8e466a4451c7319e3a072d118917957d6554Steve Block
22062bde8e466a4451c7319e3a072d118917957d6554Steve Blocktemplate<> inline CSSPrimitiveValue::operator TextOrientation() const
22072bde8e466a4451c7319e3a072d118917957d6554Steve Block{
22082bde8e466a4451c7319e3a072d118917957d6554Steve Block    switch (m_value.ident) {
22092bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueVerticalRight:
22102bde8e466a4451c7319e3a072d118917957d6554Steve Block        return TextOrientationVerticalRight;
22112bde8e466a4451c7319e3a072d118917957d6554Steve Block    case CSSValueUpright:
22122bde8e466a4451c7319e3a072d118917957d6554Steve Block        return TextOrientationUpright;
22132bde8e466a4451c7319e3a072d118917957d6554Steve Block    default:
22142bde8e466a4451c7319e3a072d118917957d6554Steve Block        ASSERT_NOT_REACHED();
22152bde8e466a4451c7319e3a072d118917957d6554Steve Block        return TextOrientationVerticalRight;
22162bde8e466a4451c7319e3a072d118917957d6554Steve Block    }
22172bde8e466a4451c7319e3a072d118917957d6554Steve Block}
22182bde8e466a4451c7319e3a072d118917957d6554Steve Block
2219635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EPointerEvents e)
2220635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    : m_type(CSS_IDENT)
22216c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
2222635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
2223635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    switch (e) {
2224635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_NONE:
2225635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueNone;
2226635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2227635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_STROKE:
2228635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueStroke;
2229635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2230635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_FILL:
2231635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueFill;
2232635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2233635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_PAINTED:
2234635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValuePainted;
2235635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2236635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_VISIBLE:
2237635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueVisible;
2238635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2239635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_VISIBLE_STROKE:
2240635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueVisiblestroke;
2241635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2242635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_VISIBLE_FILL:
2243635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueVisiblefill;
2244635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2245635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_VISIBLE_PAINTED:
2246635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueVisiblepainted;
2247635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2248635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_AUTO:
2249635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueAuto;
2250635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2251635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case PE_ALL:
2252635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            m_value.ident = CSSValueAll;
2253635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            break;
2254635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    }
2255635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
2256635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
2257635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EPointerEvents() const
2258635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
2259635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    switch (m_value.ident) {
2260635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueAll:
2261635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_ALL;
2262635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueAuto:
2263635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_AUTO;
2264635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueNone:
2265635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_NONE;
2266635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueVisiblepainted:
2267635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_VISIBLE_PAINTED;
2268635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueVisiblefill:
2269635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_VISIBLE_FILL;
2270635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueVisiblestroke:
2271635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_VISIBLE_STROKE;
2272635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueVisible:
2273635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_VISIBLE;
2274635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValuePainted:
2275635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_PAINTED;
2276635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueFill:
2277635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_FILL;
2278635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        case CSSValueStroke:
2279635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_STROKE;
2280635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project        default:
2281635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            ASSERT_NOT_REACHED();
2282635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project            return PE_ALL;
2283635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    }
2284635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
2285635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
2286231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blocktemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(FontSmoothingMode smoothing)
2287231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    : m_type(CSS_IDENT)
22886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
2289231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
2290231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    switch (smoothing) {
2291231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case AutoSmoothing:
2292231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        m_value.ident = CSSValueAuto;
2293231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return;
2294231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case NoSmoothing:
2295231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        m_value.ident = CSSValueNone;
2296231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return;
2297231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case Antialiased:
2298231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        m_value.ident = CSSValueAntialiased;
2299231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return;
2300231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case SubpixelAntialiased:
2301231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        m_value.ident = CSSValueSubpixelAntialiased;
2302231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return;
2303231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    }
2304231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2305231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    ASSERT_NOT_REACHED();
2306231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    m_value.ident = CSSValueAuto;
2307231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
2308231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2309231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blocktemplate<> inline CSSPrimitiveValue::operator FontSmoothingMode() const
2310231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
2311231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    switch (m_value.ident) {
2312231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case CSSValueAuto:
2313231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return AutoSmoothing;
2314231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case CSSValueNone:
2315231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return NoSmoothing;
2316231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case CSSValueAntialiased:
2317231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return Antialiased;
2318231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    case CSSValueSubpixelAntialiased:
2319231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return SubpixelAntialiased;
2320231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    }
2321231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2322231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    ASSERT_NOT_REACHED();
2323231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    return AutoSmoothing;
2324231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
2325231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2326231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blocktemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextRenderingMode e)
2327231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    : m_type(CSS_IDENT)
23286c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
2329231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
2330231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    switch (e) {
2331231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case AutoTextRendering:
2332231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueAuto;
2333231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
2334231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case OptimizeSpeed:
2335231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueOptimizespeed;
2336231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
2337231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case OptimizeLegibility:
2338231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueOptimizelegibility;
2339231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
2340231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case GeometricPrecision:
2341231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            m_value.ident = CSSValueGeometricprecision;
2342231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            break;
2343231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    }
2344231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
2345231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2346231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blocktemplate<> inline CSSPrimitiveValue::operator TextRenderingMode() const
2347231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
2348231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    switch (m_value.ident) {
2349231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueAuto:
2350231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return AutoTextRendering;
2351231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueOptimizespeed:
2352231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return OptimizeSpeed;
2353231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueOptimizelegibility:
2354231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return OptimizeLegibility;
2355231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        case CSSValueGeometricprecision:
2356231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return GeometricPrecision;
2357231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        default:
2358231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            ASSERT_NOT_REACHED();
2359231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            return AutoTextRendering;
2360231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    }
2361231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
2362231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
2363643ca7872b450ea4efacab6188849e5aac2ba161Steve Blocktemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ColorSpace space)
2364643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    : m_type(CSS_IDENT)
23656c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
2366643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
2367643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    switch (space) {
2368a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case ColorSpaceDeviceRGB:
2369a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueDefault;
2370a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2371a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case ColorSpaceSRGB:
2372a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueSrgb;
2373a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2374a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case ColorSpaceLinearRGB:
2375a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        // CSS color correction does not support linearRGB yet.
2376a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        ASSERT_NOT_REACHED();
2377a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueDefault;
2378a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2379643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    }
2380643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
2381643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
2382643ca7872b450ea4efacab6188849e5aac2ba161Steve Blocktemplate<> inline CSSPrimitiveValue::operator ColorSpace() const
2383643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
2384643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    switch (m_value.ident) {
2385a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueDefault:
2386a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return ColorSpaceDeviceRGB;
2387a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueSrgb:
2388a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return ColorSpaceSRGB;
2389a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    default:
2390a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        ASSERT_NOT_REACHED();
2391a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return ColorSpaceDeviceRGB;
2392643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    }
2393643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
2394643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
239506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsentemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(Hyphens hyphens)
239606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    : m_type(CSS_IDENT)
239706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    , m_hasCachedCSSText(false)
239806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen{
239906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    switch (hyphens) {
240006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case HyphensNone:
240106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        m_value.ident = CSSValueNone;
240206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        break;
240306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case HyphensManual:
240406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        m_value.ident = CSSValueManual;
240506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        break;
240606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case HyphensAuto:
240706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        m_value.ident = CSSValueAuto;
240806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        break;
240906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    }
241006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen}
241106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen
241206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsentemplate<> inline CSSPrimitiveValue::operator Hyphens() const
241306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen{
241406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    switch (m_value.ident) {
241506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case CSSValueNone:
241606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        return HyphensNone;
241706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case CSSValueManual:
241806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        return HyphensManual;
241906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    case CSSValueAuto:
242006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        return HyphensAuto;
242106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    default:
242206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        ASSERT_NOT_REACHED();
242306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen        return HyphensAuto;
242406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen    }
242506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen}
242606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen
2427a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ESpeak e)
2428a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    : m_type(CSS_IDENT)
2429a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    , m_hasCachedCSSText(false)
2430a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch{
2431a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    switch (e) {
2432a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakNone:
2433a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueNone;
2434a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2435a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakNormal:
2436a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueNormal;
2437a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2438a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakSpellOut:
2439a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueSpellOut;
2440a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2441a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakDigits:
2442a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueDigits;
2443a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2444a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakLiteralPunctuation:
2445a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueLiteralPunctuation;
2446a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2447a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case SpeakNoPunctuation:
2448a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        m_value.ident = CSSValueNoPunctuation;
2449a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        break;
2450a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    }
2451a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch}
2452a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch
2453a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::operator ESpeak() const
2454a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch{
2455a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    switch (m_value.ident) {
2456a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueNone:
2457a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakNone;
2458a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueNormal:
2459a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakNormal;
2460a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueSpellOut:
2461a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakSpellOut;
2462a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueDigits:
2463a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakDigits;
2464a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueLiteralPunctuation:
2465a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakLiteralPunctuation;
2466a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    case CSSValueNoPunctuation:
2467a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakNoPunctuation;
2468a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    default:
2469a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        ASSERT_NOT_REACHED();
2470a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch        return SpeakNormal;
2471a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch    }
2472a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch}
2473a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch
24748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#if ENABLE(SVG)
24758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
24768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineCap e)
24778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
24786c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
24798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
24808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
24818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case ButtCap:
24828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueButt;
24838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
24848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RoundCap:
24858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRound;
24868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
24878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SquareCap:
24888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSquare;
24898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
24908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
24918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
24928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
24938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator LineCap() const
24948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
24958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
24968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueButt:
24978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return ButtCap;
24988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRound:
24998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RoundCap;
25008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSquare:
25018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SquareCap;
25028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
25038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
25048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return ButtCap;
25058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
25068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
25078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(LineJoin e)
25098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
25106c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
25118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
25128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
25138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case MiterJoin:
25148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMiter;
25158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RoundJoin:
25178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRound;
25188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case BevelJoin:
25208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBevel;
25218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
25238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
25248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator LineJoin() const
25268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
25278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
25288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMiter:
25298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MiterJoin;
25308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueRound:
25318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RoundJoin;
25328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBevel:
25338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return BevelJoin;
25348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
25358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
25368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return MiterJoin;
25378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
25388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
25398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(WindRule e)
25418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
25426c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
25438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
25448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
25458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RULE_NONZERO:
25468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNonzero;
25478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case RULE_EVENODD:
25498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueEvenodd;
25508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
25528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
25538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator WindRule() const
25558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
25568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
25578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNonzero:
25588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RULE_NONZERO;
25598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueEvenodd:
25608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RULE_EVENODD;
25618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
25628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
25638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return RULE_NONZERO;
25648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
25658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
25668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
25688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EAlignmentBaseline e)
25698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
25706c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
25718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
25728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
25738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_AUTO:
25748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
25758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_BASELINE:
25778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBaseline;
25788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_BEFORE_EDGE:
25808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueBeforeEdge;
25818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_TEXT_BEFORE_EDGE:
25838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextBeforeEdge;
25848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_MIDDLE:
25868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMiddle;
25878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_CENTRAL:
25898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCentral;
25908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_AFTER_EDGE:
25928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAfterEdge;
25938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_TEXT_AFTER_EDGE:
25958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextAfterEdge;
25968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
25978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_IDEOGRAPHIC:
25988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueIdeographic;
25998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_ALPHABETIC:
26018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAlphabetic;
26028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_HANGING:
26048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHanging;
26058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case AB_MATHEMATICAL:
26078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMathematical;
26088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
26108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
26118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
26128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EAlignmentBaseline() const
26138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
26148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
26158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
26168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_AUTO;
26178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBaseline:
26188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_BASELINE;
26198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueBeforeEdge:
26208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_BEFORE_EDGE;
26218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueTextBeforeEdge:
26228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_TEXT_BEFORE_EDGE;
26238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMiddle:
26248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_MIDDLE;
26258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCentral:
26268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_CENTRAL;
26278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAfterEdge:
26288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_AFTER_EDGE;
26298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueTextAfterEdge:
26308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_TEXT_AFTER_EDGE;
26318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueIdeographic:
26328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_IDEOGRAPHIC;
26338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAlphabetic:
26348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_ALPHABETIC;
26358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHanging:
26368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_HANGING;
26378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMathematical:
26388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_MATHEMATICAL;
26398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
26408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
26418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return AB_AUTO;
26428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
26438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
26448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
26458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EColorInterpolation e)
26468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
26476c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
26488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
26498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
26508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CI_AUTO:
26518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
26528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CI_SRGB:
26548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueSrgb;
26558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CI_LINEARRGB:
26578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLinearrgb;
26588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
26608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
26618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
26628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EColorInterpolation() const
26638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
26648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
26658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueSrgb:
26668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CI_SRGB;
26678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueLinearrgb:
26688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CI_LINEARRGB;
26698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
26708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CI_AUTO;
26718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
26728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
26738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CI_AUTO;
26748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
26758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
26768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
26778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EColorRendering e)
26788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
26796c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
26808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
26818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
26828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CR_AUTO:
26838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
26848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CR_OPTIMIZESPEED:
26868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOptimizespeed;
26878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CR_OPTIMIZEQUALITY:
26898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOptimizequality;
26908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
26918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
26928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
26938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
26948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EColorRendering() const
26958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
26968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
26978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOptimizespeed:
26988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CR_OPTIMIZESPEED;
26998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOptimizequality:
27008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CR_OPTIMIZEQUALITY;
27018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
27028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CR_AUTO;
27038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
27048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
27058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return CR_AUTO;
27068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
27078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
27088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
27098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EDominantBaseline e)
27108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
27116c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
27128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
27138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
27148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_AUTO:
27158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
27168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_USE_SCRIPT:
27188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueUseScript;
27198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_NO_CHANGE:
27218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueNoChange;
27228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_RESET_SIZE:
27248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueResetSize;
27258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_CENTRAL:
27278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCentral;
27288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_MIDDLE:
27308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMiddle;
27318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_TEXT_BEFORE_EDGE:
27338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextBeforeEdge;
27348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_TEXT_AFTER_EDGE:
27368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTextAfterEdge;
27378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_IDEOGRAPHIC:
27398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueIdeographic;
27408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_ALPHABETIC:
27428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAlphabetic;
27438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_HANGING:
27458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueHanging;
27468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case DB_MATHEMATICAL:
27488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMathematical;
27498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
27518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
27528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
27538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EDominantBaseline() const
27548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
27558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
27568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
27578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_AUTO;
27588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueUseScript:
27598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_USE_SCRIPT;
27608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueNoChange:
27618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_NO_CHANGE;
27628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueResetSize:
27638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_RESET_SIZE;
27648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueIdeographic:
27658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_IDEOGRAPHIC;
27668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAlphabetic:
27678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_ALPHABETIC;
27688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueHanging:
27698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_HANGING;
27708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMathematical:
27718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_MATHEMATICAL;
27728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCentral:
27738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_CENTRAL;
27748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMiddle:
27758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_MIDDLE;
27768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueTextAfterEdge:
27778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_TEXT_AFTER_EDGE;
27788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueTextBeforeEdge:
27798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_TEXT_BEFORE_EDGE;
27808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
27818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
27828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return DB_AUTO;
27838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
27848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
27858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
27868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EImageRendering e)
27878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
27886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
27898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
27908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
27918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case IR_AUTO:
27928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
27938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case IR_OPTIMIZESPEED:
27958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOptimizespeed;
27968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
27978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case IR_OPTIMIZEQUALITY:
27988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOptimizequality;
27998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
28038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EImageRendering() const
28048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
28068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
28078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return IR_AUTO;
28088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOptimizespeed:
28098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return IR_OPTIMIZESPEED;
28108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOptimizequality:
28118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return IR_OPTIMIZEQUALITY;
28128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
28138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
28148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return IR_AUTO;
28158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
28188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EShapeRendering e)
28198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
28206c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
28218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
28238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case IR_AUTO:
28248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueAuto;
28258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case IR_OPTIMIZESPEED:
28278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueOptimizespeed;
28288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SR_CRISPEDGES:
28308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueCrispedges;
28318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case SR_GEOMETRICPRECISION:
28338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueGeometricprecision;
28348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
28388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator EShapeRendering() const
28398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
28418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueAuto:
28428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SR_AUTO;
28438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueOptimizespeed:
28448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SR_OPTIMIZESPEED;
28458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueCrispedges:
28468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SR_CRISPEDGES;
28478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueGeometricprecision:
28488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SR_GEOMETRICPRECISION;
28498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
28508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
28518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return SR_AUTO;
28528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
28558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(ETextAnchor e)
28568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
28576c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
28588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
28608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TA_START:
28618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueStart;
28628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TA_MIDDLE:
28648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueMiddle;
28658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case TA_END:
28678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueEnd;
28688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
28728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttemplate<> inline CSSPrimitiveValue::operator ETextAnchor() const
28738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (m_value.ident) {
28758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueStart:
28768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TA_START;
28778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueMiddle:
28788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TA_MIDDLE;
28798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case CSSValueEnd:
28808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TA_END;
28818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        default:
28828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            ASSERT_NOT_REACHED();
28838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            return TA_START;
28848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
28858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
28868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2887a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(SVGWritingMode e)
28888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    : m_type(CSS_IDENT)
28896c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    , m_hasCachedCSSText(false)
28908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
28918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    switch (e) {
28928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_LRTB:
28938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLrTb;
28948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_LR:
28968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueLr;
28978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
28988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_RLTB:
28998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRlTb;
29008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
29018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_RL:
29028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueRl;
29038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
29048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_TBRL:
29058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTbRl;
29068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
29078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        case WM_TB:
29088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            m_value.ident = CSSValueTb;
29098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project            break;
29108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
29118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
29128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2913a94275402997c11dd2e778633dacf4b7e630a35dBen Murdochtemplate<> inline CSSPrimitiveValue::operator SVGWritingMode() const
29148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
291568513a70bcd92384395513322f1b801e7bf9c729Steve Block    switch (m_value.ident) {
291668513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueLrTb:
291768513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_LRTB;
291868513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueLr:
291968513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_LR;
292068513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueRlTb:
292168513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_RLTB;
292268513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueRl:
292368513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_RL;
292468513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueTbRl:
292568513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_TBRL;
292668513a70bcd92384395513322f1b801e7bf9c729Steve Block    case CSSValueTb:
292768513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_TB;
292868513a70bcd92384395513322f1b801e7bf9c729Steve Block    default:
292968513a70bcd92384395513322f1b801e7bf9c729Steve Block        ASSERT_NOT_REACHED();
293068513a70bcd92384395513322f1b801e7bf9c729Steve Block        return WM_LRTB;
293168513a70bcd92384395513322f1b801e7bf9c729Steve Block    }
29328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
29338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2934545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochtemplate<> inline CSSPrimitiveValue::CSSPrimitiveValue(EVectorEffect e)
2935545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    : m_type(CSS_IDENT)
2936545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    , m_hasCachedCSSText(false)
2937545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch{
2938545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    switch (e) {
2939545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    case VE_NONE:
2940545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        m_value.ident = CSSValueNone;
2941545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        break;
2942545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    case VE_NON_SCALING_STROKE:
2943545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        m_value.ident = CSSValueNonScalingStroke;
2944545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        break;
2945545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    }
2946545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch}
2947545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
2948545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochtemplate<> inline CSSPrimitiveValue::operator EVectorEffect() const
2949545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch{
2950545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    switch (m_value.ident) {
2951545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    case CSSValueNone:
2952545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        return VE_NONE;
2953545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    case CSSValueNonScalingStroke:
2954545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        return VE_NON_SCALING_STROKE;
2955545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    default:
2956545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        ASSERT_NOT_REACHED();
2957545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        return VE_NONE;
2958545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    }
2959545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch}
2960a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch
29618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
29628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
29638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
29648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
29658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
2966