Index: Source/core/svg/SVGNumberList.h |
diff --git a/Source/core/svg/SVGNumberList.h b/Source/core/svg/SVGNumberList.h |
index 828131fc018236ff2ce60915efe27cf3d324cf65..85c197e0f55455d06fbddbff005d54fde9623a6b 100644 |
--- a/Source/core/svg/SVGNumberList.h |
+++ b/Source/core/svg/SVGNumberList.h |
@@ -21,18 +21,28 @@ |
#ifndef SVGNumberList_h |
#define SVGNumberList_h |
+#include "core/svg/SVGNumber.h" |
#include "core/svg/properties/SVGPropertyTraits.h" |
#include <wtf/Vector.h> |
namespace WebCore { |
-class SVGNumberList : public Vector<float> { |
+class SVGNumberList : public Vector<SVGNumber> { |
public: |
SVGNumberList() { } |
void parse(const String&); |
String valueAsString() const; |
+ Vector<float> toFloatVector() const |
+ { |
+ Vector<float> result; |
+ result.reserveInitialCapacity(size()); |
+ for (size_t i = 0; i < size(); ++i) |
+ result.uncheckedAppend(at(i).value()); |
+ return result; |
+ } |
+ |
private: |
template<typename CharType> |
void parseInternal(const CharType*& ptr, const CharType* end); |
@@ -40,7 +50,7 @@ private: |
template<> |
struct SVGPropertyTraits<SVGNumberList> { |
- typedef float ListItemType; |
+ typedef SVGNumber ListItemType; |
static SVGNumberList initialValue() { return SVGNumberList(); } |
static String toString(const SVGNumberList& type) { return type.valueAsString(); } |