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

Side by Side Diff: src/isolate.cc

Issue 2604483005: [isolate] remove redundant return (Closed)
Patch Set: add comment Created 3 years, 12 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 | « 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 // 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 "src/isolate.h" 5 #include "src/isolate.h"
6 6
7 #include <stdlib.h> 7 #include <stdlib.h>
8 8
9 #include <fstream> // NOLINT(readability/streams) 9 #include <fstream> // NOLINT(readability/streams)
10 #include <sstream> 10 #include <sstream>
(...skipping 1802 matching lines...) Expand 10 before | Expand all | Expand 10 after
1813 Handle<JSPromise> promise); 1813 Handle<JSPromise> promise);
1814 1814
1815 bool PromiseHandlerCheck(Isolate* isolate, Handle<JSReceiver> handler, 1815 bool PromiseHandlerCheck(Isolate* isolate, Handle<JSReceiver> handler,
1816 Handle<JSObject> deferred) { 1816 Handle<JSObject> deferred) {
1817 // Recurse to the forwarding Promise, if any. This may be due to 1817 // Recurse to the forwarding Promise, if any. This may be due to
1818 // - await reaction forwarding to the throwaway Promise, which has 1818 // - await reaction forwarding to the throwaway Promise, which has
1819 // a dependency edge to the outer Promise. 1819 // a dependency edge to the outer Promise.
1820 // - PromiseIdResolveHandler forwarding to the output of .then 1820 // - PromiseIdResolveHandler forwarding to the output of .then
1821 // - Promise.all/Promise.race forwarding to a throwaway Promise, which 1821 // - Promise.all/Promise.race forwarding to a throwaway Promise, which
1822 // has a dependency edge to the generated outer Promise. 1822 // has a dependency edge to the generated outer Promise.
1823 // Otherwise, this is a real reject handler for the Promise.
1823 Handle<Symbol> key = isolate->factory()->promise_forwarding_handler_symbol(); 1824 Handle<Symbol> key = isolate->factory()->promise_forwarding_handler_symbol();
1824 Handle<Object> forwarding_handler = JSReceiver::GetDataProperty(handler, key); 1825 Handle<Object> forwarding_handler = JSReceiver::GetDataProperty(handler, key);
1825 if (forwarding_handler->IsUndefined(isolate)) { 1826 if (forwarding_handler->IsUndefined(isolate)) {
1826 return true; 1827 return true;
1827 } 1828 }
1828 1829
1829 // TODO(gsathya): Remove this once we get rid of deferred objects. 1830 // TODO(gsathya): Remove this once we get rid of deferred objects.
1830 Handle<String> promise_str = isolate->factory()->promise_string(); 1831 Handle<String> promise_str = isolate->factory()->promise_string();
1831 Handle<Object> deferred_promise_obj = 1832 Handle<Object> deferred_promise_obj =
1832 JSObject::GetDataProperty(deferred, promise_str); 1833 JSObject::GetDataProperty(deferred, promise_str);
1833 if (!deferred_promise_obj->IsJSPromise()) { 1834 if (!deferred_promise_obj->IsJSPromise()) {
1834 return true; 1835 return true;
1835 } 1836 }
1836 1837
1837 return InternalPromiseHasUserDefinedRejectHandler( 1838 return InternalPromiseHasUserDefinedRejectHandler(
1838 isolate, Handle<JSPromise>::cast(deferred_promise_obj)); 1839 isolate, Handle<JSPromise>::cast(deferred_promise_obj));
1839
1840 // Otherwise, this is a real reject handler for the Promise
1841 return true;
1842 } 1840 }
1843 1841
1844 bool InternalPromiseHasUserDefinedRejectHandler(Isolate* isolate, 1842 bool InternalPromiseHasUserDefinedRejectHandler(Isolate* isolate,
1845 Handle<JSPromise> promise) { 1843 Handle<JSPromise> promise) {
1846 // If this promise was marked as being handled by a catch block 1844 // If this promise was marked as being handled by a catch block
1847 // in an async function, then it has a user-defined reject handler. 1845 // in an async function, then it has a user-defined reject handler.
1848 if (promise->handled_hint()) return true; 1846 if (promise->handled_hint()) return true;
1849 1847
1850 // If this Promise is subsumed by another Promise (a Promise resolved 1848 // If this Promise is subsumed by another Promise (a Promise resolved
1851 // with another Promise, or an intermediate, hidden, throwaway Promise 1849 // with another Promise, or an intermediate, hidden, throwaway Promise
(...skipping 1798 matching lines...) Expand 10 before | Expand all | Expand 10 after
3650 // Then check whether this scope intercepts. 3648 // Then check whether this scope intercepts.
3651 if ((flag & intercept_mask_)) { 3649 if ((flag & intercept_mask_)) {
3652 intercepted_flags_ |= flag; 3650 intercepted_flags_ |= flag;
3653 return true; 3651 return true;
3654 } 3652 }
3655 return false; 3653 return false;
3656 } 3654 }
3657 3655
3658 } // namespace internal 3656 } // namespace internal
3659 } // namespace v8 3657 } // namespace v8
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