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

Side by Side Diff: src/isolate.h

Issue 1375933003: Add SetAbortOnUncaughtExceptionCallback API (Closed) Base URL: git@github.com:v8/v8.git@master
Patch Set: Update after second code review Created 5 years, 2 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 | « src/api.cc ('k') | src/isolate.cc » ('j') | 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 #ifndef V8_ISOLATE_H_ 5 #ifndef V8_ISOLATE_H_
6 #define V8_ISOLATE_H_ 6 #define V8_ISOLATE_H_
7 7
8 #include <queue> 8 #include <queue>
9 #include <set> 9 #include <set>
10 10
(...skipping 637 matching lines...) Expand 10 before | Expand all | Expand 10 after
648 private: 648 private:
649 Isolate* isolate_; 649 Isolate* isolate_;
650 Handle<Object> pending_exception_; 650 Handle<Object> pending_exception_;
651 }; 651 };
652 652
653 void SetCaptureStackTraceForUncaughtExceptions( 653 void SetCaptureStackTraceForUncaughtExceptions(
654 bool capture, 654 bool capture,
655 int frame_limit, 655 int frame_limit,
656 StackTrace::StackTraceOptions options); 656 StackTrace::StackTraceOptions options);
657 657
658 void SetAbortOnUncaughtExceptionCallback(
659 v8::Isolate::AbortOnUncaughtExceptionCallback callback);
660
658 enum PrintStackMode { kPrintStackConcise, kPrintStackVerbose }; 661 enum PrintStackMode { kPrintStackConcise, kPrintStackVerbose };
659 void PrintCurrentStackTrace(FILE* out); 662 void PrintCurrentStackTrace(FILE* out);
660 void PrintStack(StringStream* accumulator, 663 void PrintStack(StringStream* accumulator,
661 PrintStackMode mode = kPrintStackVerbose); 664 PrintStackMode mode = kPrintStackVerbose);
662 void PrintStack(FILE* out, PrintStackMode mode = kPrintStackVerbose); 665 void PrintStack(FILE* out, PrintStackMode mode = kPrintStackVerbose);
663 Handle<String> StackTraceString(); 666 Handle<String> StackTraceString();
664 NO_INLINE(void PushStackTraceAndDie(unsigned int magic, void* ptr1, 667 NO_INLINE(void PushStackTraceAndDie(unsigned int magic, void* ptr1,
665 void* ptr2, unsigned int magic2)); 668 void* ptr2, unsigned int magic2));
666 Handle<JSArray> CaptureCurrentStackTrace( 669 Handle<JSArray> CaptureCurrentStackTrace(
667 int frame_limit, 670 int frame_limit,
(...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after
1318 BasicBlockProfiler* basic_block_profiler_; 1321 BasicBlockProfiler* basic_block_profiler_;
1319 1322
1320 List<Object*> partial_snapshot_cache_; 1323 List<Object*> partial_snapshot_cache_;
1321 1324
1322 v8::ArrayBuffer::Allocator* array_buffer_allocator_; 1325 v8::ArrayBuffer::Allocator* array_buffer_allocator_;
1323 1326
1324 FutexWaitListNode futex_wait_list_node_; 1327 FutexWaitListNode futex_wait_list_node_;
1325 1328
1326 std::set<Cancelable*> cancelable_tasks_; 1329 std::set<Cancelable*> cancelable_tasks_;
1327 1330
1331 v8::Isolate::AbortOnUncaughtExceptionCallback
1332 abort_on_uncaught_exception_callback_;
1333
1328 friend class ExecutionAccess; 1334 friend class ExecutionAccess;
1329 friend class HandleScopeImplementer; 1335 friend class HandleScopeImplementer;
1330 friend class OptimizingCompileDispatcher; 1336 friend class OptimizingCompileDispatcher;
1331 friend class SweeperThread; 1337 friend class SweeperThread;
1332 friend class ThreadManager; 1338 friend class ThreadManager;
1333 friend class Simulator; 1339 friend class Simulator;
1334 friend class StackGuard; 1340 friend class StackGuard;
1335 friend class ThreadId; 1341 friend class ThreadId;
1336 friend class TestMemoryAllocatorScope; 1342 friend class TestMemoryAllocatorScope;
1337 friend class TestCodeRangeScope; 1343 friend class TestCodeRangeScope;
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
1546 } 1552 }
1547 1553
1548 EmbeddedVector<char, 128> filename_; 1554 EmbeddedVector<char, 128> filename_;
1549 FILE* file_; 1555 FILE* file_;
1550 int scope_depth_; 1556 int scope_depth_;
1551 }; 1557 };
1552 1558
1553 } } // namespace v8::internal 1559 } } // namespace v8::internal
1554 1560
1555 #endif // V8_ISOLATE_H_ 1561 #endif // V8_ISOLATE_H_
OLDNEW
« no previous file with comments | « src/api.cc ('k') | src/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698