| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 623 isolate->global_handles()->Create(*obj); | 623 isolate->global_handles()->Create(*obj); |
| 624 return result.location(); | 624 return result.location(); |
| 625 } | 625 } |
| 626 | 626 |
| 627 | 627 |
| 628 void V8::MakeWeak(i::Object** object, void* parameters, | 628 void V8::MakeWeak(i::Object** object, void* parameters, |
| 629 WeakReferenceCallback callback) { | 629 WeakReferenceCallback callback) { |
| 630 i::Isolate* isolate = i::Isolate::Current(); | 630 i::Isolate* isolate = i::Isolate::Current(); |
| 631 LOG_API(isolate, "MakeWeak"); | 631 LOG_API(isolate, "MakeWeak"); |
| 632 isolate->global_handles()->MakeWeak(object, parameters, | 632 isolate->global_handles()->MakeWeak(object, parameters, |
| 633 callback); | 633 callback); |
| 634 } | 634 } |
| 635 | 635 |
| 636 | 636 |
| 637 void V8::MakeWeak(i::Isolate* isolate, i::Object** object, |
| 638 void* parameters, WeakReferenceCallback callback) { |
| 639 ASSERT(isolate == i::Isolate::Current()); |
| 640 LOG_API(isolate, "MakeWeak"); |
| 641 isolate->global_handles()->MakeWeak(object, parameters, |
| 642 callback); |
| 643 } |
| 644 |
| 645 |
| 637 void V8::ClearWeak(i::Object** obj) { | 646 void V8::ClearWeak(i::Object** obj) { |
| 638 i::Isolate* isolate = i::Isolate::Current(); | 647 i::Isolate* isolate = i::Isolate::Current(); |
| 639 LOG_API(isolate, "ClearWeak"); | 648 LOG_API(isolate, "ClearWeak"); |
| 640 isolate->global_handles()->ClearWeakness(obj); | 649 isolate->global_handles()->ClearWeakness(obj); |
| 641 } | 650 } |
| 642 | 651 |
| 643 | 652 |
| 644 void V8::MarkIndependent(i::Object** object) { | 653 void V8::MarkIndependent(i::Object** object) { |
| 645 i::Isolate* isolate = i::Isolate::Current(); | 654 i::Isolate* isolate = i::Isolate::Current(); |
| 646 LOG_API(isolate, "MarkIndependent"); | 655 LOG_API(isolate, "MarkIndependent"); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 665 | 674 |
| 666 | 675 |
| 667 bool V8::IsGlobalWeak(i::Object** obj) { | 676 bool V8::IsGlobalWeak(i::Object** obj) { |
| 668 i::Isolate* isolate = i::Isolate::Current(); | 677 i::Isolate* isolate = i::Isolate::Current(); |
| 669 LOG_API(isolate, "IsGlobalWeak"); | 678 LOG_API(isolate, "IsGlobalWeak"); |
| 670 if (!isolate->IsInitialized()) return false; | 679 if (!isolate->IsInitialized()) return false; |
| 671 return i::GlobalHandles::IsWeak(obj); | 680 return i::GlobalHandles::IsWeak(obj); |
| 672 } | 681 } |
| 673 | 682 |
| 674 | 683 |
| 684 bool V8::IsGlobalWeak(i::Isolate* isolate, i::Object** obj) { |
| 685 ASSERT(isolate == i::Isolate::Current()); |
| 686 LOG_API(isolate, "IsGlobalWeak"); |
| 687 if (!isolate->IsInitialized()) return false; |
| 688 return i::GlobalHandles::IsWeak(obj); |
| 689 } |
| 690 |
| 691 |
| 675 void V8::DisposeGlobal(i::Object** obj) { | 692 void V8::DisposeGlobal(i::Object** obj) { |
| 676 i::Isolate* isolate = i::Isolate::Current(); | 693 i::Isolate* isolate = i::Isolate::Current(); |
| 677 LOG_API(isolate, "DisposeGlobal"); | 694 LOG_API(isolate, "DisposeGlobal"); |
| 678 if (!isolate->IsInitialized()) return; | 695 if (!isolate->IsInitialized()) return; |
| 679 isolate->global_handles()->Destroy(obj); | 696 isolate->global_handles()->Destroy(obj); |
| 680 } | 697 } |
| 681 | 698 |
| 682 // --- H a n d l e s --- | 699 // --- H a n d l e s --- |
| 683 | 700 |
| 684 | 701 |
| (...skipping 4659 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5344 | 5361 |
| 5345 void V8::SetFailedAccessCheckCallbackFunction( | 5362 void V8::SetFailedAccessCheckCallbackFunction( |
| 5346 FailedAccessCheckCallback callback) { | 5363 FailedAccessCheckCallback callback) { |
| 5347 i::Isolate* isolate = i::Isolate::Current(); | 5364 i::Isolate* isolate = i::Isolate::Current(); |
| 5348 if (IsDeadCheck(isolate, "v8::V8::SetFailedAccessCheckCallbackFunction()")) { | 5365 if (IsDeadCheck(isolate, "v8::V8::SetFailedAccessCheckCallbackFunction()")) { |
| 5349 return; | 5366 return; |
| 5350 } | 5367 } |
| 5351 isolate->SetFailedAccessCheckCallback(callback); | 5368 isolate->SetFailedAccessCheckCallback(callback); |
| 5352 } | 5369 } |
| 5353 | 5370 |
| 5371 |
| 5354 void V8::AddObjectGroup(Persistent<Value>* objects, | 5372 void V8::AddObjectGroup(Persistent<Value>* objects, |
| 5355 size_t length, | 5373 size_t length, |
| 5356 RetainedObjectInfo* info) { | 5374 RetainedObjectInfo* info) { |
| 5357 i::Isolate* isolate = i::Isolate::Current(); | 5375 i::Isolate* isolate = i::Isolate::Current(); |
| 5358 if (IsDeadCheck(isolate, "v8::V8::AddObjectGroup()")) return; | 5376 if (IsDeadCheck(isolate, "v8::V8::AddObjectGroup()")) return; |
| 5359 STATIC_ASSERT(sizeof(Persistent<Value>) == sizeof(i::Object**)); | 5377 STATIC_ASSERT(sizeof(Persistent<Value>) == sizeof(i::Object**)); |
| 5360 isolate->global_handles()->AddObjectGroup( | 5378 isolate->global_handles()->AddObjectGroup( |
| 5361 reinterpret_cast<i::Object***>(objects), length, info); | 5379 reinterpret_cast<i::Object***>(objects), length, info); |
| 5362 } | 5380 } |
| 5363 | 5381 |
| 5364 | 5382 |
| 5383 void V8::AddObjectGroup(Isolate* exportedIsolate, |
| 5384 Persistent<Value>* objects, |
| 5385 size_t length, |
| 5386 RetainedObjectInfo* info) { |
| 5387 i::Isolate* isolate = reinterpret_cast<i::Isolate*>(exportedIsolate); |
| 5388 ASSERT(isolate == i::Isolate::Current()); |
| 5389 if (IsDeadCheck(isolate, "v8::V8::AddObjectGroup()")) return; |
| 5390 STATIC_ASSERT(sizeof(Persistent<Value>) == sizeof(i::Object**)); |
| 5391 isolate->global_handles()->AddObjectGroup( |
| 5392 reinterpret_cast<i::Object***>(objects), length, info); |
| 5393 } |
| 5394 |
| 5395 |
| 5365 void V8::AddImplicitReferences(Persistent<Object> parent, | 5396 void V8::AddImplicitReferences(Persistent<Object> parent, |
| 5366 Persistent<Value>* children, | 5397 Persistent<Value>* children, |
| 5367 size_t length) { | 5398 size_t length) { |
| 5368 i::Isolate* isolate = i::Isolate::Current(); | 5399 i::Isolate* isolate = i::Isolate::Current(); |
| 5369 if (IsDeadCheck(isolate, "v8::V8::AddImplicitReferences()")) return; | 5400 if (IsDeadCheck(isolate, "v8::V8::AddImplicitReferences()")) return; |
| 5370 STATIC_ASSERT(sizeof(Persistent<Value>) == sizeof(i::Object**)); | 5401 STATIC_ASSERT(sizeof(Persistent<Value>) == sizeof(i::Object**)); |
| 5371 isolate->global_handles()->AddImplicitReferences( | 5402 isolate->global_handles()->AddImplicitReferences( |
| 5372 i::Handle<i::HeapObject>::cast(Utils::OpenHandle(*parent)).location(), | 5403 i::Handle<i::HeapObject>::cast(Utils::OpenHandle(*parent)).location(), |
| 5373 reinterpret_cast<i::Object***>(children), length); | 5404 reinterpret_cast<i::Object***>(children), length); |
| 5374 } | 5405 } |
| (...skipping 1264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6639 | 6670 |
| 6640 v->VisitPointers(blocks_.first(), first_block_limit_); | 6671 v->VisitPointers(blocks_.first(), first_block_limit_); |
| 6641 | 6672 |
| 6642 for (int i = 1; i < blocks_.length(); i++) { | 6673 for (int i = 1; i < blocks_.length(); i++) { |
| 6643 v->VisitPointers(blocks_[i], &blocks_[i][kHandleBlockSize]); | 6674 v->VisitPointers(blocks_[i], &blocks_[i][kHandleBlockSize]); |
| 6644 } | 6675 } |
| 6645 } | 6676 } |
| 6646 | 6677 |
| 6647 | 6678 |
| 6648 } } // namespace v8::internal | 6679 } } // namespace v8::internal |
| OLD | NEW |