| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/api.h" | 7 #include "src/api.h" |
| 8 #include "src/execution.h" | 8 #include "src/execution.h" |
| 9 #include "src/heap/spaces-inl.h" | 9 #include "src/heap/spaces-inl.h" |
| 10 #include "src/messages.h" | 10 #include "src/messages.h" |
| 11 #include "src/string-builder.h" | 11 #include "src/string-builder.h" |
| 12 | 12 |
| 13 namespace v8 { | 13 namespace v8 { |
| 14 namespace internal { | 14 namespace internal { |
| 15 | 15 |
| 16 | 16 |
| 17 // If no message listeners have been registered this one is called | 17 // If no message listeners have been registered this one is called |
| 18 // by default. | 18 // by default. |
| 19 void MessageHandler::DefaultMessageReport(Isolate* isolate, | 19 void MessageHandler::DefaultMessageReport(Isolate* isolate, |
| 20 const MessageLocation* loc, | 20 const MessageLocation* loc, |
| 21 Handle<Object> message_obj) { | 21 Handle<Object> message_obj) { |
| 22 SmartArrayPointer<char> str = GetLocalizedMessage(isolate, message_obj); | 22 base::SmartArrayPointer<char> str = GetLocalizedMessage(isolate, message_obj); |
| 23 if (loc == NULL) { | 23 if (loc == NULL) { |
| 24 PrintF("%s\n", str.get()); | 24 PrintF("%s\n", str.get()); |
| 25 } else { | 25 } else { |
| 26 HandleScope scope(isolate); | 26 HandleScope scope(isolate); |
| 27 Handle<Object> data(loc->script()->name(), isolate); | 27 Handle<Object> data(loc->script()->name(), isolate); |
| 28 SmartArrayPointer<char> data_str; | 28 base::SmartArrayPointer<char> data_str; |
| 29 if (data->IsString()) | 29 if (data->IsString()) |
| 30 data_str = Handle<String>::cast(data)->ToCString(DISALLOW_NULLS); | 30 data_str = Handle<String>::cast(data)->ToCString(DISALLOW_NULLS); |
| 31 PrintF("%s:%i: %s\n", data_str.get() ? data_str.get() : "<unknown>", | 31 PrintF("%s:%i: %s\n", data_str.get() ? data_str.get() : "<unknown>", |
| 32 loc->start_pos(), str.get()); | 32 loc->start_pos(), str.get()); |
| 33 } | 33 } |
| 34 } | 34 } |
| 35 | 35 |
| 36 | 36 |
| 37 Handle<JSMessageObject> MessageHandler::MakeMessageObject( | 37 Handle<JSMessageObject> MessageHandler::MakeMessageObject( |
| 38 Isolate* isolate, MessageTemplate::Template message, MessageLocation* loc, | 38 Isolate* isolate, MessageTemplate::Template message, MessageLocation* loc, |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 126 | 126 |
| 127 | 127 |
| 128 Handle<String> MessageHandler::GetMessage(Isolate* isolate, | 128 Handle<String> MessageHandler::GetMessage(Isolate* isolate, |
| 129 Handle<Object> data) { | 129 Handle<Object> data) { |
| 130 Handle<JSMessageObject> message = Handle<JSMessageObject>::cast(data); | 130 Handle<JSMessageObject> message = Handle<JSMessageObject>::cast(data); |
| 131 Handle<Object> arg = Handle<Object>(message->argument(), isolate); | 131 Handle<Object> arg = Handle<Object>(message->argument(), isolate); |
| 132 return MessageTemplate::FormatMessage(isolate, message->type(), arg); | 132 return MessageTemplate::FormatMessage(isolate, message->type(), arg); |
| 133 } | 133 } |
| 134 | 134 |
| 135 | 135 |
| 136 SmartArrayPointer<char> MessageHandler::GetLocalizedMessage( | 136 base::SmartArrayPointer<char> MessageHandler::GetLocalizedMessage( |
| 137 Isolate* isolate, | 137 Isolate* isolate, Handle<Object> data) { |
| 138 Handle<Object> data) { | |
| 139 HandleScope scope(isolate); | 138 HandleScope scope(isolate); |
| 140 return GetMessage(isolate, data)->ToCString(DISALLOW_NULLS); | 139 return GetMessage(isolate, data)->ToCString(DISALLOW_NULLS); |
| 141 } | 140 } |
| 142 | 141 |
| 143 | 142 |
| 144 Handle<Object> CallSite::GetFileName(Isolate* isolate) { | 143 Handle<Object> CallSite::GetFileName(Isolate* isolate) { |
| 145 Handle<Object> script(fun_->shared()->script(), isolate); | 144 Handle<Object> script(fun_->shared()->script(), isolate); |
| 146 if (script->IsScript()) { | 145 if (script->IsScript()) { |
| 147 return Handle<Object>(Handle<Script>::cast(script)->name(), isolate); | 146 return Handle<Object>(Handle<Script>::cast(script)->name(), isolate); |
| 148 } | 147 } |
| (...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 364 } | 363 } |
| 365 } else { | 364 } else { |
| 366 builder.AppendCharacter(*c); | 365 builder.AppendCharacter(*c); |
| 367 } | 366 } |
| 368 } | 367 } |
| 369 | 368 |
| 370 return builder.Finish(); | 369 return builder.Finish(); |
| 371 } | 370 } |
| 372 } // namespace internal | 371 } // namespace internal |
| 373 } // namespace v8 | 372 } // namespace v8 |
| OLD | NEW |