| Index: experimental/svg/model/SkSVGAttributeParser.h
|
| diff --git a/experimental/svg/model/SkSVGAttributeParser.h b/experimental/svg/model/SkSVGAttributeParser.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..aef028650481c8458ce2fa02cd9e3c017999b9e9
|
| --- /dev/null
|
| +++ b/experimental/svg/model/SkSVGAttributeParser.h
|
| @@ -0,0 +1,45 @@
|
| +/*
|
| + * Copyright 2016 Google Inc.
|
| + *
|
| + * Use of this source code is governed by a BSD-style license that can be
|
| + * found in the LICENSE file.
|
| + */
|
| +
|
| +#ifndef SkSVGAttributeParser_DEFINED
|
| +#define SkSVGAttributeParser_DEFINED
|
| +
|
| +#include "SkSVGTypes.h"
|
| +
|
| +class SkSVGAttributeParser : public SkNoncopyable {
|
| +public:
|
| + SkSVGAttributeParser(const char[]);
|
| +
|
| + bool parseColor(SkSVGColor*);
|
| + bool parseNumber(SkSVGNumber*);
|
| + bool parseLength(SkSVGLength*);
|
| +
|
| +private:
|
| + // Stack-only
|
| + void* operator new(size_t) = delete;
|
| + void* operator new(size_t, void*) = delete;
|
| +
|
| + template <typename F>
|
| + bool advanceWhile(F func);
|
| +
|
| + bool parseWSToken();
|
| + bool parseEOSToken();
|
| + bool parseSepToken();
|
| + bool parseExpectedStringToken(const char*);
|
| + bool parseScalarToken(SkScalar*);
|
| + bool parseHexToken(uint32_t*);
|
| + bool parseLengthUnitToken(SkSVGLength::Unit*);
|
| + bool parseNamedColorToken(SkColor*);
|
| + bool parseHexColorToken(SkColor*);
|
| +
|
| + // The current position in the input string.
|
| + const char* fCurPos;
|
| +
|
| + typedef SkNoncopyable INHERITED;
|
| +};
|
| +
|
| +#endif // SkSVGAttributeParser_DEFINED
|
|
|