OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2014 Google Inc. All rights reserved. | 2 * Copyright (C) 2014 Google 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 are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
545 { | 545 { |
546 return static_cast<U*>(m_raw); | 546 return static_cast<U*>(m_raw); |
547 } | 547 } |
548 | 548 |
549 bool operator!() const { return !m_raw; } | 549 bool operator!() const { return !m_raw; } |
550 | 550 |
551 operator T*() const { return m_raw; } | 551 operator T*() const { return m_raw; } |
552 | 552 |
553 T* operator->() const { return m_raw; } | 553 T* operator->() const { return m_raw; } |
554 T& operator*() const { return *m_raw; } | 554 T& operator*() const { return *m_raw; } |
555 operator RawPtr<T>() const { return m_raw; } | 555 template<typename U> |
556 operator RawPtr<U>() const { return m_raw; } | |
zerny-chromium
2014/06/04 09:28:18
Generalizing this operator causes ambiguity since
tkent
2014/06/05 00:22:27
Without this, we need to add dozens of .get() to c
| |
556 | 557 |
557 template<typename U> | 558 template<typename U> |
558 Member& operator=(const Persistent<U>& other) | 559 Member& operator=(const Persistent<U>& other) |
559 { | 560 { |
560 m_raw = other; | 561 m_raw = other; |
561 return *this; | 562 return *this; |
562 } | 563 } |
563 | 564 |
564 template<typename U> | 565 template<typename U> |
565 Member& operator=(const Member<U>& other) | 566 Member& operator=(const Member<U>& other) |
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1147 struct NeedsTracing<ListHashSetNode<T, WebCore::HeapListHashSetAllocator<T, inli neCapacity> > *> { | 1148 struct NeedsTracing<ListHashSetNode<T, WebCore::HeapListHashSetAllocator<T, inli neCapacity> > *> { |
1148 // All heap allocated node pointers need visiting to keep the nodes alive, | 1149 // All heap allocated node pointers need visiting to keep the nodes alive, |
1149 // regardless of whether they contain pointers to other heap allocated | 1150 // regardless of whether they contain pointers to other heap allocated |
1150 // objects. | 1151 // objects. |
1151 static const bool value = true; | 1152 static const bool value = true; |
1152 }; | 1153 }; |
1153 | 1154 |
1154 } // namespace WTF | 1155 } // namespace WTF |
1155 | 1156 |
1156 #endif | 1157 #endif |
OLD | NEW |