Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "config.h" | 5 #include "config.h" |
| 6 #include "core/css/parser/MediaQueryToken.h" | 6 #include "core/css/parser/MediaQueryToken.h" |
| 7 | 7 |
| 8 #include "wtf/HashMap.h" | 8 #include "wtf/HashMap.h" |
| 9 #include "wtf/text/StringHash.h" | 9 #include "wtf/text/StringHash.h" |
| 10 #include <limits.h> | 10 #include <limits.h> |
| 11 | 11 |
| 12 namespace WebCore { | 12 namespace WebCore { |
| 13 | 13 |
| 14 | 14 |
| 15 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type) | 15 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type) |
| 16 : m_type(type) | 16 : m_type(type) |
| 17 , m_delimiter(0) | 17 , m_delimiter(0) |
| 18 , m_numericValue(0) | 18 , m_numericValue(0) |
| 19 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) | 19 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) |
| 20 , m_blockType(NotBlock) | |
| 21 , m_blockLevel(0) | |
| 20 { | 22 { |
| 21 } | 23 } |
| 22 | 24 |
| 25 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, BlockType blockType) | |
| 26 : m_type(type) | |
| 27 , m_delimiter(0) | |
| 28 , m_numericValue(0) | |
| 29 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) | |
| 30 , m_blockType(blockType) | |
| 31 , m_blockLevel(0) | |
| 32 { | |
| 33 } | |
| 34 | |
| 23 // Just a helper used for Delimiter tokens. | 35 // Just a helper used for Delimiter tokens. |
| 24 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, UChar c) | 36 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, UChar c) |
| 25 : m_type(type) | 37 : m_type(type) |
| 26 , m_delimiter(c) | 38 , m_delimiter(c) |
| 27 , m_numericValue(0) | 39 , m_numericValue(0) |
| 28 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) | 40 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) |
| 41 , m_blockType(NotBlock) | |
| 42 , m_blockLevel(0) | |
| 29 { | 43 { |
| 30 ASSERT(m_type == DelimiterToken); | 44 ASSERT(m_type == DelimiterToken); |
| 31 } | 45 } |
| 32 | 46 |
| 33 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, String value) | 47 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, String value) |
| 34 : m_type(type) | 48 : m_type(type) |
| 35 , m_value(value) | 49 , m_value(value) |
| 36 , m_delimiter(0) | 50 , m_delimiter(0) |
| 37 , m_numericValue(0) | 51 , m_numericValue(0) |
| 38 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) | 52 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) |
| 53 , m_blockType(NotBlock) | |
| 54 , m_blockLevel(0) | |
| 39 { | 55 { |
| 40 } | 56 } |
| 41 | 57 |
| 58 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, String value, BlockTy pe blockType) | |
|
eseidel
2014/04/08 22:58:51
It's really error-prone to have this many conctruc
| |
| 59 : m_type(type) | |
| 60 , m_value(value) | |
| 61 , m_delimiter(0) | |
| 62 , m_numericValue(0) | |
| 63 , m_unit(CSSPrimitiveValue::CSS_UNKNOWN) | |
| 64 , m_blockType(blockType) | |
| 65 , m_blockLevel(0) | |
| 66 { | |
| 67 } | |
| 68 | |
| 69 | |
| 42 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, double numericValue, NumericValueType numericValueType) | 70 MediaQueryToken::MediaQueryToken(MediaQueryTokenType type, double numericValue, NumericValueType numericValueType) |
| 43 : m_type(type) | 71 : m_type(type) |
| 44 , m_delimiter(0) | 72 , m_delimiter(0) |
| 45 , m_numericValueType(numericValueType) | 73 , m_numericValueType(numericValueType) |
| 46 , m_numericValue(numericValue) | 74 , m_numericValue(numericValue) |
| 47 , m_unit(CSSPrimitiveValue::CSS_NUMBER) | 75 , m_unit(CSSPrimitiveValue::CSS_NUMBER) |
| 76 , m_blockType(NotBlock) | |
| 77 , m_blockLevel(0) | |
| 48 { | 78 { |
| 49 ASSERT(type == NumberToken); | 79 ASSERT(type == NumberToken); |
| 50 } | 80 } |
| 51 | 81 |
| 52 void MediaQueryToken::convertToDimensionWithUnit(String unit) | 82 void MediaQueryToken::convertToDimensionWithUnit(String unit) |
| 53 { | 83 { |
| 54 ASSERT(m_type == NumberToken); | 84 ASSERT(m_type == NumberToken); |
| 55 m_type = DimensionToken; | 85 m_type = DimensionToken; |
| 56 m_unit = CSSPrimitiveValue::fromName(unit); | 86 m_unit = CSSPrimitiveValue::fromName(unit); |
| 57 } | 87 } |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 96 sprintf(buffer, "%d%s", static_cast<int>(m_numericValue), unitBuffer ); | 126 sprintf(buffer, "%d%s", static_cast<int>(m_numericValue), unitBuffer ); |
| 97 else | 127 else |
| 98 sprintf(buffer, "%f%s", m_numericValue, unitBuffer); | 128 sprintf(buffer, "%f%s", m_numericValue, unitBuffer); |
| 99 | 129 |
| 100 return String(buffer, strlen(buffer)); | 130 return String(buffer, strlen(buffer)); |
| 101 } | 131 } |
| 102 return String(); | 132 return String(); |
| 103 } | 133 } |
| 104 | 134 |
| 105 } // namespace WebCore | 135 } // namespace WebCore |
| OLD | NEW |