1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SVGPropertyHelper_h
6#define SVGPropertyHelper_h
7
8#include "bindings/core/v8/ExceptionStatePlaceholder.h"
9#include "core/svg/properties/SVGProperty.h"
10
11namespace blink {
12
13template<typename Derived>
14class SVGPropertyHelper : public SVGPropertyBase {
15public:
16    SVGPropertyHelper()
17        : SVGPropertyBase(Derived::classType())
18    {
19    }
20
21    virtual PassRefPtr<SVGPropertyBase> cloneForAnimation(const String& value) const
22    {
23        RefPtr<Derived> property = Derived::create();
24        property->setValueAsString(value, IGNORE_EXCEPTION);
25        return property.release();
26    }
27};
28
29}
30
31#endif // SVGPropertyHelper_h
32