| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium 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 "platform/v8_inspector/V8Console.h" | 5 #include "platform/v8_inspector/V8Console.h" |
| 6 | 6 |
| 7 #include "platform/v8_inspector/InjectedScript.h" | 7 #include "platform/v8_inspector/InjectedScript.h" |
| 8 #include "platform/v8_inspector/InspectedContext.h" | 8 #include "platform/v8_inspector/InspectedContext.h" |
| 9 #include "platform/v8_inspector/V8Compat.h" | 9 #include "platform/v8_inspector/V8Compat.h" |
| 10 #include "platform/v8_inspector/V8ConsoleMessage.h" | 10 #include "platform/v8_inspector/V8ConsoleMessage.h" |
| 11 #include "platform/v8_inspector/V8DebuggerAgentImpl.h" | 11 #include "platform/v8_inspector/V8DebuggerAgentImpl.h" |
| 12 #include "platform/v8_inspector/V8InspectorImpl.h" | 12 #include "platform/v8_inspector/V8InspectorImpl.h" |
| 13 #include "platform/v8_inspector/V8InspectorSessionImpl.h" | 13 #include "platform/v8_inspector/V8InspectorSessionImpl.h" |
| 14 #include "platform/v8_inspector/V8ProfilerAgentImpl.h" | 14 #include "platform/v8_inspector/V8ProfilerAgentImpl.h" |
| 15 #include "platform/v8_inspector/V8RuntimeAgentImpl.h" | 15 #include "platform/v8_inspector/V8RuntimeAgentImpl.h" |
| 16 #include "platform/v8_inspector/V8StackTraceImpl.h" | 16 #include "platform/v8_inspector/V8StackTraceImpl.h" |
| 17 #include "platform/v8_inspector/V8StringUtil.h" | 17 #include "platform/v8_inspector/V8StringUtil.h" |
| 18 #include "platform/v8_inspector/V8ValueCopier.h" |
| 18 #include "platform/v8_inspector/public/V8InspectorClient.h" | 19 #include "platform/v8_inspector/public/V8InspectorClient.h" |
| 19 | 20 |
| 20 namespace v8_inspector { | 21 namespace v8_inspector { |
| 21 | 22 |
| 22 namespace { | 23 namespace { |
| 23 | 24 |
| 24 v8::Local<v8::Private> inspectedContextPrivateKey(v8::Isolate* isolate) | 25 v8::Local<v8::Private> inspectedContextPrivateKey(v8::Isolate* isolate) |
| 25 { | 26 { |
| 26 return v8::Private::ForApi(isolate, toV8StringInternalized(isolate, "V8Conso
le#InspectedContext")); | 27 return v8::Private::ForApi(isolate, toV8StringInternalized(isolate, "V8Conso
le#InspectedContext")); |
| 27 } | 28 } |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 { | 270 { |
| 270 v8::Local<v8::String> funcName = toV8StringInternalized(context->GetIsolate(
), name); | 271 v8::Local<v8::String> funcName = toV8StringInternalized(context->GetIsolate(
), name); |
| 271 v8::Local<v8::Function> func; | 272 v8::Local<v8::Function> func; |
| 272 if (!V8_FUNCTION_NEW_REMOVE_PROTOTYPE(context, callback, console, 0).ToLocal
(&func)) | 273 if (!V8_FUNCTION_NEW_REMOVE_PROTOTYPE(context, callback, console, 0).ToLocal
(&func)) |
| 273 return; | 274 return; |
| 274 func->SetName(funcName); | 275 func->SetName(funcName); |
| 275 if (description) { | 276 if (description) { |
| 276 v8::Local<v8::String> returnValue = toV8String(context->GetIsolate(), de
scription); | 277 v8::Local<v8::String> returnValue = toV8String(context->GetIsolate(), de
scription); |
| 277 v8::Local<v8::Function> toStringFunction; | 278 v8::Local<v8::Function> toStringFunction; |
| 278 if (V8_FUNCTION_NEW_REMOVE_PROTOTYPE(context, returnDataCallback, return
Value, 0).ToLocal(&toStringFunction)) | 279 if (V8_FUNCTION_NEW_REMOVE_PROTOTYPE(context, returnDataCallback, return
Value, 0).ToLocal(&toStringFunction)) |
| 279 func->Set(toV8StringInternalized(context->GetIsolate(), "toString"),
toStringFunction); | 280 createDataProperty(context, func, toV8StringInternalized(context->Ge
tIsolate(), "toString"), toStringFunction); |
| 280 } | 281 } |
| 281 if (!console->Set(context, funcName, func).FromMaybe(false)) | 282 createDataProperty(context, console, funcName, func); |
| 282 return; | |
| 283 } | 283 } |
| 284 | 284 |
| 285 } // namespace | 285 } // namespace |
| 286 | 286 |
| 287 void V8Console::debugCallback(const v8::FunctionCallbackInfo<v8::Value>& info) | 287 void V8Console::debugCallback(const v8::FunctionCallbackInfo<v8::Value>& info) |
| 288 { | 288 { |
| 289 ConsoleHelper(info).reportCall(ConsoleAPIType::kDebug); | 289 ConsoleHelper(info).reportCall(ConsoleAPIType::kDebug); |
| 290 } | 290 } |
| 291 | 291 |
| 292 void V8Console::errorCallback(const v8::FunctionCallbackInfo<v8::Value>& info) | 292 void V8Console::errorCallback(const v8::FunctionCallbackInfo<v8::Value>& info) |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 515 if (!obj->GetOwnPropertyNames(context).ToLocal(&names)) | 515 if (!obj->GetOwnPropertyNames(context).ToLocal(&names)) |
| 516 return; | 516 return; |
| 517 v8::Local<v8::Array> values = v8::Array::New(isolate, names->Length()); | 517 v8::Local<v8::Array> values = v8::Array::New(isolate, names->Length()); |
| 518 for (size_t i = 0; i < names->Length(); ++i) { | 518 for (size_t i = 0; i < names->Length(); ++i) { |
| 519 v8::Local<v8::Value> key; | 519 v8::Local<v8::Value> key; |
| 520 if (!names->Get(context, i).ToLocal(&key)) | 520 if (!names->Get(context, i).ToLocal(&key)) |
| 521 continue; | 521 continue; |
| 522 v8::Local<v8::Value> value; | 522 v8::Local<v8::Value> value; |
| 523 if (!obj->Get(context, key).ToLocal(&value)) | 523 if (!obj->Get(context, key).ToLocal(&value)) |
| 524 continue; | 524 continue; |
| 525 if (!values->Set(context, i, value).FromMaybe(false)) | 525 createDataProperty(context, values, i, value); |
| 526 continue; | |
| 527 } | 526 } |
| 528 info.GetReturnValue().Set(values); | 527 info.GetReturnValue().Set(values); |
| 529 } | 528 } |
| 530 | 529 |
| 531 static void setFunctionBreakpoint(ConsoleHelper& helper, v8::Local<v8::Function>
function, V8DebuggerAgentImpl::BreakpointSource source, const String16& conditi
on, bool enable) | 530 static void setFunctionBreakpoint(ConsoleHelper& helper, v8::Local<v8::Function>
function, V8DebuggerAgentImpl::BreakpointSource source, const String16& conditi
on, bool enable) |
| 532 { | 531 { |
| 533 V8DebuggerAgentImpl* debuggerAgent = helper.debuggerAgent(); | 532 V8DebuggerAgentImpl* debuggerAgent = helper.debuggerAgent(); |
| 534 if (!debuggerAgent) | 533 if (!debuggerAgent) |
| 535 return; | 534 return; |
| 536 String16 scriptId = String16::fromInteger(function->ScriptId()); | 535 String16 scriptId = String16::fromInteger(function->ScriptId()); |
| (...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 822 continue; | 821 continue; |
| 823 if (name->IsString()) { | 822 if (name->IsString()) { |
| 824 v8::Local<v8::Value> descriptor; | 823 v8::Local<v8::Value> descriptor; |
| 825 bool success = m_global->GetOwnPropertyDescriptor(m_context, v8::Loc
al<v8::String>::Cast(name)).ToLocal(&descriptor); | 824 bool success = m_global->GetOwnPropertyDescriptor(m_context, v8::Loc
al<v8::String>::Cast(name)).ToLocal(&descriptor); |
| 826 DCHECK(success); | 825 DCHECK(success); |
| 827 } | 826 } |
| 828 } | 827 } |
| 829 } | 828 } |
| 830 | 829 |
| 831 } // namespace v8_inspector | 830 } // namespace v8_inspector |
| OLD | NEW |