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

Side by Side Diff: src/api.cc

Issue 264333004: Introduce an api to query the microtask autorun state of an isolate (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 7 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 | « include/v8.h ('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 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 #include "api.h" 5 #include "api.h"
6 6
7 #include <string.h> // For memcpy, strlen. 7 #include <string.h> // For memcpy, strlen.
8 #include <cmath> // For isnan. 8 #include <cmath> // For isnan.
9 #include "../include/v8-debug.h" 9 #include "../include/v8-debug.h"
10 #include "../include/v8-profiler.h" 10 #include "../include/v8-profiler.h"
(...skipping 6641 matching lines...) Expand 10 before | Expand all | Expand 10 after
6652 ENTER_V8(i_isolate); 6652 ENTER_V8(i_isolate);
6653 i::Execution::EnqueueMicrotask(i_isolate, Utils::OpenHandle(*microtask)); 6653 i::Execution::EnqueueMicrotask(i_isolate, Utils::OpenHandle(*microtask));
6654 } 6654 }
6655 6655
6656 6656
6657 void Isolate::SetAutorunMicrotasks(bool autorun) { 6657 void Isolate::SetAutorunMicrotasks(bool autorun) {
6658 reinterpret_cast<i::Isolate*>(this)->set_autorun_microtasks(autorun); 6658 reinterpret_cast<i::Isolate*>(this)->set_autorun_microtasks(autorun);
6659 } 6659 }
6660 6660
6661 6661
6662 bool Isolate::WillAutorunMicrotasks() const {
6663 return reinterpret_cast<const i::Isolate*>(this)->autorun_microtasks();
6664 }
6665
6666
6662 String::Utf8Value::Utf8Value(v8::Handle<v8::Value> obj) 6667 String::Utf8Value::Utf8Value(v8::Handle<v8::Value> obj)
6663 : str_(NULL), length_(0) { 6668 : str_(NULL), length_(0) {
6664 i::Isolate* isolate = i::Isolate::Current(); 6669 i::Isolate* isolate = i::Isolate::Current();
6665 if (obj.IsEmpty()) return; 6670 if (obj.IsEmpty()) return;
6666 ENTER_V8(isolate); 6671 ENTER_V8(isolate);
6667 i::HandleScope scope(isolate); 6672 i::HandleScope scope(isolate);
6668 TryCatch try_catch; 6673 TryCatch try_catch;
6669 Handle<String> str = obj->ToString(); 6674 Handle<String> str = obj->ToString();
6670 if (str.IsEmpty()) return; 6675 if (str.IsEmpty()) return;
6671 i::Handle<i::String> i_str = Utils::OpenHandle(*str); 6676 i::Handle<i::String> i_str = Utils::OpenHandle(*str);
(...skipping 922 matching lines...) Expand 10 before | Expand all | Expand 10 after
7594 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate()); 7599 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate());
7595 Address callback_address = 7600 Address callback_address =
7596 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback)); 7601 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback));
7597 VMState<EXTERNAL> state(isolate); 7602 VMState<EXTERNAL> state(isolate);
7598 ExternalCallbackScope call_scope(isolate, callback_address); 7603 ExternalCallbackScope call_scope(isolate, callback_address);
7599 callback(info); 7604 callback(info);
7600 } 7605 }
7601 7606
7602 7607
7603 } } // namespace v8::internal 7608 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « include/v8.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698