| 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 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 505 template<typename U> | 505 template<typename U> |
| 506 CrossThreadWeakPersistent& operator=(const RawPtr<U>& other) | 506 CrossThreadWeakPersistent& operator=(const RawPtr<U>& other) |
| 507 { | 507 { |
| 508 Parent::operator=(other); | 508 Parent::operator=(other); |
| 509 return *this; | 509 return *this; |
| 510 } | 510 } |
| 511 }; | 511 }; |
| 512 | 512 |
| 513 template<typename Collection> | 513 template<typename Collection> |
| 514 class PersistentHeapCollectionBase : public Collection { | 514 class PersistentHeapCollectionBase : public Collection { |
| 515 // We overload the various new and delete operators with using the WTF Defau
ltAllocator to ensure persistent | 515 // We overload the various new and delete operators with using the WTF Parti
tionAllocator to ensure persistent |
| 516 // heap collections are always allocated off-heap. This allows persistent co
llections to be used in | 516 // heap collections are always allocated off-heap. This allows persistent co
llections to be used in |
| 517 // DEFINE_STATIC_LOCAL et. al. | 517 // DEFINE_STATIC_LOCAL et. al. |
| 518 WTF_USE_ALLOCATOR(PersistentHeapCollectionBase, WTF::DefaultAllocator); | 518 WTF_USE_ALLOCATOR(PersistentHeapCollectionBase, WTF::PartitionAllocator); |
| 519 public: | 519 public: |
| 520 PersistentHeapCollectionBase() | 520 PersistentHeapCollectionBase() |
| 521 { | 521 { |
| 522 initialize(); | 522 initialize(); |
| 523 } | 523 } |
| 524 | 524 |
| 525 PersistentHeapCollectionBase(const PersistentHeapCollectionBase& other) : Co
llection(other) | 525 PersistentHeapCollectionBase(const PersistentHeapCollectionBase& other) : Co
llection(other) |
| 526 { | 526 { |
| 527 initialize(); | 527 initialize(); |
| 528 } | 528 } |
| (...skipping 975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1504 // TODO(sof): extend WTF::FunctionWrapper call overloading to also handle (C
rossThread)WeakPersistent. | 1504 // TODO(sof): extend WTF::FunctionWrapper call overloading to also handle (C
rossThread)WeakPersistent. |
| 1505 static T* unwrap(const StorageType& value) { return value.get(); } | 1505 static T* unwrap(const StorageType& value) { return value.get(); } |
| 1506 }; | 1506 }; |
| 1507 | 1507 |
| 1508 template<typename T> | 1508 template<typename T> |
| 1509 PassRefPtr<T> adoptRef(blink::RefCountedGarbageCollected<T>*) = delete; | 1509 PassRefPtr<T> adoptRef(blink::RefCountedGarbageCollected<T>*) = delete; |
| 1510 | 1510 |
| 1511 } // namespace WTF | 1511 } // namespace WTF |
| 1512 | 1512 |
| 1513 #endif | 1513 #endif |
| OLD | NEW |