OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2005 Frerich Raabe <raabe@kde.org> | 2 * Copyright 2005 Frerich Raabe <raabe@kde.org> |
3 * Copyright (C) 2006 Apple Computer, Inc. | 3 * Copyright (C) 2006 Apple Computer, Inc. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 ValueData() : m_nodeSet(NodeSet::create()) {} | 55 ValueData() : m_nodeSet(NodeSet::create()) {} |
56 explicit ValueData(const NodeSet& nodeSet) | 56 explicit ValueData(const NodeSet& nodeSet) |
57 : m_nodeSet(NodeSet::create(nodeSet)) {} | 57 : m_nodeSet(NodeSet::create(nodeSet)) {} |
58 explicit ValueData(NodeSet* nodeSet) : m_nodeSet(nodeSet) {} | 58 explicit ValueData(NodeSet* nodeSet) : m_nodeSet(nodeSet) {} |
59 explicit ValueData(const String& string) | 59 explicit ValueData(const String& string) |
60 : m_string(string), m_nodeSet(NodeSet::create()) {} | 60 : m_string(string), m_nodeSet(NodeSet::create()) {} |
61 | 61 |
62 Member<NodeSet> m_nodeSet; | 62 Member<NodeSet> m_nodeSet; |
63 }; | 63 }; |
64 | 64 |
65 // Copying Value objects makes their data partially shared, so care has to be ta
ken when dealing with copies. | 65 // Copying Value objects makes their data partially shared, so care has to be |
| 66 // taken when dealing with copies. |
66 class Value { | 67 class Value { |
67 DISALLOW_NEW(); | 68 DISALLOW_NEW(); |
68 | 69 |
69 public: | 70 public: |
70 enum Type { NodeSetValue, BooleanValue, NumberValue, StringValue }; | 71 enum Type { NodeSetValue, BooleanValue, NumberValue, StringValue }; |
71 | 72 |
72 Value(unsigned value) : m_type(NumberValue), m_bool(false), m_number(value) {} | 73 Value(unsigned value) : m_type(NumberValue), m_bool(false), m_number(value) {} |
73 Value(unsigned long value) | 74 Value(unsigned long value) |
74 : m_type(NumberValue), m_bool(false), m_number(value) {} | 75 : m_type(NumberValue), m_bool(false), m_number(value) {} |
75 Value(double value) : m_type(NumberValue), m_bool(false), m_number(value) {} | 76 Value(double value) : m_type(NumberValue), m_bool(false), m_number(value) {} |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 | 136 |
136 template <> | 137 template <> |
137 inline Value::Value(bool value) | 138 inline Value::Value(bool value) |
138 : m_type(BooleanValue), m_bool(value), m_number(0) {} | 139 : m_type(BooleanValue), m_bool(value), m_number(0) {} |
139 | 140 |
140 } // namespace XPath | 141 } // namespace XPath |
141 | 142 |
142 } // namespace blink | 143 } // namespace blink |
143 | 144 |
144 #endif // XPathValue_h | 145 #endif // XPathValue_h |
OLD | NEW |