OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2003, 2005, 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2003, 2005, 2008 Apple Inc. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 return m_data == o.m_data || *m_data == *o.m_data; | 55 return m_data == o.m_data || *m_data == *o.m_data; |
56 } | 56 } |
57 | 57 |
58 bool operator!=(const DataRef<T>& o) const | 58 bool operator!=(const DataRef<T>& o) const |
59 { | 59 { |
60 ASSERT(m_data); | 60 ASSERT(m_data); |
61 ASSERT(o.m_data); | 61 ASSERT(o.m_data); |
62 return m_data != o.m_data && *m_data != *o.m_data; | 62 return m_data != o.m_data && *m_data != *o.m_data; |
63 } | 63 } |
64 | 64 |
65 // Template helps us to write the implementation without MemoryInstrumentati
on.h include. | |
66 template<typename MemoryObjectInfo> | |
67 void reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const | |
68 { | |
69 typename MemoryObjectInfo::ClassInfo info(memoryObjectInfo, this); | |
70 info.addMember(m_data, "data"); | |
71 } | |
72 | |
73 private: | 65 private: |
74 RefPtr<T> m_data; | 66 RefPtr<T> m_data; |
75 }; | 67 }; |
76 | 68 |
77 } // namespace WebCore | 69 } // namespace WebCore |
78 | 70 |
79 #endif // DataRef_h | 71 #endif // DataRef_h |
OLD | NEW |