OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * Copyright (C) 2004, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 4 * Copyright (C) 2004, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 | 108 |
109 // Intentionally left unimplemented, template specialization needs to be provide
d for specific | 109 // Intentionally left unimplemented, template specialization needs to be provide
d for specific |
110 // return types. | 110 // return types. |
111 template<typename T> inline const T& toElement(const FormAssociatedElement&); | 111 template<typename T> inline const T& toElement(const FormAssociatedElement&); |
112 template<typename T> inline const T* toElement(const FormAssociatedElement*); | 112 template<typename T> inline const T* toElement(const FormAssociatedElement*); |
113 | 113 |
114 // Make toHTMLObjectElement() accept a FormAssociatedElement as input instead of
a Node. | 114 // Make toHTMLObjectElement() accept a FormAssociatedElement as input instead of
a Node. |
115 template<> inline const HTMLObjectElement* toElement<HTMLObjectElement>(const Fo
rmAssociatedElement* element) | 115 template<> inline const HTMLObjectElement* toElement<HTMLObjectElement>(const Fo
rmAssociatedElement* element) |
116 { | 116 { |
117 ASSERT_WITH_SECURITY_IMPLICATION(!element || !element->isFormControlElement(
)); | 117 ASSERT_WITH_SECURITY_IMPLICATION(!element || !element->isFormControlElement(
)); |
118 ASSERT_WITH_SECURITY_IMPLICATION(!element || !element->isLabelElement()); | |
119 const HTMLObjectElement* objectElement = static_cast<const HTMLObjectElement
*>(element); | 118 const HTMLObjectElement* objectElement = static_cast<const HTMLObjectElement
*>(element); |
120 // We need to assert after the cast because FormAssociatedElement doesn't | 119 // We need to assert after the cast because FormAssociatedElement doesn't |
121 // have hasTagName. | 120 // have hasTagName. |
122 ASSERT_WITH_SECURITY_IMPLICATION(!objectElement || objectElement->hasTagName
(HTMLNames::objectTag)); | 121 ASSERT_WITH_SECURITY_IMPLICATION(!objectElement || objectElement->hasTagName
(HTMLNames::objectTag)); |
123 return objectElement; | 122 return objectElement; |
124 } | 123 } |
125 | 124 |
126 template<> inline const HTMLObjectElement& toElement<HTMLObjectElement>(const Fo
rmAssociatedElement& element) | 125 template<> inline const HTMLObjectElement& toElement<HTMLObjectElement>(const Fo
rmAssociatedElement& element) |
127 { | 126 { |
128 ASSERT_WITH_SECURITY_IMPLICATION(!element.isFormControlElement()); | 127 ASSERT_WITH_SECURITY_IMPLICATION(!element.isFormControlElement()); |
129 ASSERT_WITH_SECURITY_IMPLICATION(!element.isLabelElement()); | |
130 const HTMLObjectElement& objectElement = static_cast<const HTMLObjectElement
&>(element); | 128 const HTMLObjectElement& objectElement = static_cast<const HTMLObjectElement
&>(element); |
131 // We need to assert after the cast because FormAssociatedElement doesn't | 129 // We need to assert after the cast because FormAssociatedElement doesn't |
132 // have hasTagName. | 130 // have hasTagName. |
133 ASSERT_WITH_SECURITY_IMPLICATION(objectElement.hasTagName(HTMLNames::objectT
ag)); | 131 ASSERT_WITH_SECURITY_IMPLICATION(objectElement.hasTagName(HTMLNames::objectT
ag)); |
134 return objectElement; | 132 return objectElement; |
135 } | 133 } |
136 | 134 |
137 } // namespace blink | 135 } // namespace blink |
138 | 136 |
139 #endif // HTMLObjectElement_h | 137 #endif // HTMLObjectElement_h |
OLD | NEW |