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

Side by Side Diff: third_party/WebKit/Source/bindings/core/v8/ScriptWrappable.h

Issue 1851763002: Remove remaining code for object-grouping-during-scavenge (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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
« no previous file with comments | « content/renderer/render_process_impl.cc ('k') | 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) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 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 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 // The definition of fromNode is placed in Node.h because we'd like to 126 // The definition of fromNode is placed in Node.h because we'd like to
127 // inline calls to fromNode as much as possible. 127 // inline calls to fromNode as much as possible.
128 static ScriptWrappable* fromNode(Node*); 128 static ScriptWrappable* fromNode(Node*);
129 129
130 bool setReturnValue(v8::ReturnValue<v8::Value> returnValue) 130 bool setReturnValue(v8::ReturnValue<v8::Value> returnValue)
131 { 131 {
132 returnValue.Set(m_wrapper); 132 returnValue.Set(m_wrapper);
133 return containsWrapper(); 133 return containsWrapper();
134 } 134 }
135 135
136 void markAsDependentGroup(ScriptWrappable* groupRoot, v8::Isolate* isolate)
137 {
138 ASSERT(containsWrapper());
139 ASSERT(groupRoot && groupRoot->containsWrapper());
140
141 // FIXME: There has to be a better way.
142 v8::UniqueId groupId(*reinterpret_cast<intptr_t*>(&groupRoot->m_wrapper) );
143 m_wrapper.MarkPartiallyDependent();
144 isolate->SetObjectGroupId(v8::Persistent<v8::Value>::Cast(m_wrapper), gr oupId);
145 }
146
147 void setReference(const v8::Persistent<v8::Object>& parent, v8::Isolate* iso late) 136 void setReference(const v8::Persistent<v8::Object>& parent, v8::Isolate* iso late)
148 { 137 {
149 isolate->SetReference(parent, m_wrapper); 138 isolate->SetReference(parent, m_wrapper);
150 } 139 }
151 140
152 bool containsWrapper() const { return !m_wrapper.IsEmpty(); } 141 bool containsWrapper() const { return !m_wrapper.IsEmpty(); }
153 142
154 #if !ENABLE(OILPAN) 143 #if !ENABLE(OILPAN)
155 protected: 144 protected:
156 virtual ~ScriptWrappable() 145 virtual ~ScriptWrappable()
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 // in X's cpp code, and instantiate X, i.e. "template class X;". 231 // in X's cpp code, and instantiate X, i.e. "template class X;".
243 #define DECLARE_WRAPPERTYPEINFO() \ 232 #define DECLARE_WRAPPERTYPEINFO() \
244 public: \ 233 public: \
245 const WrapperTypeInfo* wrapperTypeInfo() const override; \ 234 const WrapperTypeInfo* wrapperTypeInfo() const override; \
246 private: \ 235 private: \
247 typedef void end_of_define_wrappertypeinfo_not_reached_t 236 typedef void end_of_define_wrappertypeinfo_not_reached_t
248 237
249 } // namespace blink 238 } // namespace blink
250 239
251 #endif // ScriptWrappable_h 240 #endif // ScriptWrappable_h
OLDNEW
« no previous file with comments | « content/renderer/render_process_impl.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698