Remove superfluous TimingFunction::isXXXTimingFunction() helpers
In most cases it's better to use TimingFunction::type() in a switch statement.
R=dstockwell
Review URL: https://chromiumcodereview.appspot.com/23522007
git-svn-id: svn://svn.chromium.org/blink/trunk@157053 bbb929c8-8fbe-4397-9dbb-9b2b20218538
diff --git a/Source/core/animation/Timing.h b/Source/core/animation/Timing.h
index 9494979..43b04c0 100644
--- a/Source/core/animation/Timing.h
+++ b/Source/core/animation/Timing.h
@@ -85,7 +85,6 @@
double playbackRate;
PlaybackDirection direction;
RefPtr<TimingFunction> timingFunction;
-
};
} // namespace WebCore
diff --git a/Source/core/animation/css/CSSAnimations.cpp b/Source/core/animation/css/CSSAnimations.cpp
index 3b9c936..a13cbda 100644
--- a/Source/core/animation/css/CSSAnimations.cpp
+++ b/Source/core/animation/css/CSSAnimations.cpp
@@ -80,7 +80,7 @@
timing.iterationCount = animationData->iterationCount();
}
if (animationData->isTimingFunctionSet()) {
- if (!animationData->timingFunction()->isLinearTimingFunction())
+ if (animationData->timingFunction()->type() != TimingFunction::LinearFunction)
timing.timingFunction = animationData->timingFunction();
} else {
// CSS default is ease, default in model is linear.
diff --git a/Source/core/css/CSSComputedStyleDeclaration.cpp b/Source/core/css/CSSComputedStyleDeclaration.cpp
index c56c7a7..1c47bd1 100644
--- a/Source/core/css/CSSComputedStyleDeclaration.cpp
+++ b/Source/core/css/CSSComputedStyleDeclaration.cpp
@@ -1132,38 +1132,43 @@
static PassRefPtr<CSSValue> createTimingFunctionValue(const TimingFunction* timingFunction)
{
- if (timingFunction->isCubicBezierTimingFunction()) {
- const CubicBezierTimingFunction* bezierTimingFunction = static_cast<const CubicBezierTimingFunction*>(timingFunction);
- if (bezierTimingFunction->timingFunctionPreset() != CubicBezierTimingFunction::Custom) {
- CSSValueID valueId = CSSValueInvalid;
- switch (bezierTimingFunction->timingFunctionPreset()) {
- case CubicBezierTimingFunction::Ease:
- valueId = CSSValueEase;
- break;
- case CubicBezierTimingFunction::EaseIn:
- valueId = CSSValueEaseIn;
- break;
- case CubicBezierTimingFunction::EaseOut:
- valueId = CSSValueEaseOut;
- break;
- case CubicBezierTimingFunction::EaseInOut:
- valueId = CSSValueEaseInOut;
- break;
- default:
- ASSERT_NOT_REACHED();
- return 0;
+ switch (timingFunction->type()) {
+ case TimingFunction::CubicBezierFunction:
+ {
+ const CubicBezierTimingFunction* bezierTimingFunction = static_cast<const CubicBezierTimingFunction*>(timingFunction);
+ if (bezierTimingFunction->timingFunctionPreset() != CubicBezierTimingFunction::Custom) {
+ CSSValueID valueId = CSSValueInvalid;
+ switch (bezierTimingFunction->timingFunctionPreset()) {
+ case CubicBezierTimingFunction::Ease:
+ valueId = CSSValueEase;
+ break;
+ case CubicBezierTimingFunction::EaseIn:
+ valueId = CSSValueEaseIn;
+ break;
+ case CubicBezierTimingFunction::EaseOut:
+ valueId = CSSValueEaseOut;
+ break;
+ case CubicBezierTimingFunction::EaseInOut:
+ valueId = CSSValueEaseInOut;
+ break;
+ default:
+ ASSERT_NOT_REACHED();
+ return 0;
+ }
+ return cssValuePool().createIdentifierValue(valueId);
}
- return cssValuePool().createIdentifierValue(valueId);
+ return CSSCubicBezierTimingFunctionValue::create(bezierTimingFunction->x1(), bezierTimingFunction->y1(), bezierTimingFunction->x2(), bezierTimingFunction->y2());
}
- return CSSCubicBezierTimingFunctionValue::create(bezierTimingFunction->x1(), bezierTimingFunction->y1(), bezierTimingFunction->x2(), bezierTimingFunction->y2());
- }
- if (timingFunction->isStepsTimingFunction()) {
- const StepsTimingFunction* stepsTimingFunction = static_cast<const StepsTimingFunction*>(timingFunction);
- return CSSStepsTimingFunctionValue::create(stepsTimingFunction->numberOfSteps(), stepsTimingFunction->stepAtStart());
- }
+ case TimingFunction::StepsFunction:
+ {
+ const StepsTimingFunction* stepsTimingFunction = static_cast<const StepsTimingFunction*>(timingFunction);
+ return CSSStepsTimingFunctionValue::create(stepsTimingFunction->numberOfSteps(), stepsTimingFunction->stepAtStart());
+ }
- return cssValuePool().createIdentifierValue(CSSValueLinear);
+ default:
+ return cssValuePool().createIdentifierValue(CSSValueLinear);
+ }
}
static PassRefPtr<CSSValue> valueForAnimationTimingFunction(const CSSAnimationDataList* animList)
diff --git a/Source/core/platform/animation/TimingFunction.h b/Source/core/platform/animation/TimingFunction.h
index 1b95588..c156699 100644
--- a/Source/core/platform/animation/TimingFunction.h
+++ b/Source/core/platform/animation/TimingFunction.h
@@ -45,10 +45,6 @@
TimingFunctionType type() const { return m_type; }
- bool isLinearTimingFunction() const { return m_type == LinearFunction; }
- bool isCubicBezierTimingFunction() const { return m_type == CubicBezierFunction; }
- bool isStepsTimingFunction() const { return m_type == StepsFunction; }
-
// Evaluates the timing function at the given fraction. The accuracy parameter provides a hint as to the required
// accuracy and is not guaranteed.
virtual double evaluate(double fraction, double accuracy) const = 0;
@@ -79,7 +75,7 @@
virtual bool operator==(const TimingFunction& other) const
{
- return other.isLinearTimingFunction();
+ return other.type() == LinearFunction;
}
private:
@@ -144,7 +140,7 @@
virtual bool operator==(const TimingFunction& other) const
{
- if (other.isCubicBezierTimingFunction()) {
+ if (other.type() == CubicBezierFunction) {
const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(&other);
if (m_timingFunctionPreset != Custom)
return m_timingFunctionPreset == ctf->m_timingFunctionPreset;
@@ -196,7 +192,7 @@
virtual bool operator==(const TimingFunction& other) const
{
- if (other.isStepsTimingFunction()) {
+ if (other.type() == StepsFunction) {
const StepsTimingFunction* stf = static_cast<const StepsTimingFunction*>(&other);
return m_steps == stf->m_steps && m_stepAtStart == stf->m_stepAtStart;
}