Changeset 148921 in webkit for trunk/Source/WebCore/css/CSSValue.cpp
- Timestamp:
- Apr 22, 2013, 3:52:23 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/css/CSSValue.cpp
r148852 r148921 56 56 #include "SVGColor.h" 57 57 #include "SVGPaint.h" 58 #include "WebCoreMemoryInstrumentation.h"59 58 #include "WebKitCSSArrayFunctionValue.h" 60 59 #include "WebKitCSSFilterValue.h" … … 81 80 82 81 String cssText() const { return m_cssText; } 83 84 void reportDescendantMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const85 {86 MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::CSS);87 info.addMember(m_cssText, "cssText");88 }89 82 90 83 private: … … 150 143 #endif 151 144 return false; 152 }153 154 void CSSValue::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const155 {156 if (m_isTextClone) {157 ASSERT(isCSSOMSafe());158 static_cast<const TextCloneCSSValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);159 return;160 }161 162 ASSERT(!isCSSOMSafe() || isSubtypeExposedToCSSOM());163 switch (classType()) {164 case PrimitiveClass:165 static_cast<const CSSPrimitiveValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);166 return;167 case ImageClass:168 static_cast<const CSSImageValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);169 return;170 case CursorImageClass:171 static_cast<const CSSCursorImageValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);172 return;173 case CanvasClass:174 static_cast<const CSSCanvasValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);175 return;176 case CrossfadeClass:177 static_cast<const CSSCrossfadeValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);178 return;179 case LinearGradientClass:180 static_cast<const CSSLinearGradientValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);181 return;182 case RadialGradientClass:183 static_cast<const CSSRadialGradientValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);184 return;185 case CubicBezierTimingFunctionClass:186 static_cast<const CSSCubicBezierTimingFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);187 return;188 case LinearTimingFunctionClass:189 static_cast<const CSSLinearTimingFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);190 return;191 case StepsTimingFunctionClass:192 static_cast<const CSSStepsTimingFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);193 return;194 case AspectRatioClass:195 static_cast<const CSSAspectRatioValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);196 return;197 case BorderImageSliceClass:198 static_cast<const CSSBorderImageSliceValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);199 return;200 case FontFeatureClass:201 static_cast<const FontFeatureValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);202 return;203 case FontClass:204 static_cast<const FontValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);205 return;206 case FontFaceSrcClass:207 static_cast<const CSSFontFaceSrcValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);208 return;209 case FunctionClass:210 static_cast<const CSSFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);211 return;212 case InheritedClass:213 static_cast<const CSSInheritedValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);214 return;215 case InitialClass:216 static_cast<const CSSInitialValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);217 return;218 case ReflectClass:219 static_cast<const CSSReflectValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);220 return;221 case ShadowClass:222 static_cast<const ShadowValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);223 return;224 case UnicodeRangeClass:225 static_cast<const CSSUnicodeRangeValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);226 return;227 case LineBoxContainClass:228 static_cast<const CSSLineBoxContainValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);229 return;230 case CalculationClass:231 static_cast<const CSSCalcValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);232 return;233 #if ENABLE(CSS_FILTERS) && ENABLE(CSS_SHADERS)234 case WebKitCSSArrayFunctionValueClass:235 static_cast<const WebKitCSSArrayFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);236 return;237 case WebKitCSSMatFunctionValueClass:238 static_cast<const WebKitCSSMatFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);239 return;240 case WebKitCSSMixFunctionValueClass:241 static_cast<const WebKitCSSMixFunctionValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);242 return;243 case WebKitCSSShaderClass:244 static_cast<const WebKitCSSShaderValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);245 return;246 #endif247 #if ENABLE(CSS_VARIABLES)248 case VariableClass:249 static_cast<const CSSVariableValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);250 return;251 #endif252 #if ENABLE(SVG)253 case SVGColorClass:254 static_cast<const SVGColor*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);255 return;256 case SVGPaintClass:257 static_cast<const SVGPaint*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);258 return;259 case WebKitCSSSVGDocumentClass:260 static_cast<const WebKitCSSSVGDocumentValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);261 return;262 #endif263 case ValueListClass:264 static_cast<const CSSValueList*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);265 return;266 #if ENABLE(CSS_IMAGE_SET)267 case ImageSetClass:268 static_cast<const CSSImageSetValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);269 return;270 #endif271 #if ENABLE(CSS_FILTERS)272 case WebKitCSSFilterClass:273 static_cast<const WebKitCSSFilterValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);274 return;275 #endif276 case WebKitCSSTransformClass:277 static_cast<const WebKitCSSTransformValue*>(this)->reportDescendantMemoryUsage(memoryObjectInfo);278 return;279 }280 ASSERT_NOT_REACHED();281 145 } 282 146
Note:
See TracChangeset
for help on using the changeset viewer.