OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2010 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
11 * documentation and/or other materials provided with the distribution. | 11 * documentation and/or other materials provided with the distribution. |
12 * | 12 * |
13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND AN
Y | 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND AN
Y |
14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
16 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR AN
Y | 16 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR AN
Y |
17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
18 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 18 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
19 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND O
N | 19 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND O
N |
20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
22 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 22 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
23 */ | 23 */ |
24 | 24 |
25 #ifndef HTMLParserIdioms_h | 25 #ifndef HTMLParserIdioms_h |
26 #define HTMLParserIdioms_h | 26 #define HTMLParserIdioms_h |
27 | 27 |
| 28 #include "core/CoreExport.h" |
28 #include "core/dom/QualifiedName.h" | 29 #include "core/dom/QualifiedName.h" |
29 #include "platform/Decimal.h" | 30 #include "platform/Decimal.h" |
30 #include "wtf/Forward.h" | 31 #include "wtf/Forward.h" |
31 #include "wtf/text/WTFString.h" | 32 #include "wtf/text/WTFString.h" |
32 | 33 |
33 namespace WTF { | 34 namespace WTF { |
34 class TextEncoding; | 35 class TextEncoding; |
35 } | 36 } |
36 | 37 |
37 namespace blink { | 38 namespace blink { |
(...skipping 16 matching lines...) Expand all Loading... |
54 Decimal parseToDecimalForNumberType(const String&, const Decimal& fallbackValue
= Decimal::nan()); | 55 Decimal parseToDecimalForNumberType(const String&, const Decimal& fallbackValue
= Decimal::nan()); |
55 double parseToDoubleForNumberType(const String&, double fallbackValue = std::num
eric_limits<double>::quiet_NaN()); | 56 double parseToDoubleForNumberType(const String&, double fallbackValue = std::num
eric_limits<double>::quiet_NaN()); |
56 | 57 |
57 // http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-integers | 58 // http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-integers |
58 bool parseHTMLInteger(const String&, int&); | 59 bool parseHTMLInteger(const String&, int&); |
59 | 60 |
60 // http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-non-nega
tive-integers | 61 // http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-non-nega
tive-integers |
61 bool parseHTMLNonNegativeInteger(const String&, unsigned&); | 62 bool parseHTMLNonNegativeInteger(const String&, unsigned&); |
62 | 63 |
63 // https://html.spec.whatwg.org/multipage/infrastructure.html#rules-for-parsing-
a-list-of-floating-point-numbers | 64 // https://html.spec.whatwg.org/multipage/infrastructure.html#rules-for-parsing-
a-list-of-floating-point-numbers |
64 Vector<double> parseHTMLListOfFloatingPointNumbers(const String&); | 65 CORE_EXPORT Vector<double> parseHTMLListOfFloatingPointNumbers(const String&); |
65 | 66 |
66 typedef Vector<std::pair<String, String>> HTMLAttributeList; | 67 typedef Vector<std::pair<String, String>> HTMLAttributeList; |
67 // The returned encoding might not be valid. | 68 // The returned encoding might not be valid. |
68 WTF::TextEncoding encodingFromMetaAttributes(const HTMLAttributeList&); | 69 WTF::TextEncoding encodingFromMetaAttributes(const HTMLAttributeList&); |
69 | 70 |
70 // Space characters as defined by the HTML specification. | 71 // Space characters as defined by the HTML specification. |
71 template<typename CharType> | 72 template<typename CharType> |
72 inline bool isHTMLSpace(CharType character) | 73 inline bool isHTMLSpace(CharType character) |
73 { | 74 { |
74 // Histogram from Apple's page load test combined with some ad hoc browsing
some other test suites. | 75 // Histogram from Apple's page load test combined with some ad hoc browsing
some other test suites. |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 | 129 |
129 inline static String attemptStaticStringCreation(const String str) | 130 inline static String attemptStaticStringCreation(const String str) |
130 { | 131 { |
131 if (!str.is8Bit()) | 132 if (!str.is8Bit()) |
132 return attemptStaticStringCreation(str.characters16(), str.length(), For
ce16Bit); | 133 return attemptStaticStringCreation(str.characters16(), str.length(), For
ce16Bit); |
133 return attemptStaticStringCreation(str.characters8(), str.length()); | 134 return attemptStaticStringCreation(str.characters8(), str.length()); |
134 } | 135 } |
135 | 136 |
136 } // namespace blink | 137 } // namespace blink |
137 #endif | 138 #endif |
OLD | NEW |