OLD | NEW |
---|---|
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_GLOBAL_HANDLES_H_ | 5 #ifndef V8_GLOBAL_HANDLES_H_ |
6 #define V8_GLOBAL_HANDLES_H_ | 6 #define V8_GLOBAL_HANDLES_H_ |
7 | 7 |
8 #include "include/v8.h" | 8 #include "include/v8.h" |
9 #include "include/v8-profiler.h" | 9 #include "include/v8-profiler.h" |
10 | 10 |
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
342 | 342 |
343 friend class Isolate; | 343 friend class Isolate; |
344 | 344 |
345 DISALLOW_COPY_AND_ASSIGN(GlobalHandles); | 345 DISALLOW_COPY_AND_ASSIGN(GlobalHandles); |
346 }; | 346 }; |
347 | 347 |
348 | 348 |
349 class GlobalHandles::PendingPhantomCallback { | 349 class GlobalHandles::PendingPhantomCallback { |
350 public: | 350 public: |
351 typedef v8::WeakCallbackInfo<void> Data; | 351 typedef v8::WeakCallbackInfo<void> Data; |
352 PendingPhantomCallback(Node* node, Data data, Data::Callback callback) | 352 PendingPhantomCallback(Node* node, Data::Callback callback, void* parameter, |
353 : node_(node), data_(data), callback_(callback) {} | 353 void* internal_field_0, void* internal_field_1) |
354 : node_(node), callback_(callback), parameter_(parameter) { | |
355 internal_fields_[0] = internal_field_0; | |
356 internal_fields_[1] = internal_field_1; | |
357 } | |
354 | 358 |
355 void invoke(); | 359 void Invoke(Isolate* isolate); |
356 | 360 |
357 Node* node() { return node_; } | 361 Node* node() { return node_; } |
362 Data::Callback callback() { return callback_; } | |
358 | 363 |
359 private: | 364 private: |
360 Node* node_; | 365 Node* node_; |
361 Data data_; | |
362 Data::Callback callback_; | 366 Data::Callback callback_; |
367 void* parameter_; | |
368 void* internal_fields_[2]; | |
jochen (gone - plz use gerrit)
2015/03/26 09:49:38
also use the constant here?
| |
363 }; | 369 }; |
364 | 370 |
365 | 371 |
366 class EternalHandles { | 372 class EternalHandles { |
367 public: | 373 public: |
368 enum SingletonHandle { | 374 enum SingletonHandle { |
369 I18N_TEMPLATE_ONE, | 375 I18N_TEMPLATE_ONE, |
370 I18N_TEMPLATE_TWO, | 376 I18N_TEMPLATE_TWO, |
371 DATE_CACHE_VERSION, | 377 DATE_CACHE_VERSION, |
372 | 378 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
429 List<int> new_space_indices_; | 435 List<int> new_space_indices_; |
430 int singleton_handles_[NUMBER_OF_SINGLETON_HANDLES]; | 436 int singleton_handles_[NUMBER_OF_SINGLETON_HANDLES]; |
431 | 437 |
432 DISALLOW_COPY_AND_ASSIGN(EternalHandles); | 438 DISALLOW_COPY_AND_ASSIGN(EternalHandles); |
433 }; | 439 }; |
434 | 440 |
435 | 441 |
436 } } // namespace v8::internal | 442 } } // namespace v8::internal |
437 | 443 |
438 #endif // V8_GLOBAL_HANDLES_H_ | 444 #endif // V8_GLOBAL_HANDLES_H_ |
OLD | NEW |