Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(245)

Side by Side Diff: Source/platform/heap/Handle.h

Issue 1325033002: Oilpan: Fix a wrong comment on a Persistent handle (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 inline void recordBacktrace() const { } 262 inline void recordBacktrace() const { }
263 #endif 263 #endif
264 // m_raw is accessed most, so put it at the first field. 264 // m_raw is accessed most, so put it at the first field.
265 T* m_raw; 265 T* m_raw;
266 PersistentNode* m_persistentNode; 266 PersistentNode* m_persistentNode;
267 #if ENABLE(ASSERT) 267 #if ENABLE(ASSERT)
268 ThreadState* m_state; 268 ThreadState* m_state;
269 #endif 269 #endif
270 }; 270 };
271 271
272 // Persistent is a way to create a strong pointer from an on-heap object 272 // Persistent is a way to create a strong pointer from an off-heap object
273 // to another on-heap object. As long as the Persistent handle is alive 273 // to another on-heap object. As long as the Persistent handle is alive
274 // the GC will keep the object pointed to alive. The Persistent handle is 274 // the GC will keep the object pointed to alive. The Persistent handle is
275 // always a GC root from the point of view of the GC. 275 // always a GC root from the point of view of the GC.
276 // 276 //
277 // We have to construct and destruct Persistent in the same thread. 277 // We have to construct and destruct Persistent in the same thread.
278 template<typename T> 278 template<typename T>
279 class Persistent : public PersistentBase<T, NonWeakPersistentConfiguration, Sing leThreadPersistentConfiguration> { 279 class Persistent : public PersistentBase<T, NonWeakPersistentConfiguration, Sing leThreadPersistentConfiguration> {
280 typedef PersistentBase<T, NonWeakPersistentConfiguration, SingleThreadPersis tentConfiguration> Parent; 280 typedef PersistentBase<T, NonWeakPersistentConfiguration, SingleThreadPersis tentConfiguration> Parent;
281 public: 281 public:
282 Persistent() : Parent() { } 282 Persistent() : Parent() { }
(...skipping 896 matching lines...) Expand 10 before | Expand all | Expand 10 after
1179 struct ParamStorageTraits<RawPtr<T>> : public PointerParamStorageTraits<T*, blin k::IsGarbageCollectedType<T>::value> { 1179 struct ParamStorageTraits<RawPtr<T>> : public PointerParamStorageTraits<T*, blin k::IsGarbageCollectedType<T>::value> {
1180 static_assert(sizeof(T), "T must be fully defined"); 1180 static_assert(sizeof(T), "T must be fully defined");
1181 }; 1181 };
1182 1182
1183 template<typename T> 1183 template<typename T>
1184 PassRefPtr<T> adoptRef(blink::RefCountedGarbageCollected<T>*) = delete; 1184 PassRefPtr<T> adoptRef(blink::RefCountedGarbageCollected<T>*) = delete;
1185 1185
1186 } // namespace WTF 1186 } // namespace WTF
1187 1187
1188 #endif 1188 #endif
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698