| 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 685 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 696 | 696 |
| 697 void PrintCurrentStackTrace(FILE* out); | 697 void PrintCurrentStackTrace(FILE* out); |
| 698 void PrintStackTrace(FILE* out, char* thread_data); | 698 void PrintStackTrace(FILE* out, char* thread_data); |
| 699 void PrintStack(StringStream* accumulator); | 699 void PrintStack(StringStream* accumulator); |
| 700 void PrintStack(); | 700 void PrintStack(); |
| 701 Handle<String> StackTraceString(); | 701 Handle<String> StackTraceString(); |
| 702 Handle<JSArray> CaptureCurrentStackTrace( | 702 Handle<JSArray> CaptureCurrentStackTrace( |
| 703 int frame_limit, | 703 int frame_limit, |
| 704 StackTrace::StackTraceOptions options); | 704 StackTrace::StackTraceOptions options); |
| 705 | 705 |
| 706 void CaptureAndSetCurrentStackTraceFor(Handle<JSObject> error_object); |
| 707 |
| 706 // Returns if the top context may access the given global object. If | 708 // Returns if the top context may access the given global object. If |
| 707 // the result is false, the pending exception is guaranteed to be | 709 // the result is false, the pending exception is guaranteed to be |
| 708 // set. | 710 // set. |
| 709 bool MayNamedAccess(JSObject* receiver, | 711 bool MayNamedAccess(JSObject* receiver, |
| 710 Object* key, | 712 Object* key, |
| 711 v8::AccessType type); | 713 v8::AccessType type); |
| 712 bool MayIndexedAccess(JSObject* receiver, | 714 bool MayIndexedAccess(JSObject* receiver, |
| 713 uint32_t index, | 715 uint32_t index, |
| 714 v8::AccessType type); | 716 v8::AccessType type); |
| 715 | 717 |
| 716 void SetFailedAccessCheckCallback(v8::FailedAccessCheckCallback callback); | 718 void SetFailedAccessCheckCallback(v8::FailedAccessCheckCallback callback); |
| 717 void ReportFailedAccessCheck(JSObject* receiver, v8::AccessType type); | 719 void ReportFailedAccessCheck(JSObject* receiver, v8::AccessType type); |
| 718 | 720 |
| 719 // Exception throwing support. The caller should use the result | 721 // Exception throwing support. The caller should use the result |
| 720 // of Throw() as its return value. | 722 // of Throw() as its return value. |
| 721 Failure* Throw(Object* exception, MessageLocation* location = NULL); | 723 Failure* Throw(Object* exception, MessageLocation* location = NULL); |
| 722 // Re-throw an exception. This involves no error reporting since | 724 // Re-throw an exception. This involves no error reporting since |
| 723 // error reporting was handled when the exception was thrown | 725 // error reporting was handled when the exception was thrown |
| 724 // originally. | 726 // originally. |
| 725 Failure* ReThrow(MaybeObject* exception, MessageLocation* location = NULL); | 727 Failure* ReThrow(MaybeObject* exception, MessageLocation* location = NULL); |
| 726 void ScheduleThrow(Object* exception); | 728 void ScheduleThrow(Object* exception); |
| 727 void ReportPendingMessages(); | 729 void ReportPendingMessages(); |
| 728 Failure* ThrowIllegalOperation(); | 730 Failure* ThrowIllegalOperation(); |
| 729 | 731 |
| 730 // Promote a scheduled exception to pending. Asserts has_scheduled_exception. | 732 // Promote a scheduled exception to pending. Asserts has_scheduled_exception. |
| 731 Failure* PromoteScheduledException(); | 733 Failure* PromoteScheduledException(); |
| 732 void DoThrow(MaybeObject* exception, MessageLocation* location); | 734 void DoThrow(Object* exception, MessageLocation* location); |
| 733 // Checks if exception should be reported and finds out if it's | 735 // Checks if exception should be reported and finds out if it's |
| 734 // caught externally. | 736 // caught externally. |
| 735 bool ShouldReportException(bool* can_be_caught_externally, | 737 bool ShouldReportException(bool* can_be_caught_externally, |
| 736 bool catchable_by_javascript); | 738 bool catchable_by_javascript); |
| 737 | 739 |
| 738 // Attempts to compute the current source location, storing the | 740 // Attempts to compute the current source location, storing the |
| 739 // result in the target out parameter. | 741 // result in the target out parameter. |
| 740 void ComputeLocation(MessageLocation* target); | 742 void ComputeLocation(MessageLocation* target); |
| 741 | 743 |
| 742 // Override command line flag. | 744 // Override command line flag. |
| (...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1134 ThreadLocalTop* archived_thread_data); | 1136 ThreadLocalTop* archived_thread_data); |
| 1135 void MarkCompactEpilogue(bool is_compacting, | 1137 void MarkCompactEpilogue(bool is_compacting, |
| 1136 ThreadLocalTop* archived_thread_data); | 1138 ThreadLocalTop* archived_thread_data); |
| 1137 | 1139 |
| 1138 void FillCache(); | 1140 void FillCache(); |
| 1139 | 1141 |
| 1140 void PropagatePendingExceptionToExternalTryCatch(); | 1142 void PropagatePendingExceptionToExternalTryCatch(); |
| 1141 | 1143 |
| 1142 void InitializeDebugger(); | 1144 void InitializeDebugger(); |
| 1143 | 1145 |
| 1146 // Traverse prototype chain to find out whether the object is derived from |
| 1147 // the Error object. |
| 1148 bool IsErrorObject(Handle<Object> obj); |
| 1149 |
| 1144 int stack_trace_nesting_level_; | 1150 int stack_trace_nesting_level_; |
| 1145 StringStream* incomplete_message_; | 1151 StringStream* incomplete_message_; |
| 1146 // The preallocated memory thread singleton. | 1152 // The preallocated memory thread singleton. |
| 1147 PreallocatedMemoryThread* preallocated_memory_thread_; | 1153 PreallocatedMemoryThread* preallocated_memory_thread_; |
| 1148 Address isolate_addresses_[kIsolateAddressCount + 1]; // NOLINT | 1154 Address isolate_addresses_[kIsolateAddressCount + 1]; // NOLINT |
| 1149 NoAllocationStringAllocator* preallocated_message_space_; | 1155 NoAllocationStringAllocator* preallocated_message_space_; |
| 1150 | 1156 |
| 1151 Bootstrapper* bootstrapper_; | 1157 Bootstrapper* bootstrapper_; |
| 1152 RuntimeProfiler* runtime_profiler_; | 1158 RuntimeProfiler* runtime_profiler_; |
| 1153 CompilationCache* compilation_cache_; | 1159 CompilationCache* compilation_cache_; |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1398 | 1404 |
| 1399 // Mark the global context with out of memory. | 1405 // Mark the global context with out of memory. |
| 1400 inline void Context::mark_out_of_memory() { | 1406 inline void Context::mark_out_of_memory() { |
| 1401 global_context()->set_out_of_memory(HEAP->true_value()); | 1407 global_context()->set_out_of_memory(HEAP->true_value()); |
| 1402 } | 1408 } |
| 1403 | 1409 |
| 1404 | 1410 |
| 1405 } } // namespace v8::internal | 1411 } } // namespace v8::internal |
| 1406 | 1412 |
| 1407 #endif // V8_ISOLATE_H_ | 1413 #endif // V8_ISOLATE_H_ |
| OLD | NEW |